Kiểm thử tích hợp

Một phần của tài liệu Kỹ nghệ phần mềm nâng cao (Trang 58 - 62)

Câu 67. Kiểm thử tích hợp thực hiện khi nào? Tại sao phải kiểm thử tích hợp?

- Kiểm thử tích hợp là một kỹ thuật có tính hệ thống để xây dựng cấu trúc chương trình ngay khi đang tiến hành kiểm thử để phát hiện sai liên kết với giao diện. Kiểm thử tích hợp nhằm nhận được một phần hay toàn bộ hệ thống như mong đợi.

- Mục đích: tậndungj các modul đã kiểm thử đơn vị và xây dựng chương trình sao cho nó đảm bảo tuân theo thiết kế.

Phải kiểm thử tích hợp vì:

+ Dữ liệu có thể bị mất khi đi qua một giao diện

+ Một mođun có thể có một hiệu ứng bất lợi vô tình lên các modul khác

+ Các chức năng phụ khi kết hợp lại có thể không sinh ra chức năng chính mong muốn + Các điều không chính xác riêng rẽ có thể bị phóng đại đến mức không chấp nhận được. + Các cấu trúc dữ liệu toàn cục có thể để lộ ra các vấn đề...

Câu 68. Có những phương pháp gì được áp dụng cho kiểm thử tích hợp? Mô tả tóm tắt nội dung mỗi phương pháp?

Các phương pháp áp dụng cho kiểm thử tích hợp:

- Phương pháp "big-bang": cố gắng tích hợp không tăng dần tức là xây dựng chương trình bằng cách tiếp cận vụ nổ lớn "big-bang". Tất cả các modul đều được tổ hợp trước. Toàn bộ chương trình được kiểm thử như một tổng thể và thường sẽ là một kết quả hỗn loạn. Gặp phải một tập hợp các lỗi. Việc sửa đổi gặp khó khăn vì việc cô lập nguyên nhân bị phức tạp bởi việc trải rộng trên toàn chương trình. Khi những lỗi này đã được sửa thì những lỗi mới lại xuất hiện và tiến trình này cứ tiếp diễn trong vòng lặp vô hạn.

- Phương pháp tích hợp trên xuống: đây là một phương pháp tích hợp tăng dần với việc xây dựng cấu trúc chương trình. Các modul được tích hợp bằng cách đi dần xuống theo trật tự điều khiển, bắt đầu với modul điều khiển chính (chương trình chính). Các modul phụ thuộc (và phụ thuộc cuối cùng) vào modul điều khiển chính sẽ được tổ hợp dần vào trong cấu trúc theo hoặc chiều sâu trước hay chiều rộng trước.

- Phương pháp tích hợp dưới lên: bắt đầu xây dựng và kiểm thử với các modul nguyên tử (tức là các modul ở mức thấp nhất trong cấu trúc chương trình). Vì các modul này được

tích hợp từ dưới lên nên việc xử lý yêu cầu đối với các modul phụ thuộc vào một mức nào đó bao giờ cũng có sẵn và nhu cầu về cuống bị dẹp bỏ.

Câu 69. Nêu các bước kiểm thử tích hợp từ trên xuống? Ưu nhược điểm của cách tiếp cận này?

Quá trình tích hợp từ trên xuống được thực hiện theo 5 bước:

1. Modul điều khiển chính được dùng như bộ lái kiểm thử (test driver) và tất cả các modul phụ trợ được thay thế bởi các cuống (stub).

2. Thay thế dần từng cuống bởi modul thực thi tương ứng.

3. Sau khi tích hợp modul đó, tiến hành các kiểm thử tương ứng.

4. Sau khi hoàn thành đủ tập các kiểm thử này thì thay một cuống (stub) khác bằng modul thực (nghĩa là quay lại bước 2).

5. Có thể kiểm thử lại (toàn bộ hoặc một phần các kiểm thử trước) để bảo đảm rằng không có sai mới nào được sinh ra.

6. Tiếp tục lặp lại từ bước 2 cho tới khi toàn bộ cấu trúc chương trình được xây dựng. Ưu, nhược điểm:

