Trong bài viết này và các bài viết tiếp theo, hãy cùng mình tìm hiểu về quy trình kiểm thử trong các dự án phần mềm. Chúng bao gồm các hoạt động sau đây:

- Lên kế hoạch và Kiểm soát
- Phân tích và Thiết kế
- Triển khai và Thực hiện
- Đánh giá tiêu chí đầu ra và Báo cáo
- Các hoạt động kết thúc kiểm thử
Nào, hãy bắt đầu với bài viết đầu tiên bằng việc tìm hiểu hoạt động Lên kế hoạch và Kiểm soát kiểm thử nhé!
Lên Kế Hoạch Kiểm Thử
Trong quy trình kiểm tra phân tích, việc lập kế hoạch kiểm tra xảy ra ngay từ đầu. Lý tưởng nhất là nó tiến hành song song với việc lập kế hoạch dự án tổng thể. Nó đề cập đến việc thực hiện chiến lược thử nghiệm.
Ví dụ: trong chiến lược thử nghiệm phân tích dựa trên rủi ro, phân tích rủi ro chất lượng sẽ xác định mức độ ưu tiên và phân bổ nỗ lực cho thử nghiệm. Sau đó, kế hoạch kiểm thử sẽ mô tả công việc kiểm thử phải được thực hiện để thực hiện các kiểm thử theo mức độ ưu tiên đó và với số lượng nỗ lực đã lên kế hoạch.
Cần có một kế hoạch kiểm thử tổng thể cho các cấp độ khác nhau và đảm bảo rằng số lượng kiểm thử phù hợp diễn ra vào đúng thời điểm. Ví dụ: nếu chúng ta coi một khu vực rủi ro chất lượng cụ thể là rất nguy hiểm, thì kế hoạch kiểm thử tổng thể nên bao gồm phạm vi bao phủ của khu vực rủi ro đó sớm trong vòng đời và có thể ở nhiều cấp độ trong vòng đời. Trong quá trình lập kế hoạch kiểm tthử, chúng ta cũng cần thiết lập một khuôn khổ để lấy các testcase, test conditions, và test procedures từ test basis. Test basis có thể bao gồm các đặc tả kỹ thuật – requirements specifications, đặc tả thiết kế – design specifications, các mục rủi ro chất lượng, v.v.. Một kế hoạch kiểm thử tốt, được thực hiện đúng cách, giúp đảm bảo rằng chúng ta thực sự kiểm thử những gì đã đặt ra.
Kiểm Soát Kiểm Thử
Khi test plan đã được thiết lập, hoạt động kiểm soát kiểm thử – test control được bắt đầu. Kiểm soát kiểm thử là một hoạt động liên tục. Trong đó, chúng ta so sánh tiến độ thực tế với kế hoạch, báo cáo tình trạng thực hiện kế hoạch (bao gồm mọi sai lệch phát sinh). Bởi vì các dự án không cố định mà đang phát triển, kiểm soát kiểm thử là cần thiết để hướng dẫn kiểm thử hoàn thành xứ mệnh – mission, chiến lược – strategies, và mục tiêu của kiểm thử.
Ví dụ: chúng ta có thể phát hiện ra rằng phân tích rủi ro đã sai về khả năng xảy ra lỗi trong một khu vực, điều này sẽ khiến người quản lý kiểm thử cần phân bổ lại nỗ lực còn lại và sắp xếp lại các thử nghiệm. Hoặc, họ có thể phải đối phó với việc giảm thời gian thực hiện kiểm tra, dẫn đến việc sử dụng bảng đánh giá rủi ro để quyết định giảm tổng thời gian kiểm thử.
Hãy cùng mình xem xét ví dụ về Kiểm soát kiểm thử dựa vào trạng thái lỗi phát hiện trong quá trình Kiểm thử chấp nhận – Acceptance Testing như sau:
Trạng thái lỗi lần kiểm thử thứ hai | Số lượng |
---|---|
Đã xác minh | 47 |
Cần được xác minh | 1 |
Cần sự phê duyệt của RBCS | 5 |
Hoãn lại | 21 |
Xác minh thất bại | 3 |
Không phải lỗi | 8 |
Mới | 18 |
Tổng | 103 |
Đây là bảng báo cáo tình trạng lỗi ở cuối lần thử nghiệm thứ hai trong Kiểm thử chấp nhận. Nó có nghĩa là các bài kiểm tra đã được chạy một lần, lỗi được phát hiện. Sau đó chúng được đưa cho nhà phát triển sửa lỗi và chạy lại một lượt kiểm tra mới. Tuy nhiên, bài kiểm tra này cần chạy ít nhất thêm một lần nữa để đảm bảo hoàn thành mục tiêu tuân thủ các yêu cầu. Điều đó nói rằng, thử nghiệm chấp nhận đã thất bại. Một thử nghiệm chấp nhận điển hình sẽ không phát hiện ra lỗi. Thất bại của kiểm tra chấp nhận trong tình huống như thế này tương đương với việc chuyển chi phí thất bại sang khách hàng.
Để kết thúc phần này, hãy xem xét các chỉ số và phép đo để lập kế hoạch và kiểm soát thử nghiệm. Để đo lường mức độ hoàn thiện của phần này trong quy trình kiểm tra, chúng ta có thể đo lường như sau:
- Phạm vi rủi ro và thử nghiệm
- Tỷ lệ phát hiện lỗi và thông tin lỗi khác
- Số giờ được lên kế hoạch so với thực tế để phát triển phần mềm kiểm thử và thực hiện các trường hợp kiểm thử
Cấu trúc phân chia công việc, được thiết lập trong quá trình lập kế hoạch kiểm tra, sẽ hữu ích cho việc kiểm soát kiểm thử để xác định xem chúng ta có đang tiến hành theo ước tính và lịch trình hay không.
Mình xin dừng bài viết hôm nay tại đây. Hẹn gặp lại các bạn trong phần 2 của loạt bài viết Quy trình kiểm thử phần mềm.
Happy testing!