Vòng đời kiểm thử
Nhiều người trong các bạn đã hỏi tôi về kiểm thử và mối quan hệ của nó với vòng đời phát triển phần mềm. Về căn bản kiểm thử tuân theo vòng đời tương ứng với mọi pha của vòng đời phát triển.
Trong pha lập kế hoạch dự án, người quản lí dự án phải quyết định những cái gì được kiểm thử dựa trên bản Đặc tả yêu cầu phần mềm Software Requirements Specification (SRS). Đây là lúc người lãnh đạo kiểm thử và người quản lí dự án làm việc cùng nhau để tạo ra bản kế hoạch kiểm thử phần mềm Software Test Plan (STP) mô tả cho phạm vi, khuôn khổ kiểm thử, phương pháp kiểm thử, lịch biểu kiểm thử, chức năng được kiểm thử hay không kiểm thử, kiểu kiểm thử nào cần được thực hiện ở các pha khác nhau của vòng đời, môi trường cho kiểm thử, và phân công cho từng người kiểm thử.
Trong pha yêu cầu, thành viên tổ kiểm thử phải kiểm thử bản đặc tả yêu cầu kiểm thử (SRS) và bản kế hoạch kiểm thử phần mềm (STP) để chắc chắn rằng họ hiểu các yêu cầu và điều gì cần được kiểm thử. Họ sẽ thêm nhiều chi tiết vào bản kế hoạch kiểm thử phần mềm để chắc chắn rằng họ đã bao quát mọi chức năng phải được kiểm thử. Sau khi được hoàn thành, bản kế hoạch kiểm thử được sửa đổi sẽ được gửi cho tổ phát triển kiểm điểm để đảm bảo tính đúng đắn, tính đầy đủ của bản kế hoạch này. Cả hai tổ sẽ thảo luận thông tin liên quan tới lịch biểu dự án và phối hợp các hoạt động phát triển với hoạt động kiểm thử. Điều này là quan trọng vì cả người phát triển và người kiểm thử phải làm việc cùng nhau trên các trường hợp kiểm thử, dữ liệu kiểm thử, kịch đoạn kiểm thử cũng như kiểm thử phụ để đảm bảo rằng sản phẩm cuối cùng sẽ đáp ứng yêu cầu của khách hàng. Bản kế hoạch kiểm thử phần mềm được sửa đổi cũng sẽ được gửi tới khách hàng để kiểm điểm và chấp thuận. Một khi được chấp thuận, nó có nghĩa là nếu mọi kiểm thử đều qua được, sản phẩm phần mềm đáp ứng yêu cầu của khách hàng.
Trong pha thiết kế phần mềm, khi người phát triển đưa nhiều chi tiết vào trong thiết kế, người kiểm thử phải làm việc cùng người phát triển để bổ sung thêm chi tiết cho bản kế hoạch kiểm thử và trường hợp kiểm thử. Họ phải xác định kiểm thử nào có thể được tự động hoá và kiểm thử nào phải được thực hiện thủ công. Đây cũng là lúc để nhận diện mọi vấn đề rủi ro và lập kế hoạch giảm nhẹ chúng. Tổ kiểm thử phải xác định dữ liệu kiểm thử cho từng trường hợp kiểm thử, dựng kịch đoạn kiểm thử cho mọi kiểm thử tự động và sửa lại lịch biểu kiểm thử, nếu cần.
Trong pha viết mã, khi người phát triển làm việc trên mã của họ và chuẩn bị kiểm thử của họ (kiểm thử đơn vị và kiểm thử chức năng), người kiểm thử cũng phải hoàn thành mọi trường hợp kiểm thử của họ, các kịch đoạn kiểm thử, bộ dẫn lái kiểm thử và các kiểm thử phụ khác được yêu cầu trong bản đặc tả yêu cầu phần mềm (SRS) chẳng hạn, kiểm thử an ninh, kiểm thử găng, kiểm thử khói và kiểm thử hiệu năng v.v..
Trong pha kiểm thử, sau khi người phát triển hoàn thành kiểm thử đơn vị và kiểm thử chức năng của họ, tổ kiểm thử phải thực hiện mọi kiểm thử còn lại kể cả trường hợp kiểm thử găng và kiểm thử hiệu năng, mọi kết quả đều phải được làm tài liệu như số lỗi, số các kiểm thử qua được hay không qua được, tình trạng của lỗi, nếu cần người kiểm thử cũng phải sửa đổi lại các trường hợp kiểm thử hay thêm các trường hợp kiểm thử mới (Nếu có thay đổi yêu cầu hay thay đổi mã) và kiểm thử lại các trường hợp kiểm thử và thực hiện kiểm thử rà lại. Tổ kiểm thử cũng phải chuẩn bị cho kiểm thử chấp phận được tiến hành trong môi trường của khách hàng cũng như bất kì cái gì phải được trắc nghiệm.
Sau khi dự án được hoàn thành, tổ kiểm thử phải đánh giá mọi hoạt động kiểm thử, qui trình và kế hoạch kiểm thử cho cải tiến tương lai. Trong pha này, tổ kiểm thử sẽ phân tích qui trình kiểm thử của mình và làm tài liệu những điều tốt và những điều xấu. Họ phải chắc chắn rằng nếu họ phạm bất kì sai lầm nào, nó sẽ không lặp lại trong dự án tương lai. Không dự án nào là hoàn hảo, không kiểm thử nào là hoàn hảo cho nên bao giờ cũng có cơ hội cho cải tiến và họ càng có thể cải tiến nhiều, họ sẽ càng làm tốt hơn lần sau. Kiểm thử là chức năng quan trọng của bất kì tổ chức phần mềm tốt nào và có tổ kiểm thử tốt hơn, người ta có thể mong đợi sản phẩm chất lượng tốt hơn.
Tác phẩm, tác giả, nguồn
- Tác phẩm: Quản lý dự án
- Nguồn: Blog của giáo sư John Vu, Carnegie Mellon University.
- Wiki hóa: https://kipkis.com