Kiểm thử trường hợp sử dụng với ví dụ

⚡ Tóm tắt thông minh

Kiểm thử trường hợp sử dụng (Use Case Testing) xác thực các giao dịch đầu cuối bằng cách kiểm tra sự tương tác giữa người dùng và hệ thống. Kỹ thuật này thúc đẩy các trường hợp kiểm thử ở cấp hệ thống và cấp chấp nhận, phát hiện các lỗ hổng tích hợp và bổ sung cho các kiểm tra ở cấp đơn vị bằng các quy trình làm việc thực tế của người dùng.

  • 🎭 Mô hình tương tác được thể hiện rõ ràng: Hãy gắn nhãn cho mỗi luồng bằng tác nhân (A) và hệ thống (S) để người kiểm thử có thể tractrong mọi bước giao dịch.
  • 🛤️ Hãy tập trung vào những điều tích cực trước đã: Xác thực kịch bản thành công chính, sau đó thêm các phần mở rộng và các trường hợp ngoại lệ phản ánh các lỗi thực tế của người dùng.
  • 🧩 Anchor với các điều kiện: Hãy kết hợp mỗi bước với các điều kiện tiên quyết và điều kiện hậu quả rõ ràng để kết quả kiểm tra được xác định rõ ràng.
  • 🔗 Tracđể được chấp nhận: Hãy liên kết các trường hợp sử dụng với các tiêu chí chấp nhận để các bên liên quan trong doanh nghiệp có thể phê duyệt phạm vi bao phủ khi phát hành sản phẩm.
  • 🤖 Sử dụng trợ lý AI: Chuyển đổi các câu chuyện người dùng bằng ngôn ngữ thông thường thành các bản nháp trường hợp sử dụng, giúp đẩy nhanh quá trình thiết kế kiểm thử và giảm thiểu các lỗi trong quy trình.

Kiểm thử ca sử dụng: Ví dụ

Kiểm thử ca sử dụng là gì?

Kiểm tra trường hợp sử dụng Kiểm thử trường hợp sử dụng là một kỹ thuật kiểm thử phần mềm xác định các trường hợp kiểm thử bao phủ toàn bộ hệ thống trên cơ sở từng giao dịch một, từ đầu đến cuối. Các trường hợp kiểm thử mô tả sự tương tác giữa người dùng và ứng dụng phần mềm. Kiểm thử trường hợp sử dụng giúp phát hiện ra những lỗ hổng mà việc kiểm thử từng thành phần phần mềm riêng lẻ có thể không tìm thấy.

A ca sử dụng Trong kiểm thử, trường hợp sử dụng (use case) là một mô tả ngắn gọn về cách sử dụng cụ thể của phần mềm bởi một tác nhân hoặc người dùng. Các trường hợp sử dụng được viết dựa trên hành động của người dùng và phản hồi tương ứng của ứng dụng, và chúng được sử dụng rộng rãi để xây dựng kết quả. trường hợp thử nghiệm ở cấp độ hệ thống và cấp độ chấp nhận.

Các thành phần chính của một trường hợp sử dụng

Mỗi trường hợp sử dụng đều được xây dựng từ cùng một tập hợp các khối cấu tạo. Việc nắm rõ các thành phần ngay từ đầu giúp dễ dàng thiết kế phạm vi kiểm thử sao cho phù hợp với từng trường hợp kiểm thử:

  • Diễn viên: Người dùng hoặc hệ thống bên ngoài khởi xướng tương tác. Được biểu thị là “A” trong các luồng văn bản.
  • Hệ thống: Phần mềm đang được kiểm thử phản hồi lại tác nhân. Được biểu thị bằng ký hiệu “S”.
  • Điều kiện tiên quyết: Trạng thái mà hệ thống phải đạt được trước khi trường hợp sử dụng có thể bắt đầu.
  • Kịch bản thành công chính: Trình tự các bước của tác nhân và hệ thống trong điều kiện lý tưởng.
  • Các phương án mở rộng / luồng công việc thay thế: Các nhánh xử lý ngoại lệ, lỗi xác thực hoặc các lựa chọn thay thế.
  • Điều kiện sau: Trạng thái mà hệ thống còn lại sau khi trường hợp sử dụng kết thúc.

Cách thực hiện Kiểm thử trường hợp sử dụng: Ví dụ

Trong một trường hợp sử dụng, tác nhân được biểu thị bằng “A” và hệ thống bằng “S”. Ví dụ dưới đây mô tả chức năng đăng nhập của một ứng dụng web.

Kiểm thử ca sử dụng: Ví dụ

Kịch bản thành công chính Bước Mô tả Chi tiết
A: Tác nhân S: Hệ thống 1 A: Nhập tên đại lý và mật khẩu
2 S: Xác thực mật khẩu
3 S: Cho phép truy cập tài khoản
Phần mở rộng 2a Mật khẩu không hợp lệ   S: Hiển thị thông báo và yêu cầu thử lại (tối đa 4 lần)
2b Mật khẩu không hợp lệ 4 lần   S: Đóng ứng dụng

Sơ đồ trên mô tả một trường hợp thành công và hai trường hợp mở rộng. Hãy đọc từng bước một:

  • Diễn viên nhập email và mật khẩu như bước đầu tiên trong quy trình đăng nhập hoàn chỉnh.
  • Hệ thống xác thực mật khẩu.
  • Nếu mật khẩu chính xác, quyền truy cập sẽ được cấp.
  • Nếu mật khẩu không hợp lệ, hệ thống sẽ hiển thị thông báo và cho phép thử lại tối đa bốn lần.
  • Nếu mật khẩu vẫn không hợp lệ sau bốn lần nhập sai, hệ thống sẽ chặn các lần nhập sai tiếp theo (trong ví dụ này, bằng cách cấm địa chỉ IP).

