Kiểm thử phần mềm là một môn học khó, đòi hỏi bạn phải có kiến thức chuyên sâu và thường xuyên trau dồi bằng các bài tập kiểm thử phần mềm. Cùng tìm hiểu về những dạng bài tập có thể gặp của dạng bài này nhé.
Mục lục
1. Tìm hiểu các chiến lược kiểm thử cần biết trước khi làm bài tập kiểm thử phần mềm
Các dạng bài tập kiểm thử phần mềm theo chiến lược sẽ thường xoay quanh các vấn đề như:
1.1. Black box testing
Kiểm thử dựa trên đặc tả của phần mềm, từ đó đưa ra những đánh giá khách quan về chất lượng phần mềm. Về cơ bản, bài test dạng này sẽ không chú ý quá nhiều tới code và cấu trúc chương trình. Pha kiểm thử duy nhất bạn cần làm đối với bài test dạng này chính là “thăm dò mù”.
Để thực hiện tốt bài tập dạng black box testing, bạn sẽ cần phải áp dụng các phương pháp như:
- Phân lớp tương đương – Equivalence partitioning
- Phân tích giá trị biên – Boundary value analysis
- Kiểm thử mọi cặp – ALl-pairs testing
- Kiểm thử fuzz – Fuzz testing
- Kiểm thử dựa trên mô hình – Model-based testing
- Ma trận dấu vết – Traceability matrix
- Kiểm thử thăm dò – Exploratory testing
- Kiểm thử dựa trên đặc tả – Specification-based testing
1.2. White box testing
Bài tập này còn được gọi với các tên khác như clear box testing, glass box testing, transparent box testing và thường sẽ phải kiểm thử dựa trên cấu trúc bên trong của phần mềm. Với dạng bài tập này, bạn phải có kỹ thuật lập trình thông thạo cấu trúc phần mềm nhất định, đặc biệt là về logic nghiệp vụ, luồng dữ liệu, chức năng, kết quả. Cách lựa chọn các đầu vào và xem các đầu ra cũng cần đặc biệt lưu ý.
Bài test dạng này còn phụ thuộc 1 phần vào cài đặt cũng của hệ thống và phần mềm được test, nếu có thay đổi, bài test cũng bắt buộc phải thay đổi theo. Để làm tốt dạng bài tập kiểm thử phần mềm này, bạn cần áp dụng các phương pháp sau:
- Kiểm thử API.
- Bao phủ mã lệnh (code coverage): Tạo các kiểm tra để đáp ứng một số tiêu chuẩn về kiểm thử mã lệnh.
- Các phương pháp gán lỗi (Fault injection).
- Các phương pháp kiểm thử hoán chuyển (mutation testing method)Gray (grey) box testing.
2. Các mức độ kiểm thử
Các bài tập kiểm thử dựa trên mức độ cũng là 1 kiểu kiểm thử động cần lưu ý. Các dạng bài tập kiểm thử phần mềm dựa trên mức độ thường gặp bao gồm:
2.1. Unit testing: Kiểm thử đơn vị
Kiểm thử dựa trên các chi tiết độc lập, nhỏ nhất của phần mềm, yêu cầu sự tỉ mỉ, kiên nhẫn cao bởi bài test này chiếm rất nhiều thời gian của bạn.
2.2. Integration test: Kiểm thử tích hợp
Bài test này nhằm kiểm tra, phát hiện các lỗi giao tiếp giữa những unit nhỏ hoặc lỗi giao tiếp giữa hệ thống tổng và các hệ thống khác trong phần mềm.
2.3. System test: Kiểm thử hệ thống
Dạng bài tập kiểm thử phần mềm này nhằm kiểm thử thiết kế và toàn bộ hệ thống sau tích hợp xem đã hoàn thiện hay chưa. Đối với dạng bài này, bạn sẽ cần phải:
- Kiểm thử chức năng (Functional Test)
- Kiểm thử hiệu năng (Performance Test)
- Kiểm thử khả năng chịu tải (Stress Test hay Load Test)
- Kiểm thử cấu hình (Configuration Test)
- Kiểm thử bảo mật (Security Test)
- Kiểm thử khả năng phục hồi (Recovery Test)
2.4. Acceptance test: Kiểm thử chấp nhận sản phẩm
Nhằm đánh giá, chứng minh xem phần mềm đã thỏa mãn mọi điều kiện, yêu cầu đề ra hay chưa.
2.5. Kiểm thử Alpha (Alpha test) và kiểm thử Beta (Beta test)
2 dạng kiểm thử này đều phục vụ mục đích giúp phát hiện kịp thời các lỗi xảy ra trong quá trình vận hành của phần mềm trước khi công bố chính thức tới người dùng. Thông thường, 2 bài test dạng này lần lượt sẽ dựa vào trải nghiệm sử dụng của người dùng nội bộ, đến các khách hàng được mời rồi mới đến người dùng thông thường.
2.6. Release testing
Bài test này chỉ diễn ra sau khi phần mềm đã được triển khai rộng rãi tới người dùng nhằm kiểm soát sự ổn định cũng như dựa vào trải nghiệm, đánh giá của khách hàng để nâng cấp về sau.
Trên đây là tổng hợp các dạng bài tập kiểm thử phần mềm cũng như các phương pháp giải quyết triệt để nhất cho những dạng bài test này. Hy vọng thông qua bài viết, bạn sẽ có những định hướng rõ nét cho từng dạng bài tập gặp phải trong quá trình học.