0

Hiểu Rõ Quy Trình Kiểm Thử Phần Mềm: Kiến Thức Cốt Lõi Cho Người Mới Bắt Đầu

**1.Vòng đời thử nghiệm phần mềm là gì **

Vòng đời kiểm thử phần mềm (Software testing life cycle – STLC) là quy trình kiểm thử được thực hiện theo hệ thống và có kế hoạch rõ ràng. Trong quá trình kiểm thử, rất nhiều giai đoạn khác nhau được thực hiện một cách tuần tự. Mỗi giai đoạn đều có đầu vào và đầu ra khác nhau nhưng đều hướng tới mục tiêu cuối đảm bảo chất lượng sản phẩm. Trong bài viết này, chúng ta sẽ cùng nhau tìm hiểu về các giai đoạn cũng như hoạt động trong một vòng đời kiểm thử phần mềm.

Theo tôi, vòng đời kiểm thử phần mềm (STLC) là một quy trình có kế hoạch giúp đảm bảo chất lượng sản phẩm. Mỗi giai đoạn trong STLC đều có mục tiêu rõ ràng, từ phân tích yêu cầu, thiết kế, thực thi kiểm thử đến báo cáo kết quả. Việc tuân thủ quy trình này giúp phát hiện lỗi sớm, giảm rủi ro và nâng cao hiệu suất phát triển phần mềm.

Dưới đây là các giai đoạn điển hình trong kiểm thử phần mềm:

Requirenment 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 set up – 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ử

2.Các giai đoạn phát triển trong phần mềm

2.1 Requirement analysis - phân tích yêu cầu

Phân tích yêu cầu là bước đầu tiên trong kiểm thử phần mềm, giúp QA hiểu rõ những gì cần kiểm thử. Ở giai đoạn này, QA sẽ đọc và phân tích các tài liệu yêu cầu của dự án, bao gồm yêu cầu chức năng (những gì phần mềm cần làm) và yêu cầu phi chức năng (hiệu suất, bảo mật...).

Trong quá trình phân tích, nếu có điểm chưa rõ, QA sẽ đặt câu hỏi cho các bên liên quan như khách hàng, chuyên viên phân tích nghiệp vụ hoặc nhóm kỹ thuật. Các câu hỏi thường được lưu vào một file Q&A để tránh nhầm lẫn và giúp trả lời nhanh chóng.

Ví dụ thực tế: Giả sử một ứng dụng bán hàng trực tuyến có yêu cầu "người dùng có thể thêm sản phẩm vào giỏ hàng." QA có thể đặt câu hỏi:

Nếu sản phẩm hết hàng, có cho phép thêm vào giỏ không? Có giới hạn số lượng sản phẩm trong giỏ không? Nếu không làm rõ từ đầu, có thể dẫn đến lỗi sau này, gây mất thời gian sửa chữa. Vì vậy, phân tích yêu cầu kỹ lưỡng giúp giảm thiểu lỗi sớm, tiết kiệm chi phí và đảm bảo sản phẩm hoạt động đúng như mong đợi.

2.2 Test planning - lập kế hoạch kiểm thử

Bước thứ 2 trong vòng đời kiểm thử phần mềm là lập kế hoạch kiểm thử. Thông thường, test manager hoặc test leader sẽ là người tạo test plan. Mục tiêu của bước lập kế hoạch kiểm thử là xác định được các hoạt động, nguồn lực, phạm vi, tiêu chí chấp nhận của sản phẩm và các mốc thời gian bàn giao. Ngoài ra, phân tích chiến lược kiểm thử, các rủi ro có thể gặp phải cũng là những hoạt động quan trọng trong giai đoạn này.

Đầu vào của giai đoạn lập kế hoạch kiểm thử là các tài liệu đặc tả đã được cập nhật, tài liệu báo cáo tính khả thi của việc kiểm thử. Đầu ra của giai đoạn này gồm các tài liệu như test plan, test estimation, test schedule.

2.3 Test case development - thiết kế kịch bản kiểm thử

Giai đoạn thiết kế kịch bản kiểm thử diễn ra sau khi đã hoàn thành việc lập kế hoạch. Trong giai đoạn này, người kiểm thử viên bắt tay vào việc viết ra các test case (trường hợp kiểm thử, các kịch bản kiểm thử) chi tiết dựa vào việc vận dụng các test design technique (kỹ thuật thiết kế kịch bản kiểm thử). Test case được chia nhỏ ra theo các điều kiện miêu tả trong tài liệu đặc tả dự án nhằm mục đích bao phủ được tất cả các trường hợp kiểm thử có thể sảy ra. Cùng với việc tạo ra các test case chi tiết, đội kiểm thử cũng cần chuẩn bị trước các dữ liệu kiểm thử cho các trường hợp cần thiết. Sau khi hoàn thành, test case cần được kiểm tra lại bởi thành viên khác trong đội kiểm thử hoặc test leader nhằm tránh những sai sót trong tập hợp test case.

Đầu vào của giai đoạn này bao gồm tài liệu đặc tả dự án đã được cập nhật, các tài liệu đánh giá tính khả thi của việc kiểm thử tự động (nếu có). Đầu ra của giai đoạn này bao gồm test design (bản thiết kế kịch bản test), test case (kịch bản test chi tiết), test automation script (kịch bản test tự động).

Ví dụ thực tế: Giả sử kiểm thử tính năng đăng nhập vào hệ thống, QA có thể viết test case như sau:

Test case 1: Nhập đúng tài khoản & mật khẩu → Hệ thống cho phép đăng nhập Test case 2: Nhập sai mật khẩu 3 lần → Hệ thống khóa tài khoản Test case 3: Để trống tài khoản hoặc mật khẩu → Hiển thị thông báo lỗi

2.4 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ử là một phần quan trọng của vòng đời phát triển phần mềm. Về cơ bản, môi trường kiểm thử được quyết định dựa trên những điều kiện kiểm thử phần mềm. (Ví dụ server, client, network…). Đây là hoạt động độc lập và có thể được bắt đầu song song với giai đoạn thiết kế kịch bản kiểm thử. Kiểm thử viên cần chuẩn bị một vài test case để kiểm tra xem môi trường cài đặt đã sẵn sàng cho việc kiểm thử hay chưa.

Đầu vào của giai đoạn này là test plan, smoke test case, test data. Đầu ra của giai đoạn này là môi trường đã được cài đặt và sẵn sàng cho việc kiểm thử, các kết quả của smoke test case.

2.5 Test execution - Thực hiện kiểm thử

Giai đoạn thực hiện kiểm thử diễn ra sau khi đã hoàn thành giai đoạn viết test case và môi trường kiểm thử đã sẵn sàng. Trong giai đoạn này, người kiểm thử viên thực hiện kiểm thử phần mềm, đánh giá kết quả test, báo cáo các lỗi của phần mềm. Sau khi lập trình viên sửa lỗi xong, kiểm thử viên thực hiện test lại các trường hợp lỗi và theo dõi trạng thái của lỗi đến khi được sửa thành công.

Đầu vào của giai đoạn này là tài liệu test plan, test case, test data. Đầu ra của giai đoạn này là danh sách lỗi, báo cáo thực hiện các trường hợp kiểm thử.

2.6. 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. Ở giai đoạn này, đội kiểm thử viên họp bàn nhằm thực hiện tổng kết, báo cáo kết quả và đá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. Ngoài ra, test cycle closure cũng bao gồm hoạt động thảo luận tất cả những điểm tốt, điểm chưa tốt và rút ra bài học kinh nghiệm cho những dự án sau, giúp cải thiện quy trình kiểm thử. Cùng với đó, kịch bản kiểm thử và lỗi sẽ được phân loại và đánh giá mức độ nghiêm trọng. Sau khi hoàn thành những hoạt động trên, báo cáo đóng quy trình kiểm thử và các số liệu kiểm thử sẽ được chuẩn bị dựa trên các thông số trên.


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí