►System Integration Testing
Kiểm thử tích hợp
►Incremental
►Top-down
►Bottom-up
►Big Bang
►Sanwich
System Integration Testing
Kiểm thử tích hợp:
► Ghép dần các module
với nhau
► Đảm bảo các module
kiên kết với nhau theo
yêu cầu
System Integration Testing
Kiểm thử tích hợp:
Kiểm thử tích hợp các unit
• Người tiến hành: người lập trình, người thiết kế...
• Các unit được thêm vào theo một trong 2 chiến
lược top-down hoặc bottom-up
• Mục đích:
Kiểm tra giao diện giữa các unit
Kiểm tra tính đúng đắn so với đặc tả
Kiểm tra tính hiệu quả
• Thường sử dụng kiểm thử chức năng
• Được lập tài liệu
21 trang |
Chia sẻ: candy98 | Lượt xem: 471 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Software Testing and Quality Assurance - Lecture 8: System Integration Testing - Đào Nam Anh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1Software Testing and Quality Assurance
System Integration Testing
Dr. Dao Nam Anh
Faculty of Information Technology
University of Technology and Management
2Resources
► Pressman, Software Engineering, McGraw Hill (chapter 18
& 19)
► Sommerville, Software Engineering, Addison-Wesley
(chapter 22 & 23)
► Software Testing and QA Theory and Practics, Chapter 7,
WILEY Publish
► Foundations Of Software Testing, Istqb Certification,
Dorothy Graham, Erik Van Veenendaal, Isabel Evans, Rex
Black
► Jovanović, Irena, Software Testing Methods and
Techniques
► Lâm Quang Vũ,
3Nội dung
►System Integration Testing
Kiểm thử tích hợp
►Incremental
►Top-down
►Bottom-up
►Big Bang
►Sanwich
4System Integration Testing
Kiểm thử tích hợp:
►Ghép dần các module
với nhau
►Đảm bảo các module
kiên kết với nhau theo
yêu cầu
5System Integration Testing
Kiểm thử tích hợp:
Kiểm thử tích hợp các unit
• Người tiến hành: người lập trình, người thiết kế...
• Các unit được thêm vào theo một trong 2 chiến
lược top-down hoặc bottom-up
• Mục đích:
Kiểm tra giao diện giữa các unit
Kiểm tra tính đúng đắn so với đặc tả
Kiểm tra tính hiệu quả
• Thường sử dụng kiểm thử chức năng
• Được lập tài liệu
6System Integration Testing
Các loại kỹ thuật:
►Incremental
►Top-down
►Bottom-up
►Big Bang
►Sanwich
7System Integration Testing
Stubs and Drivers:
8System Integration Testing
Incremental:
►Bắt đầu test từ một nhóm nhỏ các module
►Tăng dần số lượng module liên kết trong
test
9System Integration Testing
Incremental:
10
System Integration Testing
Top-down:
1. Vẽ sơ đồ cấu trúc các
module
2. Module A được test
với module B, với các
giá trị giả định của C
và D
3. Test tiếp A-B-D, với
giá trị giả định của C
11
System Integration Testing
Top-down:
► Các mô đun mức trên được kiểm thử
trước
► Các mô đun thuộc cấp được thay bằng
bằng các mô đun tạm thời (stub
function)
Có cùng tên với mô đun thật
Có cùng giao diện
Trả lại kết quả với một hoặc một vài bộ dữ
liệu chuẩn
12
System Integration Testing
Top-down:
4. A-B-D-C / E’F’G’
5. A-B-D-C-E / F’G’
6. A-B-D-C-E-F / F’
13
System Integration Testing
Top-down:
Ưu điểm:
► Phát hiện sớm các lỗi thiết kế (lỗi cấu trúc)
► Kiểm thử trên xuống kết hợp với phát triển trên
xuống sẽ giúp phát hiện sớm các lỗi thiết kế và
làm giảm giá thành sửa đổi
► Có phiên bản thực hiện được sớm
Phiên bản thực hiện với các chức năng chính có sớm
Có thể thẩm định tính dùng được của sản phẩm sớm
14
System Integration Testing
Top-down:
Nhược điểm
Nhiều mô đun cấp thấp rất khó mô phỏng
- Thao tác với cấu trúc dữ liệu phức tạp
- Trả lại kết quả phức tạp (con trỏ, ảnh, ...)
15
System Integration Testing
Bottom-up:
►Các mô đun cấp thấp được kiểm thử trước
►Mô đun mức trên được thay thế bằng mô
đun điều khiển (test driver), có chức năng
► Gọi mô đun cần thử nghiệm
► Truyền dữ liệu
► Hiển thị kết quả
►Thay thế dần các drive
16
System Integration Testing
Bottom-up:
1. E - F - G
2. E-F-G-C-B-D
17
System Integration Testing
Bottom-up:
Ưu điểm
► Tránh xây dựng các mô đun tạm thời (stub) phức
tạp
► Tránh sinh các kết quả nhân tạo (nhập từ bàn
phím)
► Thuận tiện cho phát triển các mô đun để dùng lại
Nhược điểm
► Chậm phát hiện các lỗi kiến trúc
► Chậm có phiên bản thực hiện
18
System Integration Testing
Top down vs. Bottom up:
►Mỗi chiến lược đều có ưu nhược điểm riêng
►Chiến lược kiểm thử phải phù hợp với chiến
lược phát triển
►Phát triển top-down = top-down testing
►Phát triển bottom-up = bottom-up testing
►Có thể phối hợp các chiến lược:
Sandwich testing
19
System Integration Testing
Big-Bang :
1. Đầu tiên tất cả các mô-đun cá nhân thử
nghiệm
2. Tiếp theo, tất cả những mô-đun được
đặt lại với nhau để xây dựng toàn bộ hệ
thống, được thử nghiệm như một toàn
bộ hệ thống
20
System Integration Testing
Sandwich:
► Trong phương pháp này, một hệ thống được tích hợp
bằng cách kết hợp của từ trên xuống, từ dưới lên, và
big-bang
► Một hệ thống thứ bậc được xem như là bao gồm ba
lớp
1. Cách tiếp cận từ dưới lên được áp dụng để tích
hợp các mô-đun trong các lớp phía dưới
2. Các mô-đun lớp hàng đầu được tích hợp bằng
cách sử dụng phương pháp tiếp cận từ trên xuống
3. Các lớp trung được tích hợp bằng big-bang sau khi
phía trên và các lớp phía dưới đã được tích hợp
21
Q & A