6 giai đoạn của Quy trình kiểm thử phần mềm - ITNavi
Nằm trong vòng đời phát triển phần mềm, kiểm thử là một giai đoạn quan trọng giúp mang lại sản phẩm chất lượng tốt nhất đến tay khách hàng. Nhiều người lầm tưởng kiểm thử phần mềm là hoạt động đơn lẻ, nhưng thực chất là một quy trình bài bản. Để có cái nhìn tổng quan về quy trình kiểm thử phần mềm, cùng ITNavi tìm hiểu ngay tại bài viết dưới đây!
Quy trình kiểm thử phần mềm giúp mang lại sản phẩm hoàn hảo đến tay khách hàng
Về cơ bản, quy trình kiểm thử phần mềm gồm 6 giai đoạn: Requirement Analysis (Phân tích yêu cầu), Test Planning (Lập kế hoạch kiểm thử), Test Case Development (Phát triển kịch bản kiểm thử), 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 (Kết thúc chu kỳ kiểm thử).Xem thêm: vận chuyển nhật việt
1. Requirement Analysis (Phân tích yêu cầu)
Giai đoạn đầu tiên của quy trình kiểm thử phần mềm là Requirement Analysis (Phân tích yêu cầu). Trong giai đoạn này, các tester sẽ phân tích tài liệu Prototype (Tài liệu đặc tả yêu cầu) được tạo trong Software Development Life Cycle (Vòng đời phát triển phần mềm) để kiểm tra các yêu cầu do khách hàng đưa ra.
Yêu cầu được chia làm 2 dạng: Functional (Chức năng) và Non-Functional (Phi chức năng). Yêu cầu về Functional sẽ mô tả tính năng còn Non-Functional sẽ mô tả hiệu năng, tính bảo mật, tính hữu dụng của phần mềm. Trong quá trình phân tích, nếu yêu cầu còn mơ hồ sẽ được xem xét lại, tester đồng thời làm việc với các bên liên quan để làm rõ vấn đề. Cuối cùng, tester sẽ xác định loại kiểm thử sẽ dùng và độ ưu tiên của các hoạt động kiểm thử, xác định môi trường test cần chuẩn bị.
Phân tích yêu cầu là giai đoạn đầu tiên của quy trình phát triển phần mềm
2. Test Planning (Lập kế hoạch kiểm thử)
Sau giai đoạn một, tester tiến hành Lập kế hoạch kiểm thử để kiểm tra xem phần mềm có đáp ứng các yêu cầu hay không. Kế hoạch kiểm thử là một tài liệu tổng quan về việc kiểm thử dự án bao gồm những thông tin sau:
- Phạm vi kiểm thử, hướng tiếp cận, quy trình kiểm thử, tài nguyên và nhân lực test.
- Các chức năng/module cần được kiểm tra; các công cụ và môi trường kiểm thử cần có.
- Ai test chức năng nào? - Khi nào bắt đầu thực hiện viết và hoàn thành test case? - Khi nào bắt đầu thực hiện và hoàn thành test?
3. Test Case Development (Phát triển kịch bản kiểm thử)
Sau khi có được Test Plan, Tester bắt đầu xây dựng bộ Test Case dựa trên yêu cầu của phần mềm. Test Case cần mô tả được chi tiết dữ liệu đầu vào, hành động, kết quả mong đợi để xác định một chức năng của ứng dụng phần mềm có hoạt động đúng hay không. Template của Test Case có nhiều trường hợp nhưng bắt buộc phải có 5 mục chính: ID, mục đích kiểm thử, các bước thực hiện, kết quả mong đợi & kết quả thực tế.
Nếu sử dụng tool để thực hiện test tự động (Automation testing) chức năng và giao diện của sản phẩm, tester sẽ tạo thêm một kịch bản kiểm thử gọi là Test Script. Test Script là bản hướng dẫn chi tiết được viết bằng mã code nhằm hỗ trợ kiểm thử những trường hợp nếu test thủ công bằng tay sẽ rất khó khăn.Xem thêm: cách gửi hàng từ nhật về việt nam
Các Tester trong cùng một team sẽ review chéo Test Case của nhau tránh bỏ sót những trường hợp test quan trọng. Một bộ Test Case chất lượng sẽ giúp đảm bảo chất lượng sản phẩm, hạn chế lỗi và rủi ro nhất cho khách hàng.
Biểu mẫu Test Case cơ bản với 5 thành phần chính
4. Environment Setup (Thiết lập môi trường kiểm thử)
Thiết lập môi trường thử nghiệm là một hoạt động độc lập và có thể được bắt đầu cùng với giai đoạn phát triển kịch bản kiểm thử. Môi trường kiểm thử sẽ do developers tạo ra để deploy sản phẩm đã được hoàn thiện về phần lập trình.
Sau khi thiết lập môi trường thử nghiệm, tester thực hiện nhanh Smoke Testing (Kiểm thử khói) để kiểm tra tính sẵn sàng của môi trường thử nghiệm đồng thời tính ổn định của bản build sản phẩm. Trường hợp xuất hiện lỗi như môi trường không ổn định hay bản build lỗi chức năng chính, tester sẽ báo lại developers sửa ngay. Nếu môi trường và bản build đã đủ ổn định để tiến hành test chi tiết, tester sẽ tiến hành giai đoạn tiếp theo - Thực hiện kiểm thử.
5. Test Execution (Thực hiện kiểm thử)
Khi developers đã code và đưa sản phẩm lên môi trường kiểm thử, tester sẽ thực thi dựa trên Test Case đã viết. Trong quá trình test, nếu phát hiện ra bug (lỗi) thì tester sẽ log (viết) lên các tool quản lý lỗi. Bug của lập trình viên nào sẽ giao lại cho người đấy xử lý. Khi nào developers fix bug xong, tester sẽ nhận lại và tiến hành kiểm thử.
Nếu lỗi đã được sửa, tính năng hoạt động ổn định, tester sẽ đổi trạng thái thành Close Bug. Trường hợp lỗi vẫn chưa được fix thành công, trạng thái sẽ được đổi thành Re-open để developers thực hiện fix lại. Khi nào bug được fix thành công mới được đóng lại việc test tính năng đấy.
Trong cả quá trình kiểm thử phần mềm, tester ưu tiên kiểm tra chức năng chính trước, chức năng phụ và giao diện sẽ thực hiện test sau. Quá trình kiểm thử phần mềm bắt buộc phải tuân thủ thời gian đã đề ra, mọi người trong team đôn đốc nhau để kịp tiến độ bàn giao sản phẩm. Cuối cùng, tester thực hiện làm báo cáo tùy theo yêu cầu của dự án để đánh giá việc kết thúc quy trình kiểm thử phần mềm.
Mục đích của kiểm thử là tìm ra được lỗi của sản phẩm
6. Test Cycle Closure (Kết thúc chu kỳ kiểm thử)
Ở giai đoạn cuối cùng, tester chuẩn bị báo cáo kết thúc kiểm thử, tổng hợp lại các chỉ số trong quá trình test. Cả team phát triển sẽ ngồi họp để đánh giá toàn bộ các tiêu chí xác định kiểm thử đã đủ hay chưa. Những tiêu chí này khác nhau tùy theo từng dự án, thông thường bao gồm:
- Số lượng test case tối đa được thực thi Passed.
- Tỷ lệ lỗi giảm xuống dưới mức nhất định.
- Deadline được chốt từ giai đoạn làm kế hoạch kiểm thử.
Quy trình kiểm thử phần mềm thường chỉ được kết thúc khi sản phẩm được bàn giao cho khách hàng. Ngoài ra, hoạt động kiểm thử có thể kết thúc trong các trường hợp sau:
- Khi 1 dự án bị hủy bỏ.
- Khi các mục tiêu chính đã hoàn thành.
- Khi việc bảo trì hoặc cập nhật đã hoàn thành.
Kết luận
Hy vọng bài viết trên đã giúp các bạn tester nắm được quy trình phát triển phần mềm cũng như 6 giai đoạn quan trọng: Requirement Analysis, Test Planning, Test Case Development, Environment Setup, Test Execution, Test Cycle Closure. Tuân thủ theo quy trình, tester sẽ làm việc một cách hệ thống và khoa học hơn, đảm bảo chất lượng đầu ra của sản phẩm.
Mở rộng ngay cơ hội việc làm Tester tại ITNavi - Nền tảng kết nối việc làm IT với hơn 1000++ jobs cập nhật mỗi ngày.
Xem thêm:
1000 việc làm IT tại Nền tảng kết nối việc làm ITNavi