Software Testing Life Cycle là gì? Quy trình kiểm thử phần mềm chi tiết
- Tháng Mười 25, 2025
- Posted by: Nguyen Viet Loc
- Category: Kiến Thức Kiểm Thử
Vòng đời kiểm thử phần mềm (Software Testing Life Cycle – STLC) là một quá trình quan trọng trong phát triển phần mềm, nhằm đảm bảo rằng sản phẩm cuối cùng đáp ứng được yêu cầu của người dùng và đạt được chất lượng cao nhất trước khi đưa vào sử dụng. Trong bài viết này, CodeStar sẽ giúp bạn hiểu rõ hơn về STLC, các giai đoạn trong quy trình kiểm thử phần mềm, cũng như phân biệt giữa SDLC và STLC.
Vòng đời kiểm thử phần mềm là gì?
Vòng đời kiểm thử phần mềm (Software Testing Life Cycle – STLC) là chuỗi các bước được thực hiện có hệ thống và theo kế hoạch, nhằm đảm bảo rằng sản phẩm phần mềm đạt được chất lượng tốt nhất trước khi ra mắt.
Trong suốt quá trình này, mỗi giai đoạn đều có mục tiêu, đầu vào và đầu ra riêng, nhưng tất cả đều hướng đến cùng một đích – xác minh phần mềm hoạt động đúng yêu cầu và mang lại trải nghiệm ổn định cho người dùng.
Các giai đoạn trong vòng đời kiểm thử phần mềm
Vòng đời kiểm thử phần mềm thường bao gồm 6 giai đoạn chính:
– Requirement Analysis – Phân tích yêu cầu
– Test Planning – Lập kế hoạch kiểm thử
– Test Case Development – Thiết kế kịch bản kiểm thử
– Test Environment Setup – Thiết lập môi trường kiểm thử
– Test Execution – Thực hiện kiểm thử
– Test Cycle Closure – Đóng chu trình kiểm thử