Từ trường hợp sử dụng này, bạn sẽ kiểm tra kịch bản thành công cộng thêm một trường hợp cho mỗi tiện ích mở rộng. Điều đó sẽ tạo ra tối thiểu ba trường hợp kiểm thử: đăng nhập hợp lệ, mật khẩu không hợp lệ có thể khôi phục và bị khóa tài khoản sau nhiều lần đăng nhập thất bại.

Ưu điểm của kiểm thử trường hợp sử dụng

Kiểm thử trường hợp sử dụng phù hợp một cách tự nhiên giữa yêu cầu và các trường hợp kiểm thử. Những ưu điểm chính là:

  • Phạm vi phủ sóng toàn diện: Kiểm tra các giao dịch trên nhiều mô-đun, chứ không phải các chức năng riêng lẻ.
  • Xác thực tập trung vào người dùng: Mỗi tình huống phản ánh cách một người dùng thực tế sử dụng hệ thống.
  • Trong sáng tracKhả năng: Các trường hợp sử dụng tương ứng trực tiếp với các tiêu chí chấp nhận để các bên liên quan phê duyệt.
  • Phòng ngừa khuyết tật: Các lỗ hổng tích hợp xuất hiện trước khi chu kỳ hồi quy bắt đầu.
  • Các vật phẩm có thể tái sử dụng: Cùng một trường hợp sử dụng này được dùng để tạo ra các trường hợp kiểm thử, tài liệu đào tạo và tài liệu hướng dẫn người dùng.

Những hạn chế của việc kiểm thử trường hợp sử dụng

Kỹ thuật này mạnh mẽ nhưng không phải là toàn diện. Hãy lưu ý những hạn chế sau:

  • Không thể thay thế cho kiểm thử đơn vị: Các lỗi ở cấp độ linh kiện thấp vẫn cần được kiểm tra chuyên sâu.
  • Tùy thuộc vào các trường hợp sử dụng cụ thể: Luồng dữ liệu không rõ ràng dẫn đến các bài kiểm tra không rõ ràng.
  • Giới hạn đối với phạm vi phủ sóng không liên quan đến chức năng: Hiệu năng, bảo mật và khả năng truy cập cần những kỹ thuật riêng biệt.
  • Chi phí bảo trì chung: Các trường hợp sử dụng cần được cập nhật khi các quy tắc kinh doanh thay đổi.

Câu Hỏi Thường Gặp

Trường hợp sử dụng mô tả cách tác nhân và hệ thống tương tác để đạt được mục tiêu. Trường hợp kiểm thử xác minh xem hệ thống có thực sự hoạt động theo cách đó hay không. Một trường hợp sử dụng thường dẫn đến nhiều trường hợp kiểm thử khác nhau.

Kiểm thử trường hợp sử dụng được áp dụng tốt nhất ở cấp độ hệ thống và chấp nhận, sau khi đã thực hiện kiểm thử đơn vị và tích hợp, khi mục tiêu là xác thực toàn bộ quy trình làm việc của người dùng chứ không phải các chức năng riêng lẻ.

Tác nhân “A” đại diện cho người dùng hoặc hệ thống bên ngoài khởi xướng tương tác. Hệ thống “S” đại diện cho phần mềm phản hồi lại các hành động đó. Ký hiệu này giúp cho luồng xử lý thông tin trở nên gọn gàng và dễ đọc.

Các phần mở rộng là các luồng thay thế xử lý các trường hợp ngoại lệ hoặc các nhánh rẽ khỏi kịch bản thành công chính. Chúng mô tả cách hệ thống phản ứng khi một tác nhân nhập dữ liệu không hợp lệ, bỏ dở một bước hoặc theo một lộ trình quyết định khác.

Tối thiểu bạn cần một trường hợp kiểm thử cho kịch bản thành công chính cộng thêm một trường hợp cho mỗi phần mở rộng. Các biến thể về ranh giới, tương đương và phủ định có thể cần thêm nhiều trường hợp hơn, tùy thuộc vào mức độ rủi ro của ứng dụng.

Không. Kiểm thử trường hợp sử dụng xác thực các quy trình làm việc đã biết, trong khi kiểm thử khám phá giúp phát hiện các lỗi chưa biết thông qua tương tác không theo kịch bản. Hai kỹ thuật này bổ sung cho nhau và bao gồm các loại rủi ro khác nhau.

Trợ lý AI chuyển đổi các câu chuyện người dùng bằng tiếng Anh thông thường thành các trường hợp sử dụng có cấu trúc với tác nhân, kịch bản thành công và các phần mở rộng. Chúng cũng đánh dấu các luồng thay thế bị thiếu bằng cách so sánh bản nháp với các mẫu điển hình.

Đúng vậy. Các công cụ AI đọc một trường hợp sử dụng và tạo ra các trường hợp kiểm thử dự thảo cho luồng chính và từng phần mở rộng, cùng với dữ liệu mẫu. Người kiểm thử vẫn xem xét lại kết quả để xác nhận các quy tắc nghiệp vụ và mức độ ưu tiên rủi ro là chính xác.

Tóm tắt bài viết này với: