1. 3 Các kỹ thuật kiểm thử
1.5. 1 Kiểm thử chức năng (Functional testing)
Kiểm thử chức năng: tương tự black box testing (kiểm tra đến chức năng của chương trình mà không quan tâm đến cấu trúc bên trong). Kiểm thử chức năng là chỉ tập trung kiểm tra chức năng của ứng dụng đó có hoạt động đúng như khách hàng mong đợi không?
Kiểm thử chức năng dựa trên tài liệu yêu cầu (requirement) và dựa trên tài liệu mô tả chi tiết (specification) quy trình nghiệp vụ:
- Dựa trên yêu cầu: Sử dụng các đặc tả yêu cầu của hệ thống làm cơ sở để thiết kế kịch kiểm thử. Một cách tốt để bắt đầu là sử dụng bảng nội dung của đặc tả yêu cầu như một danh sách các mục kiểm thử và không kiểm thử. Nên xét độ ưu tiên của yêu cầu dựa trên các tiêu chí rủi ro và sử dụng độ ưu tiên để kiểm thử. Điều này sẽ đảm bảo những phần quan trọng nhất sẽ được kiểm thử.
- Dựa trên quy trình nghiệp vụ: Sử dụng các kiến thức về quy trình nghiệp vụ. Quy trình nghiệp vụ mô tả các kịch bản liên quan đến nghiệp vụ hằng ngày của hệ thống. Các trường hợp người dùng bắt nguồn từ hướng đối tượng, nhưng ngày nay phổ biến nhiều là dựa trên vòng đời phát triển phần mềm. Có thể lấy quy trình nghiệp vụ là điểm bắt đầu. Các trường hợp người dùng là một cơ sở rất hữu ích tạo ra các trường hợp kiểm thử từ góc nhìn về nghiệp vụ.
Các loại kiểm thử chức năng
- Kiểm thử đơn vị (Unit Testing): Lập trình viên test
- Kiểm tra khói (Smoke Test): kiểm tra nhanh xem hệ thống có khởi động được hay không
- Kiểm tra tình trạng (Compatability Test) - Kiểm thử giao diện (Interface Testing)
- Kiểm thử tích hợp (Integration Testing): là test tích hợp các chức năng, các module có liên quan đến nhau hay còn gọi là test luồng nghiệp vụ giữa các chức năng, các module. Các chức năng có sự liên kết hay liên quan với nhau về nghiệp vụ nên việc test tích hợp thông luồng nghiệp vụ các chức năng là vô cùng quan trọng.
- Kiểm thử hệ thống (System Testing): Kiểm thử hệ thống là kiểm thử hộp đen, là kiểm thử toàn bộ chức năng và giao diện của hệ thống, đảm bảo hệ thống không có lỗi và đáp ứng đúng theo yêu cầu nghiệp vụ.
- Kiểm thử hồi quy (Regression Testing)