Một số kĩ thuật kiểm thử quan trọng thường dùng để tìm ra bug
Trong bài này mình sẽ giới thiệu một số kĩ thuật kiểm thử áp dụng trong việc test ra lỗi ^^
Đầu tiên phải nói đến tầm quan trọng của testing trong project
Tại sao nói testing rất quan trọng với dự án?
Như các bạn thấy coder thì luôn nhìn đứa con tinh thần của mình dưới góc nhìn hoàn hảo nhất, không có khiếm khuyết. Do đó họ không thể khách quan mà đánh giá được phần mềm chưa tốt chỗ nào, có khi coder còn không nghĩ đấy là lỗi, và thường bị báo lỗi sẽ biện bạch rằng đó chỉ là tính năng. Nhưng điều đó không thể làm phần mềm tốt hơn được.
Giả thử 1 dự án không có sự góp mặt của tester, thì khi ấy những lỗi tiềm ẩn không được tìm thấy sẽ được thực thi trên môi trường thật, gây ra 1 số hỏng hóc về 1 chức năng, 1 thành phần hoặc thậm chí cả hệ thống. Chắc chắn khách hàng của bạn sẽ unhappy rồi, đấy là chưa nói đến những khách hàng khó tính, họ có thể cancel dự án bất cứ lúc nào!
-> đấy tester là rất quan trọng nhé !!
Sau đây mình sẽ liệt kê 1 vài kĩ thuật test sử dụng để tìm lỗi trong quá trình test
Không phải tất cả nhưng là những kĩ thuật hay dùng và mình thấy bắt lỗi hiệu quả.
Các kĩ thuật đó bao gồm:
- Phân vùng tương đương(equivalence partitioning)
- Phân tích giá trị biên(boundary value analysis)
- Bảng quyết định(decision table)
- Đoán lỗi(error guessing)
Sau đây mình sẽ nêu ví dụ và ưu nhược điểm của từng loại.
Phân vùng tương đương(equivalence partitioning)
Định nghĩa:
Đầu vào của hệ thống được chia thành các nhóm, vùng có các đặc tính tương tự, như vậy, khi test với bộ dữ liệu này, ta chỉ cần lấy các giá trị điển hình của từng vùng tương đương để test.
Ví dụ:
Cho trường password của 1 form đăng kí chỉ cho phép nhập kí tự chữ trong phạm vi 6 đến 20 kí tự. Viết testcase cho trường trên.
Ở đây ta có thể chia thành các vùng tương đương như sau:
Vùng < 6 kí tự
Vùng >=6 kí tự và <= 20 kí tự
Vùng > 20 kí tự
Vùng điều kiện sai: bao gồm không nhập (không kí tự), nhập cả kí tự khác chữ, nhập dấu cách,...
Như vậy ta có 4 phân vùng tương đương. Với mỗi phân vùng tương đương số case sẽ tùy vào việc chọn giá trị đại diện cho vùng đó.
Ưu điểm, nhược điểm:
Ưu điểm: Chỉ cần kiểm tra một vài giá trị đại diện của từng phân vùng tương đương, do vậy tổng số case sẽ giảm, và giảm thời gian test
Nhược điểm: Không thể sử dụng kĩ thuật này trên tất cả các project, và có khả năng lack lỗi ở biên khi giá trị đại diện được chọn là giá trị trung bình của vùng.
Đầu tiên phải nói đến tầm quan trọng của testing trong project
Tại sao nói testing rất quan trọng với dự án?
Như các bạn thấy coder thì luôn nhìn đứa con tinh thần của mình dưới góc nhìn hoàn hảo nhất, không có khiếm khuyết. Do đó họ không thể khách quan mà đánh giá được phần mềm chưa tốt chỗ nào, có khi coder còn không nghĩ đấy là lỗi, và thường bị báo lỗi sẽ biện bạch rằng đó chỉ là tính năng. Nhưng điều đó không thể làm phần mềm tốt hơn được.
Giả thử 1 dự án không có sự góp mặt của tester, thì khi ấy những lỗi tiềm ẩn không được tìm thấy sẽ được thực thi trên môi trường thật, gây ra 1 số hỏng hóc về 1 chức năng, 1 thành phần hoặc thậm chí cả hệ thống. Chắc chắn khách hàng của bạn sẽ unhappy rồi, đấy là chưa nói đến những khách hàng khó tính, họ có thể cancel dự án bất cứ lúc nào!
-> đấy tester là rất quan trọng nhé !!
Sau đây mình sẽ liệt kê 1 vài kĩ thuật test sử dụng để tìm lỗi trong quá trình test
Không phải tất cả nhưng là những kĩ thuật hay dùng và mình thấy bắt lỗi hiệu quả.
Các kĩ thuật đó bao gồm:
- Phân vùng tương đương(equivalence partitioning)
- Phân tích giá trị biên(boundary value analysis)
- Bảng quyết định(decision table)
- Đoán lỗi(error guessing)
Sau đây mình sẽ nêu ví dụ và ưu nhược điểm của từng loại.
Phân vùng tương đương(equivalence partitioning)
Định nghĩa:
Đầu vào của hệ thống được chia thành các nhóm, vùng có các đặc tính tương tự, như vậy, khi test với bộ dữ liệu này, ta chỉ cần lấy các giá trị điển hình của từng vùng tương đương để test.
Ví dụ:
Cho trường password của 1 form đăng kí chỉ cho phép nhập kí tự chữ trong phạm vi 6 đến 20 kí tự. Viết testcase cho trường trên.
Ở đây ta có thể chia thành các vùng tương đương như sau:
Vùng < 6 kí tự
Vùng >=6 kí tự và <= 20 kí tự
Vùng > 20 kí tự
Vùng điều kiện sai: bao gồm không nhập (không kí tự), nhập cả kí tự khác chữ, nhập dấu cách,...
Như vậy ta có 4 phân vùng tương đương. Với mỗi phân vùng tương đương số case sẽ tùy vào việc chọn giá trị đại diện cho vùng đó.
Ưu điểm, nhược điểm:
Ưu điểm: Chỉ cần kiểm tra một vài giá trị đại diện của từng phân vùng tương đương, do vậy tổng số case sẽ giảm, và giảm thời gian test
Nhược điểm: Không thể sử dụng kĩ thuật này trên tất cả các project, và có khả năng lack lỗi ở biên khi giá trị đại diện được chọn là giá trị trung bình của vùng.
Nhận xét
Đăng nhận xét