Requirement analysis – phân tích yêu cầu
Phân tích yêu cầu là bước khởi đầu và cũng là nền tảng quan trọng nhất trong vòng đời kiểm thử phần mềm (STLC). Ở giai đoạn này, đội ngũ QA sẽ xem xét kỹ lưỡng các tài liệu đặc tả yêu cầu (Requirement Specification) để hiểu rõ phần mềm cần làm gì và xác định phạm vi kiểm thử.
Các yêu cầu có thể bao gồm cả chức năng (Functional) và phi chức năng (Non-Functional) như hiệu năng, bảo mật hay khả năng tương thích. Trong quá trình phân tích, nếu có điểm chưa rõ, QA team sẽ trao đổi trực tiếp với các bên liên quan – như Business Analyst, Developer, Project Manager hoặc khách hàng – để đảm bảo mọi thông tin đều được hiểu đúng.
Tất cả các câu hỏi, phản hồi hoặc điểm cần làm rõ sẽ được tổng hợp trong một tài liệu Q&A, giúp thống nhất thông tin và tiết kiệm thời gian cho toàn bộ nhóm phát triển.
Giai đoạn này đóng vai trò then chốt, bởi một bản phân tích yêu cầu kỹ lưỡng sẽ giúp phát hiện sớm rủi ro, hạn chế lỗi phát sinh về sau, đồng thời tiết kiệm đáng kể thời gian và chi phí cho dự án.
Đầu vào của giai đoạn phân tích yêu cầu thường bao gồm các tài liệu quan trọng như đặc tả yêu cầu phần mềm (SRS), tài liệu thiết kế hệ thống, và các tiêu chí chấp nhận sản phẩm. Đây là cơ sở để đội ngũ QA hiểu rõ phạm vi và mục tiêu kiểm thử.
Đầu ra của bước này là bộ tài liệu Q&A (Question & Answer) chứa các thắc mắc và phản hồi giữa nhóm QA và các bên liên quan, cùng với báo cáo đánh giá tính khả thi của kiểm thử – nhằm xác định xem dự án có thể tiến hành kiểm thử hiệu quả hay không.
Test planning – lập kế hoạch kiểm thử
Sau khi đã hoàn tất giai đoạn phân tích yêu cầu, bước tiếp theo trong vòng đời kiểm thử phần mềm (STLC) là lập kế hoạch kiểm thử – giai đoạn định hướng toàn bộ hoạt động kiểm thử trong dự án.
Ở bước này, Test Manager hoặc Test Leader sẽ chịu trách nhiệm xây dựng Test Plan – tài liệu mô tả mục tiêu, phạm vi, phương pháp, nguồn lực và lịch trình kiểm thử. Đây cũng là lúc đội ngũ QA xác định chiến lược kiểm thử phù hợp, đánh giá rủi ro tiềm ẩn, và đề xuất giải pháp giảm thiểu rủi ro để đảm bảo tiến độ cũng như chất lượng dự án.
Nguồn thông tin đầu vào cho giai đoạn này bao gồm tài liệu yêu cầu được cập nhật và báo cáo đánh giá tính khả thi từ bước trước. Kết quả đầu ra là Test Plan chi tiết, ước lượng nguồn lực (Test Estimation) và lịch trình kiểm thử (Test Schedule) – những yếu tố giúp đảm bảo quá trình kiểm thử diễn ra hiệu quả, có tổ chức và đo lường được.
Test case development – thiết kế kịch bản kiểm thử
Sau khi hoàn tất bước lập kế hoạch, đội ngũ QA sẽ chuyển sang giai đoạn thiết kế kịch bản kiểm thử (Test Case Development) – nơi mọi ý tưởng trong bản kế hoạch được cụ thể hóa thành các test case chi tiết.
Ở bước này, tester sẽ dựa vào tài liệu đặc tả yêu cầu và kỹ thuật thiết kế test case (test design techniques) để xây dựng danh sách các tình huống kiểm thử bao phủ toàn bộ chức năng phần mềm. Mỗi test case thường mô tả rõ điều kiện đầu vào, các bước thực hiện và kết quả mong đợi, giúp đảm bảo phần mềm được kiểm tra toàn diện và logic.
Bên cạnh việc viết test case, đội QA cũng cần chuẩn bị dữ liệu kiểm thử (test data) phù hợp để mô phỏng các tình huống thực tế. Khi hoàn tất, các test case sẽ được xem xét và phê duyệt nội bộ – thường bởi test leader hoặc một thành viên khác trong nhóm – để đảm bảo tính chính xác và đầy đủ trước khi sử dụng.
Đầu vào của giai đoạn này bao gồm tài liệu đặc tả dự án, báo cáo đánh giá tính khả thi, và trong một số trường hợp là tài liệu hướng dẫn kiểm thử tự động.
Đầu ra sẽ là bản thiết kế kiểm thử (test design), danh sách test case chi tiết, và các kịch bản kiểm thử tự động (automation scripts) – nếu dự án có sử dụng công cụ automation.
Test environment set up – thiết lập môi trường kiểm thử
Thiết lập môi trường kiểm thử đóng vai trò quan trọng trong toàn bộ vòng đời phát triển phần mềm. Môi trường này được cấu hình dựa trên các điều kiện kiểm thử cụ thể như server, client, hay mạng lưới (network). Hoạt động này có thể được tiến hành độc lập và song song với giai đoạn thiết kế kịch bản kiểm thử, giúp tiết kiệm thời gian và đảm bảo tiến độ.
Trước khi bắt đầu kiểm thử chính thức, kiểm thử viên cần thực hiện một số test case ban đầu để xác định môi trường đã được thiết lập đúng và sẵn sàng hay chưa.
Đầu vào của giai đoạn này bao gồm kế hoạch kiểm thử (test plan), bộ kiểm thử sơ bộ (smoke test case) và dữ liệu kiểm thử (test data).
Đầu ra là môi trường kiểm thử hoàn chỉnh, đã sẵn sàng cho quá trình chạy thử, cùng với kết quả của các bài kiểm thử sơ bộ.
Test execution – Thực hiện kiểm thử
Sau khi test case được hoàn thiện và môi trường kiểm thử đã được thiết lập ổn định, giai đoạn thực hiện kiểm thử chính thức bắt đầu. Ở bước này, kiểm thử viên tiến hành chạy các test case, so sánh kết quả thực tế với kết quả mong đợi để phát hiện lỗi hoặc bất thường trong phần mềm.
Khi phát hiện lỗi, kiểm thử viên ghi nhận và báo cáo chi tiết cho lập trình viên xử lý. Sau khi lỗi được khắc phục, họ sẽ thực hiện kiểm thử lại (re-test) để xác nhận rằng vấn đề đã được giải quyết hoàn toàn, đồng thời theo dõi trạng thái của từng lỗi cho đến khi được đóng lại.
Đầu vào của giai đoạn này bao gồm kế hoạch kiểm thử (test plan), các trường hợp kiểm thử (test case) và dữ liệu kiểm thử (test data).
Đầu ra là danh sách lỗi (bug list) cùng báo cáo kết quả thực thi kiểm thử, phản ánh mức độ ổn định của phần mềm ở thời điểm đó.
Test cycle closure – Đóng chu trình kiểm thử
Đây là giai đoạn cuối cùng trong vòng đời kiểm thử phần mềm – thời điểm tổng kết, đánh giá và khép lại toàn bộ quá trình kiểm thử. Ở bước này, đội ngũ kiểm thử sẽ tổ chức cuộc họp tổng kết để đánh giá mức độ hoàn thành so với các tiêu chí đã đặt ra: phạm vi kiểm thử, chất lượng sản phẩm, chi phí, thời gian và mục tiêu kinh doanh.
Bên cạnh việc tổng hợp kết quả, nhóm kiểm thử cũng phân tích những điểm mạnh, hạn chế và bài học kinh nghiệm trong quá trình thực hiện. Những dữ liệu này là cơ sở quan trọng để cải thiện quy trình kiểm thử cho các dự án tiếp theo. Đồng thời, các kịch bản kiểm thử và lỗi được phân loại, đánh giá mức độ nghiêm trọng, giúp hình thành nên bức tranh toàn diện về chất lượng phần mềm.
Sau cùng, đội ngũ kiểm thử chuẩn bị báo cáo đóng chu trình kiểm thử (test closure report) và các thống kê, số liệu liên quan, chính thức khép lại chu trình kiểm thử của dự án.
Phân biệt SDLC và STLC