+ Ưu: Kiểm thử được chức năng điều khiển chủ yếu sớm. + Nhược: Cần thiết các cuống + Các khó khăn kèm theo cuống.

+ Chiến lược này có vẻ không phức tạp, nhưng thực tế nảy ra các vấn đề logic: khi xử lý ở mức thấp lại đòi hỏi phải đủ tương xứng với mức cao.

+ Các cuống được thay thế cho các modul mức thấp, do đó không 1 dữ liệu có ý nghĩa nào có thể chảy ngược lên trong cấu trúc của chương trình. Người kiểm thử đứng trước 2 lựa chọn: (1) để trễ nhiều việc kiểm thử tới khi cuống được thay thế bằng modul thực tế, (2) xây dựng các cuống thực hiện những chức năng giới hạn mô phỏng cho modul thực tại, và (3) tích hợp phần mềm từ đáy cấp bậc lên.

Câu 70. Nêu các bước kiểm thử tích hợp từ dưới lên? Ưu nhược điểm của cách tiếp cận này?

- Bắt đầu xây dựng và kiểm thử từ các modul nguyên tố: việc xử lý nếu có đòi hỏi các modul phụ trợ thì các modul thực sự đã sẵn sàng (cuống đã bị loại).

1. Các modul mức thấp được tổ hợp vào trong các cụm (cluster) thực hiện một chức năng phụ trợ đặc biệt (các cluster gọi là các build)

2. Một bộ lái (chương trình điều khiển kiểm thử) được viết để phối hợp đầu vào và đầu ra của ca kiểm thử.

3. Kiểm thử cụm đó.

4. Tháo bỏ các driver và các cụm được tổ hợp ngược lên trong cấu trúc chương trình Ưu nhược điểm:

+ Ưu: Thiết kế ca kiểm thử dễ và không cần cuống

+ Nhược: luôn chứa chương trình như một chỉnh thể cho đến khi modul cuối cùng được thêm vào.

Câu 71. Các tài liệu kiểm thử tích hợp gồm những loại gì?

- Một kế hoạch kiểm thử tổng thể và một mô tả các kiểm thử đặc biệt phải được đưa vào "đặc tả kiểm thử". Đặc tả này phải được phân phối trong tiến trình kỹ nghệ phần mềm và trở thành 1 bộ phận cấu hình phần mềm.

Tài liệu kiểm thử bao gồm: I. Phạm vi kiểm thử

II. Kế hoạch kiểm thử

A. Các giai đoạn và khối kiểm thử B. Lịch biểu

C. Tổng phí phần mềm D. Môi trường và tài nguyên

III. Thủ tục kiểm thử n (mô tả việc kiểm thử cho khối n) A. Thứ tự tích hợp

1. Mục đích

2. Modul cần kiểm thử

B. Kiểm thử đơn vị cho các modul trong khối 1. Mô tả kiểm thử cho modul m

2. Mô tả tổng phí phần mềm 3. Kết quả dự kiến

C. Môi trường kiểm thử

1. Công cụ hay kỹ thuật đặc biệt 2. Mô tả tổng phí phần mềm D. Dữ liệu ca kiểm thử

E. Kết quả dự kiến cho khối n IV. Kết quả kiểm thử thực tế V. Tham khảo

VI. Phụ lục

- Phạm vi kiểm thử: tổng quát các tính chất về chức năng đặc biệt, về sự thực hiện, về thiết kế nội tại cần kiểm thử, công sức kiểm thử được giới hạn lại, tiêu chuẩn đầy đủ cho từng pha được mô tả và ràng buộc về lịch trình được lập tài liệu

- Kế hoạch kiểm thử: mô tả chiến lược tích hợp tổng thể; kiểm thử được chia thành các pha và các build nhằm đến các tính chất ứng xử và các chức năng đặc biệt.

Một phần của tài liệu Kỹ nghệ phần mềm nâng cao (Trang 58 - 62)

Tải bản đầy đủ (DOCX)

(73 trang)
w