Tìm hiểu về kỹ thuật chuyển đổi trạng thái

Kỹ thuật chuyển đổi trạng thái (State Transition Testing) được định nghĩa là kỹ thuật kiểm thử phần mềm trong đó thay đổi điều kiện đầu vào gây ra thay đổi trạng thái trong ứng dụng được kiểm thử.
Đặc Điểm:

  • Là phương pháp quan sát theo dõi sự chuyển từ trạng thái này sang trạng thái khác.
  • Cung cấp cho chúng ta cách nhìn tổng quan hơn về các luồng xử lý của phần mềm
  • Bổ sung các Test Case để phát hiện ra lỗi mà có thể không phát hiện được bằng điều kiện input, output bởi các phương pháp khác.

Ví dụ: Chức năng của hệ thống ATM
Yêu Cầu: 

  • Nếu người dùng nhập mật khẩu không hợp lệ ba lần thì tài khoản sẽ bị khóa.
  • Trong hệ thống này, nếu người dùng nhập mật khẩu hợp lệ, người dùng sẽ đăng nhập thành công.
  • Nếu người dùng nhập mật khẩu không hợp lệ trong lần thử đầu tiên hoặc lần thứ hai, người dùng sẽ được yêu cầu nhập lại mật khẩu
  • Nếu người dùng nhập mật khẩu không đúng lần thứ 3, tài khoản sẽ bị chặn.

Sơ đồ chuyển trạng thái State Transition Testing
chuyển đổi trạng trái
Trong sơ đồ, bất cứ khi nào người dùng nhập mã PIN chính xác sẽ được chuyển sang trạng thái được cấp quyền truy cập, nếu nhập sai mã PIN sẽ được chuyển sang lần thử tiếp theo và nếu nhập sai đến lần thứ 3 thì trạng thái bị chặn tài khoản sẽ đạt được.

Bảng kỹ thuật chuyển đổi trạng thái

Mã PIN chính xác Mã PIN không chính xác
S1: Bắt đầu S5 S2
S2: Lần thử đầu tiên S5 S3
S3: Lần thử thứ 2 S5 S4
S4: Lần thử thứ 3 S5 S6
S5: Quyền truy cập được cấp
S6: Tài khoản bị chặn

Trong bảng, khi người dùng nhập mã PIN chính xác, trạng thái được chuyển sang S5: được cấp quyền truy cập. Nếu người dùng nhập sai mã PIN sẽ được chuyển sang trạng thái tiếp theo. Nếu nhập sai mã PIN lần thứ 3 sẽ đạt đến trạng thái bị chặn tài khoản.
Ví dụ: Màn hình đăng nhập đặt chỗ chuyến bay
Bạn phải nhập đúng tên đại lý và mật khẩu để truy cập ứng dụng đặt chỗ chuyến bay.
chuyển đổi trạng thái
Yêu cầu:

  • Biểu đồ chuyển trạng thái cung cấp cho bạn quyền truy cập vào ứng dụng với mật khẩu và tên đăng nhập chính xác
  • Nếu nhập sai mật khẩu, ứng dụng cho phép ba lần thử và nếu người dùng nhập sai mật khẩu ở lần thử thứ 4, hệ thống sẽ tự động đóng ứng dụng.

Biểu đồ trạng thái giúp bạn xác định các chuyển tiếp hợp lệ sẽ được kiểm thử.
Trong trường hợp này, kiểm thử với mật khẩu chính xác và mật khẩu không chính xác là bắt buộc. Đối với các kịch bản kiểm thử, đăng nhập vào lần thử thứ 2, 3 và 4 bất kỳ ai cũng có thể được kiểm thử.
bảng kỹ thuật chuyển đổi trạng thái
Trong bảng chuyển đổi trạng thái, tất cả các trạng thái hợp lệ được liệt kê ở phía bên trái của bảng và các sự kiện gây ra chúng ở trên cùng.
Mỗi ô đại diện cho hệ thống trạng thái sẽ di chuyển đến khi sự kiện tương ứng xảy ra.
Ví dụ khi ở trạng thái S1, bạn nhập mật khẩu chính xác, bạn được đưa đến trạng thái S6 (Cấp quyền truy cập). Giả sử nếu bạn đã nhập sai mật khẩu ở lần thử đầu tiên hoặc Lần 2, bạn sẽ được đưa đến trạng thái S3.
Ưu Điểm của State Transition Testing

  • Kỹ thuật kiểm thử phần mềm này sẽ cung cấp sự diễn tả bằng hình ảnh hoặc dạng bảng cách xử lý của hệ thống, điều này sẽ khiến tester bao quát và hiểu cách xử lý của hệ thống một cách hiệu quả.
  • Bằng cách sử dụng kiểm thử này, tester có thể xác minh rằng tất cả các điều kiện được bao phủ và kết quả được ghi lại

Nhược Điểm của State Transition Testing

  • Nhược điểm chính của kỹ thuật kiểm thử này là chúng ta không thể sử dụng kỹ thuật này trong mọi lúc. Ví dụ, nếu hệ thống không theo thứ tự tuần tự, kỹ thuật này không thể được sử dụng.
  • Một nhược điểm khác là bạn phải xác định tất cả các trạng thái có thể có của một hệ thống. Mặc dù điều này hoàn toàn đúng đối với các hệ thống nhỏ, nhưng nó sẽ bị phá vỡ tuần tự ở các hệ thống lớn hơn vì có sự tiến triển theo cấp số nhân trong số lượng các trạng thái.

Kết luận

  • Kiểm thử chuyển trạng thái được định nghĩa là kỹ thuật kiểm thử trong đó thay đổi điều kiện đầu vào gây ra thay đổi trạng thái trong Ứng dụng được kiểm thử.
  • Trong kỹ thuật phần mềm, kỹ thuật kiểm thử chuyển đổi trạng thái rất hữu ích khi bạn cần kiểm thử các chuyển đổi hệ thống khác nhau.
  • Hai cách chính để biểu diễn hoặc thiết kế chuyển trạng thái, đó là sơ đồ chuyển trạng thái và bảng chuyển trạng thái.
  • Trong sơ đồ chuyển trạng thái, các trạng thái được hiển thị trong các đoạn text được đóng khung và quá trình chuyển đổi được thể hiện bằng các mũi tên.
  • Trong bảng chuyển trạng thái, tất cả các trạng thái được liệt kê ở phía bên trái và các sự kiện được mô tả ở trên cùng.
  • Ưu điểm chính của kỹ thuật kiểm thử này là nó sẽ cung cấp sự biểu diễn bằng hình ảnh hoặc dạng bảng cách xử lý của hệ thống, điều này sẽ khiến tester bao quát và hiểu cách xử lý của hệ thống một cách hiệu quả.

https://youtu.be/zNfoQGc_q4s

Xem thêm các bài viết về kỹ thuật thiết kế Test Case: