Quy trình kiểm thử phần mềm – Software testing life cycle( STLC)
1. Định nghĩa quy trình kiểm thử phần mềm
Các giai đoạn trong quy trình kiểm thử phần mềm được xác định như sau: không có bất kỳ tiêu chuẩn STLC cố định nào trên toàn cầu, tuy nhiên, về cơ bản quy trình kiểm thử bao gồm các giai đoạn sau:
1. Requirenment analysis – Phân tích yêu cầu.
2. Test planning – Lập kế hoạch thử nghiệm.
3. Phát triển trường hợp kiểm thử – Thiết kế kịch bản kiểm thử.
4. Thiết lập môi trường kiểm thử – Thiết lập môi trường kiểm thử.
5. Thực hiện thử nghiệm kiểm tra.
6. Kết thúc chu trình kiểm thử.
Mỗi bước trong quy trình kiểm thử phần mềm sẽ được thực hiện một cách tuần tự. Mục tiêu, đầu vào và kết quả đầu ra của mỗi bước sẽ khác nhau, nhưng mục đích cuối cùng vẫn là đảm bảo chất lượng sản phẩm phần mềm tốt nhất. Dưới đây, chúng ta sẽ tìm hiểu chi tiết về thông tin của từng bước trong quy trình kiểm thử, bao gồm hoạt động, người thực hiện, đầu vào và đầu ra.
2. Phân tích quy trình kiểm thử phần mềm
2.1. Requirenment analysis – Phân tích yêu cầu
Đầu vào
Các giấy tờ trong giai đoạn phân tích yêu cầu có thể bao gồm: giấy tờ mô tả yêu cầu, giấy tờ thiết kế hệ thống, giấy tờ đề xuất của khách hàng về các tiêu chí chấp nhận của sản phẩm, bản mô phỏng sơ bộ của khách hàng yêu cầu (nếu có),…
Hoạt động
Đầu ra
Hệ thống của chúng ta bao gồm kết quả của giai đoạn phân tích yêu cầu. Kết quả này bao gồm văn bản chứa các câu hỏi và câu trả lời liên quan đến hoạt động của hệ thống, văn bản báo cáo tính khả thi, phân tích nguy cơ của việc kiểm thử phần mềm.
2.2. Test planning – Lập kế hoạch kiểm thử
Đầu vào
Các tài liệu mô tả của giai đoạn lập kế hoạch kiểm thử đã được cập nhật thông qua các câu hỏi và trả lời được đưa ra trong giai đoạn phân tích yêu cầu, tài liệu báo cáo tính khả thi, phân tích nguy cơ của việc kiểm thử phần mềm.
Hoạt động
Thường thì, dựa vào các tài liệu được cung cấp và cập nhật mới nhất, người quản lý kiểm thử hoặc người đứng đầu kiểm thử sẽ là người lên kế hoạch kiểm thử cho toàn bộ nhóm kiểm thử chất lượng. Lên kế hoạch kiểm thử nhằm xác định một số yếu tố quan trọng sau:
Người kiểm thử và nhóm phát triển có kinh nghiệm trong lĩnh vực này không? Có bao nhiêu thành viên tham gia dự án và ai sẽ thực hiện kiểm thử phần nào? Tổng cộng có bao nhiêu người kiểm thử tham gia? Nhân viên:
Thiết bị: số lượng server, version, máy tính, mobile để thực hiện test là bao nhiêu.
Danh sách các chức năng cần được thử nghiệm.
Để thực hiện test chức năng này thì cần làm những công việc gì, trong thời gian bao lâu, cái nào thực hiện trước, cái nào thực hiện sau, ai là người thực hiện.
Xác định điều kiện bắt đầu: xác định những điều kiện tối thiểu để bắt đầu hoạt động kiểm thử cho từng chức năng.
Xác định điều kiện kết thúc : khi có những điều kiện nào thì sẽ kết thúc việc kiểm thử.
Đầu ra
Kết quả của giai đoạn lập kế hoạch bao gồm các tài liệu như lịch trình kiểm thử, dự toán kiểm thử, kế hoạch thử nghiệm.
2.3. Test case development – Thiết kế kịch bản kiểm thử
Đầu vào
Các tài liệu mô tả đã được cập nhật, đầu vào của giai đoạn thiết kế kịch bản kiểm thử là kế hoạch kiểm thử, ước tính kiểm thử, lịch trình kiểm thử.
Hoạt động
Đầu ra
Các tài liệu trong đó có: thiết kế kiểm thử, các trường hợp kiểm thử, danh sách kiểm tra, dữ liệu kiểm thử, kịch bản tự động kiểm thử sẽ được nhóm kiểm thử có sau khi hoàn thành thiết kế kịch bản kiểm thử.
2.4. Test environment set up – Thiết lập môi trường kiểm thử
Đầu vào
Đầu vào của giai đoạn thiết lập môi trường kiểm thử bao gồm kế hoạch thử nghiệm, các trường hợp thử nghiệm kiểm tra chức năng ban đầu và dữ liệu thử nghiệm.
Hoạt động
Đầu ra
Kết quả của testcase kiểm thử và môi trường đã được cấu hình đúng theo yêu cầu, sẵn sàng cho giai đoạn kiểm thử.
2.5. Test execution – Thực hiện kiểm thử
Đầu vào
Tài liệu đầu vào của giai đoạn này là test plan, test design, test case, check list, test data, test automation script.
Hoạt động
Đầu ra
Kết quả của giai đoạn này là kết quả kiểm thử và danh sách các lỗi tìm được.
2.6. Test cycle closure – Đóng chu trình kiểm thử
Đầu vào
Bao gồm tất cả những tài liệu liên quan đã được tổng hợp, ghi chú và hoàn thiện đầy đủ trong suốt quá trình kiểm thử của dự án là đầu vào của giai đoạn đóng chu trình kiểm thử: tài liệu phân tích mô tả yêu cầu, kế hoạch kiểm thử, kết quả kiểm thử, báo cáo lỗi, tài liệu Kiểm tra và Đáp ứng,…
Hoạt động
Đầu ra
Kết quả của giai đoạn này bao gồm các tài liệu: Báo cáo kiểm tra, Kết quả kiểm tra (cuối cùng).
3. Tổng quát
Tóm lại, chúng ta cần nhớ những thông tin chính sau đây: Theo đó, chúng ta đã hoàn thành việc nghiên cứu từng bước của quy trình kiểm thử phần mềm.
Giai đoạn | Đầu vào | Hoạt động | Đầu ra | Người thực hiện |
---|---|---|---|---|
Requirenment analysis | * Tài liệu đặc tả yêu cầu * Tài liệu khách hàng * Tài liệu thiết kế hệ thống |
Nghiên cứu, phân tích yêu cầu dự án | * Q&A document * Tài liệu báo cáo tính khả thi, phân tích rủi ro của việc kiểm thử phần mềm |
QA team |
Test planning | * Tài liệu đặc tả yêu cầu( đã được cập nhật) * Tài liệu báo cáo tính khả thi, phân tích rủi ro của việc kiểm thử phần mềm |
* Xác định phạm vi dự án * Xác định phương pháp tiếp cận * Xác định nguồn lực * Lên kế hoạch thiết kế công việc test |
* Test Plan * Test Estimation * Test Schedule |
Test manager/ Test leader |
Test case development | * Tài liệu đặc tả yêu cầu( đã được cập nhật) * Test plan * Test estimation * Test schedule |
* Review tài liệu * Viết test case/ check list * Chuẩn bị dữ liệu kiểm thử * Review test case/ check list |
* Test design * Test case/check list * Test data * Test automation script |
Tester |
Test environment set up | * Test plan * Smoke test case * Test data |
* Thiết lập môi trường kiểm thử ( server/ client/ network,…) * Kiểm tra môi trường kiểm thử bằng các smoke test case |
* Môi trường kiểm thử * Kết quả của smoke test case |
Tester |
Test execution | Test plan * Test design, test case, check list * Test data * Test automation script |
* Thực hiện kiểm thử phần mềm * So sánh với kết quả mong đợi và báo cáo các bug xảy ra lên tool quản lý lỗi * Thực hiện re-test để verify các bug đã được fix và regression test khi có sự thay đổi liên quan * Đo và phân tích tiến độ * Điều chỉnh, sửa chữa tài liệu tiến độ dự án theo tình hình thực tế * Report thường xuyên cho Project Manager và khách hàng về tình hình thực hiện dự án |
* Test results * Defect reports |
Tester |
Test cycle closure | * Tài liệu đặc tả yêu cầu * Test plan * Test results * Defect reports * Tài liệu Q&A |
* Tổng kết, báo cáo kết quả về việc thực thi test case * Đánh giá các tiêu chí hoàn thành như phạm vi kiểm tra, chất lượng, chi phí, thời gian, mục tiêu kinh doanh quan trọng * Thảo luận và rút ra bài học kinh nghiệm |
* Test report * Test results( final) |
QA team |
4. Tài liệu tham khảo
Chúc các bạn đạt thành tựu! Mong rằng những tin tức, tri thức mình tổng hợp sẽ hỗ trợ mọi người trong quá trình học tập và công việc.