Kiểm thử chuyển trạng thái với ví dụ
⚡ Tóm tắt thông minh
Kiểm thử chuyển trạng thái là một kỹ thuật hộp đen giúp xác thực cách ứng dụng chuyển đổi giữa các trạng thái khi điều kiện đầu vào thay đổi. Hướng dẫn này giải thích bốn phần của sơ đồ, sự khác biệt giữa sơ đồ trạng thái và bảng, cùng các ví dụ về máy ATM và đăng nhập dành cho người kiểm thử.
Kiểm tra chuyển tiếp trạng thái là gì?
Kiểm tra chuyển đổi trạng thái Kiểm thử hộp đen là một kỹ thuật kiểm thử trong đó sự thay đổi các điều kiện đầu vào gây ra sự thay đổi trạng thái hoặc đầu ra trong ứng dụng cần kiểm thử (AUT). Nó giúp phân tích hành vi của ứng dụng trong các điều kiện đầu vào khác nhau, và người kiểm thử có thể cung cấp các giá trị đầu vào tích cực và tiêu cực trong khi ghi lại hành vi của hệ thống.
Nó dựa trên mô hình mà hệ thống và các bài kiểm tra được xây dựng. Bất kỳ hệ thống nào mà bạn nhận được đầu ra khác nhau cho cùng một đầu vào — tùy thuộc vào những gì đã xảy ra trước đó — đều là hệ thống trạng thái hữu hạn. 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 tra các quá trình chuyển đổi hệ thống khác nhau.
Khi nào nên sử dụng kiểm thử chuyển trạng thái?
- Khi người kiểm thử đang kiểm tra ứng dụng với một tập hợp hữu hạn các giá trị đầu vào.
- Khi người kiểm thử đang kiểm tra một chuỗi các sự kiện xảy ra trong ứng dụng cần kiểm thử (AUT), điều này cho phép kiểm tra hành vi của ứng dụng đối với một chuỗi các giá trị đầu vào.
- Khi hệ thống cần kiểm thử phụ thuộc vào các sự kiện hoặc giá trị từ quá khứ.
Khi nào không nên dựa vào kiểm tra chuyển đổi trạng thái
- Khi việc kiểm tra không được thực hiện đối với các kết hợp đầu vào tuần tự.
- Khi việc kiểm thử nhắm đến các chức năng khác nhau, chẳng hạn như kiểm thử thăm dò.
Bốn phần của sơ đồ chuyển trạng thái
Mô hình chuyển đổi trạng thái bao gồm bốn thành phần chính, được mô tả dưới đây.
1) Tiểu bang mà phần mềm có thể tiếp cận.
2) Chuyển tiếp từ tiểu bang này sang tiểu bang khác.
3) Sự kiện Những thao tác đó kích hoạt một quá trình chuyển đổi, chẳng hạn như đóng tệp hoặc rút tiền.
4) Hành động Những sự kiện phát sinh từ một quá trình chuyển đổi, chẳng hạn như thông báo lỗi hoặc việc nhận được tiền mặt.
Sơ đồ chuyển trạng thái so với bảng chuyển trạng thái
Có hai cách chính để biểu diễn hoặc thiết kế sự chuyển đổi trạng thái: sơ đồ chuyển đổi trạng thái và bảng chuyển đổi trạng thái.
| Yếu tố | Sơ đồ chuyển đổi trạng thái | Bảng chuyển trạng thái |
|---|---|---|
| Còn được gọi là | Biểu đồ/Đồ thị của tiểu bang | Bảng trạng thái |
| Đại diện | BoxCác ký hiệu es biểu thị trạng thái, mũi tên biểu thị sự chuyển đổi. | Lưới các trạng thái (hàng) và sự kiện (cột) |
| Tốt nhất để xác định | Các chuyển đổi hợp lệ | Chuyển đổi không hợp lệ |
| Mỗi ô hiển thị | - | Trạng thái đạt được sau khi một sự kiện xảy ra |
Cách thực hiện chuyển đổi trạng thái (Ví dụ)
Ví dụ 1: Khóa mã PIN ATM
Hãy xem xét chức năng của hệ thống ATM, trong đó nếu người dùng nhập mật khẩu không hợp lệ ba lần, 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ệ trong bất kỳ ba lần thử đầu tiên nào, 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 thứ hai, họ sẽ được yêu cầu nhập lại. Cuối cùng, nếu người dùng nhập sai mật khẩu lần thứ ba, tài khoản sẽ bị khóa.
Sơ đồ chuyển trạng thái (Ví dụ 1)
Trong sơ đồ, mỗi khi người dùng nhập đúng mã PIN, họ sẽ chuyển sang trạng thái "Được cấp quyền truy cập". Nếu họ nhập sai mật khẩu, họ sẽ chuyển sang lần thử tiếp theo, và nếu họ vẫn nhập sai lần thứ ba, tài khoản sẽ bị khóa.
Bảng chuyển đổi trạng thái (Ví dụ 1)
| Tiểu bang | 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) Đã cấp quyền truy cập | – | – |
| S6) Tài khoản bị khóa | – | – |
Trong bảng, khi người dùng nhập đúng mã PIN, trạng thái chuyển sang S5 (Đã cấp quyền truy cập). Nếu người dùng nhập sai mật khẩu, họ sẽ chuyển sang trạng thái tiếp theo, và sau ba lần nhập sai, họ sẽ đạt đến trạng thái Tài khoản bị khóa.
Ví dụ 2: Đăng nhập đặt vé máy bay
Trên màn hình đăng nhập đặt vé máy bay, bạn phải nhập đúng tên đại lý và mật khẩu để truy cập. đơn đặt vé máy bay.
Đồ thị chuyển trạng thái
Ứng dụng cho phép ba lần thử; nếu người dùng nhập sai mật khẩu ở lần thử thứ tư, 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 đổi hợp lệ cần được kiểm tra. Việc kiểm tra với cả mật khẩu đúng và sai là bắt buộc, và đối với... các tình huống thử nghiệmViệc đăng nhập ở lần thử thứ 2, 3 hoặc 4 đều có thể được kiểm tra. Bạn có thể sử dụng Bảng trạng thái để xác định các chuyển đổi hệ thống không hợp lệ.
Trong bảng trạng thái, tất cả các trạng thái hợp lệ được liệt kê ở bên trái và các sự kiện gây ra chúng được liệt kê ở phía trên. Mỗi ô hiển thị trạng thái mà hệ thống chuyển sang khi sự kiện xảy ra. Ví dụ, ở trạng thái S1, nhập đúng mật khẩu sẽ đưa bạn đến trạng thái S6 (Đã cấp quyền truy cập); nhập sai mật khẩu ở lần thử đầu tiên sẽ đưa bạn đến trạng thái S3 (Thử lần 2). Tương tự, bạn có thể xác định tất cả các trạng thái khác.
Phương pháp này sẽ làm nổi bật hai trạng thái không hợp lệ. Giả sử bạn đang ở trạng thái S6 (đã đăng nhập) và bạn mở một phiên bản đặt vé máy bay khác và nhập mật khẩu cho cùng một nhân viên. Phản hồi của hệ thống trong trường hợp này cần được kiểm tra.
Ưu điểm và nhược điểm của kỹ thuật chuyển trạng thái
| Ưu điểm | Nhược điểm |
|---|---|
| Cung cấp hình ảnh hoặc bảng biểu mô tả hành vi của hệ thống, giúpping Người kiểm thử bao quát và hiểu hệ thống một cách hiệu quả. | Không thể tin cậy hoàn toàn trong mọi trường hợp — ví dụ, nó không phù hợp với các hệ thống không hữu hạn hoặc tuần tự. |
| Cho phép người kiểm thử xác minh rằng tất cả các điều kiện đã được đáp ứng và kết quả đã được ghi lại. | Phương pháp này đòi hỏi phải định nghĩa tất cả các trạng thái có thể. Nó hoạt động tốt với các hệ thống nhỏ nhưng lại không hiệu quả với các hệ thống lớn hơn do số lượng trạng thái tăng theo cấp số nhân. |






