- Unit
Test
- Intergration
Test
- System
Test
- Acceptance
Test
Cụ thể:
Thứ nhất: Unit Test (khái niệm)
Một Unit là thành phần nhỏ nhất của phần mềm,
như là: Function, Procedure, Class, Method
Là kỹ thuật kiểm nghiệm các hoạt động của mọi
chi tiết mã với một quy trình tách biệt với QTPTPM giúp phát hiện sai sót kịp
thời trước khi đưa ra test.
Unit Test (đặc điểm)
Test ở mức thấp nhất
Sử dụng phương pháp test hộp trắng
Kiểm tra độc lập từng thành phần
Thường được thực hiện bởi lập trình viên
Có giá trị khi phát hiện các vấn đề tiềm ẩn hoặc
lỗi kỹ thuật
Là test kết hợp các thành phần của một ứng dụng
và kiểm tra như một ứng dụng đã hoàn thành
Mục đích
ü Phát
hiện lỗi giao tiếp xảy ra giữa các Unit
ü Tích
hợp các Unit đơn lẻ thành các hệ thống nhỏ và cuối cùng là nguyên hệ thống hoàn
chỉnh
Intergration Test (Type)
Kiểm tra cấu trúc (structure): Tương tự White
Box Test, chú trọng đến hoạt động của các thành phần cấu trúc nội tại của
chương trình
Kiểm tra chức năng (functional): Tương tự Black
Box Test, chỉ khảo sát chức năng của chương trình theo yêu cầu kỹ thuật
Kiểm tra hiệu năng (performance): Kiểm tra vận
hành của hệ thống
Kiểm tra khả năng chịu tải (stress): Kiểm tra giới
hạn của hệ thống
Intergration -Plan
Cần được thực hiện tương đương với giai đoạn thiết
kế kiến trúc
Thứ tự tích hợp được xác định theo thứ tự xây dựng
ü Các
thành phần hoàn thành đúng thời hạn
ü Phát
triển các thành phần và test tích hợp được thực hiện song song
Intergration - Guidelines
Mỗi thành phần sẽ được tích hợp 1 lần (tích hợp theo hướng tăng dần
Baseline
0: test thành phần
Baseline
1: 2 thành phần
Baseline
2: 3 thành phần)
Tích hợp từng mục nhỏ của từng thành phần tại một
thời điểm
ü Các
thành phần chính hoặc thành phần có khả năng nhiều lỗi
ü Kết
hợp các thành phần liên quan đơn giản
Intergration - Approaches
Top-down
Bottom-down
Big-bang
(phần này sẽ có 1 bài viết chi tiết từng loại top/bottom down và bigbang, chỉ ra Ưu nhược điểm của 3 phương pháp đó)
Thứ ba: System Test (khái niệm)
Là kiểm tra thiết kế và toàn bộ hệ thống (sau
khi tích hợp) có thỏa mãn yêu cầu đặt ra hay không
Là Black box test
Được thực hiện độc lập bởi một nhóm test (test hệ
thống)
Về chức năng, thỏa mãn:
ü Requirements-based
testing
•
Các yêu cầu là điều kiện đầu tiên cho việc test
•
Phân tích rủi ro để xác định thành phần quan trọng
nhất
ü Business
process-based testing
•
Người sử dụng mong đợi: cái gì được sử dụng thường
xuyên và quan trọng nhất cho việc kinh doanh
•
Thực hiện các giao dịch kinh doanh quan trọng
Yêu cầu phi chức năng:
ü Usability
ü Security
ü Storage
ü Volume
ü Configuration/installation
ü Reliability/qualities
ü Back-up/recovery
ü Performance,
load, stress
ü Functional
Thứ tư: Acceptance Test (khái niệm)
Được thực hiện sau giai đoạn System test, do
khách hàng thực hiện (hoặc ủy quyền cho một nhóm thứ 3 thực hiện)
Mục đích: chứng minh phần mềm thỏa mãn tất cả
các yêu cầu của khách hàng
Đối với những PM bán rộng rãi trên thị trường, cần
thực hiện: Alpha test và Beta Test
Alpha test: người sử dụng kiểm tra phần mềm ngay
tại nơi PTPM, lập trình viên ghi nhận lỗi hoặc phản hồi và lên kế hoạch sửa chữa
Beta test: PM được gửi tới cho người sử dụng để
kiểm tra ngay trong môi trường thực, lỗi, hoặc phản hồi cũng sẽ gửi ngược lại
cho lập trình viên để sửa