Trong quy trình phát triển phần mềm, SDLC (Software Development Life Cycle) và STLC (Software Testing Life Cycle) là hai khái niệm thường đi song hành nhưng có mục tiêu và phạm vi khác nhau.
Cụ thể, SDLC bao quát toàn bộ quá trình phát triển phần mềm — từ khâu lên ý tưởng, lập kế hoạch, thiết kế, phát triển cho đến triển khai và bảo trì. Mục tiêu chính của SDLC là tạo ra một sản phẩm phần mềm hoàn chỉnh, hoạt động hiệu quả và đáp ứng nhu cầu người dùng.
Trong khi đó, STLC tập trung riêng vào các hoạt động kiểm thử nhằm đảm bảo chất lượng, độ chính xác và độ tin cậy của phần mềm trước khi phát hành. STLC không tham gia vào việc viết mã hay xây dựng hệ thống, mà chủ yếu kiểm tra và xác minh sản phẩm do nhóm phát triển tạo ra.
Dưới đây là bảng tổng hợp giúp bạn dễ dàng so sánh sự khác biệt giữa SDLC và STLC:
| Tiêu chí | SDLC (Vòng đời phát triển phần mềm) | STLC (Vòng đời kiểm thử phần mềm) |
| Khái niệm | Bao gồm toàn bộ quá trình phát triển phần mềm từ đầu đến cuối | Bao gồm các bước kiểm thử để đảm bảo chất lượng sản phẩm |
| Mục tiêu | Xây dựng và bàn giao một phần mềm hoàn chỉnh, ổn định | Xác minh phần mềm hoạt động đúng yêu cầu và phát hiện lỗi |
| Phạm vi | Tập trung vào phát triển – từ phân tích yêu cầu đến bảo trì | Tập trung vào kiểm thử – từ lập kế hoạch đến đóng chu trình kiểm thử |
| Trình tự thực hiện | Diễn ra trước quá trình kiểm thử | Diễn ra sau giai đoạn phát triển trong SDLC |
| Đội ngũ tham gia | Quản lý dự án, nhà phân tích, lập trình viên, nhà thiết kế | Kiểm thử viên và nhóm QA (Quality Assurance) |
| Đầu ra | Một sản phẩm phần mềm hoàn chỉnh, sẵn sàng triển khai | Báo cáo kết quả kiểm thử, danh sách lỗi, phần mềm được xác thực chất lượng |
| Mối quan hệ | Là quy trình phát triển chính bao gồm nhiều giai đoạn | Là một phần của SDLC, giúp đảm bảo phần mềm đạt chuẩn trước khi ra mắt |
| Kết quả cuối cùng | Cung cấp phần mềm hoạt động hiệu quả theo yêu cầu người dùng | Đảm bảo phần mềm chất lượng cao, ít lỗi và vận hành ổn định |
KẾT LUẬN
Qua những chia sẻ trên, hy vọng bạn đã hiểu rõ hơn về vòng đời kiểm thử phần mềm (STLC) — quy trình đóng vai trò quan trọng trong việc đảm bảo chất lượng sản phẩm trước khi đến tay người dùng. Mỗi giai đoạn trong STLC đều có ý nghĩa riêng, từ việc phân tích yêu cầu, lập kế hoạch, thiết kế kịch bản, thiết lập môi trường, thực thi đến đóng chu trình kiểm thử — tất cả đều hướng tới mục tiêu duy nhất: phần mềm ổn định, đáng tin cậy và mang lại trải nghiệm tốt nhất.
Dù bạn mới bắt đầu tìm hiểu hay đang theo đuổi nghề Tester chuyên nghiệp, việc nắm vững kiến thức về STLC sẽ giúp bạn làm việc hiệu quả hơn, giao tiếp tốt hơn với team phát triển và xây dựng tư duy kiểm thử chuyên sâu.
Nếu bạn muốn học bài bản hơn, được thực hành trên dự án thật và nhận hướng dẫn trực tiếp từ chuyên gia QA/QC, hãy tham gia khóa học Tester tại CodeStar Academy. Đây chính là bước khởi đầu vững chắc giúp bạn trở thành Tester chuyên nghiệp, tự tin ứng tuyển và chinh phục mọi buổi phỏng vấn.
Đăng ký ngay hôm nay để được tư vấn chi tiết về lộ trình học và cơ hội nghề nghiệp cùng CodeStar Academy!
