Các phương pháp kiểm thử trong Manual Testing

Tram Ho

Các phương pháp kiểm thử phần mềm giúp đảm bảo hoạt động trơn tru và hiệu quả của ứng dụng được phát triển trước khi đến tay khách hàng. Việc áp dụng các phương pháp kiểm thử sẽ giúp cover được các case cần thiết để tạo test case.
Dưới đây là một số các phương pháp kiểm thử mà mỗi tester đều cần biết. Các phương pháp được đề cập trong bài bao gồm:

  1. Phân vùng tương đương
  2. Phân tích giá trị biên
  3. Chuyển trạng thái
  4. Bảng quyết định

1 . Phân vùng tương đương

  1. Định nghĩa
    Kỹ thuật phân vùng tương đương là chia đầu vào thành nhiều vùng giá trị khác nhau mà khi lấy ra một hoặc một vài giá trị trong cùng một vùng thì có kết quả tương đương nhau. Mỗi giá trị chỉ được thuộc vào một và chỉ một vùng tương đương.

image-1620580341542.png

2. Phân tích giá trị biên

  1. Định nghĩa
    Kỹ thuật phân tích giá trị biên là trường hợp đặc biệt của phân vùng tương đương, nó bổ sung thêm cho phân vùng tương đương các trường hợp tại các giá trị biên mà phân vùng tương đương có thể bị xót.

Chỉ sử dụng kỹ thuật phân tích giá trị biên khi vùng xet bao gồm các số hoặc dữ liệu tuần tự. Giá trị nhỏ nhất (min) và giá trị lớn nhất (max) trong các vùng chính là giá trị biên.

image.png

  1. Ví dụ:
    Cho 1 ô text box nhập vào giá trị nguyên từ 1 đến 100

Giải thích:
Áp dụng phân tích giá trị biên vào cho bài toán sẽ có 2 cách lấy giá trí biên là 2 biên và 3 biên.

  • Trường hợp 2 biên (nghĩa là tại mỗi giá trị biên sẽ lấy 2 giá trị) và sẽ có các biên:

Tại min: min -1, min
Tại max: max, max + 1
Vậy áp dụng cho bài toán ta có các giá trị biên như sau: 0;1;100;101

  • Trường hợp 3 biên (nghĩa là tại mỗi giá trị ta sẽ lấy 3 giá trị) ta sẽ có các biên:

Tại min: min -1, min , min + 1
Tại max: max – 1, max, max + 1
Vậy áp dụng cho bài toán ta có các giá trị biên như sau: 0;1;2;99;100;101

Chú ý: Thường thì sẽ sử dụng kết hợp 2 kỹ thuật phân vùng tương đương và phân tích giá trị biên cùng với nhau để cho bài toán không bị thiếu case hoặc dư thừa case. Với bài toán trên áp dụng cả phân vùng tương đương và giá trị biên thì cần test các case:

Case hợp lệ: 1;50;100
Case không hợp lệ: 0;101

3. Chuyển trạng thái

  1. Định nghĩa
    Kỹ thuật chuyển trạng thái được áp dụng trong các trường hợp khi mà kết quả đầu ra được kích hoạt bởi sự thay đổi của các điều kiện đầu vào hoặc thay đổi trạng thái của hệ thống. Kỹ thuật kiểm thử chuyển trạng thái rất hữu ích khi bạn cần kiểm thử các cách chuyển đổi khác nhau của hệ thống
  2. Ví dụ
    Bài toán: Màn search product trên một store của ShopBase

Khi người dùng nhập keyword vào textbox, store sẽ load và hiển thị list các product được tìm thấy cùng với keyword. Nếu không có product nào được tìm thấy theo keyword sẽ trả về message lỗi. Người dùng có thể tìm kiếm nhiều lần với nhiều products khác nhau.

Phân tích:

State: S1 (Blank), S2 (Loading), S3 (Have products), S4 (Not exist)
Transition: S1->S2, S2-> S3, S2->S4, S4-> S1, S3-> S1
Event : search, loading
Action: Hiển thị list product, hiển thị message không có product nào

image.png

Từ sơ đồ chuyển trạng thái ta có thể dễ dàng viết test case

Kỹ thuật này còn được áp dụng khi chuyển trạng thái từ màn này sang màn khác, hoặc từ trang này sang trang khác

4. Bảng quyết định

  1. Định nghĩa
    Bảng quyết định là một kỹ thuật test được sử dụng để kiểm tra các hành vi hệ thống (system behavior) với các cách kết hợp input đầu vào khác nhau. Đây là một cách tiếp cận có hệ thống, kết quả của các kết hợp đó và hành vi hệ thống tương ứng của chúng (output) sẽ được ghi lại dưới dạng bảng
  2. Ví dụ

Ta có màn hình sign in

Nếu người dùng nhập username và password chính xác, người dùng sẽ được chuyển hướng đến home page
Nếu người dùng nhập đầu vào sai, thông báo lỗi sẽ được hiển thị.
image-1620582407974.png

image.png

Ta sẽ xác định được bảng quyết định như sau
image.png

T – Correct username/password
F – Wrong username/password
E – Error message is displayed
S – Select store screen is displayed

Từ bảng quyết định trên, chúng ta sẽ xác định được các test case cần test

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo