Một vấn đề nữa có thể phát sinh do tương tác giữa các lỗi trong các module hoặc các đối tượng khác nhau. Lỗi trong một đối tượng chỉ có thể được phát hiện khi một số đối tượng khác cư xử một cách bất ngờ. Ví dụ, một đối tượng có thể gọi một số đối tượng khác để nhận được một số dịch vụ và có thể giả định rằng các phản ứng là đúng. Nếu đã có một sự hiểu lầm về trị giá tính toán, giá trị trả về có thể được hợp lệ nhưng không chính xác. Điều này sẽ chỉ thể hiện bản thân khi một số tính toán sau này gặp khó khăn. Một số hướng dẫn chung để thử nghiệm giao diện là:
1. Kiểm tra mã để được kiểm tra và liệt kê một cách rõ ràng mỗi cuộc gọi đến một thành tố quan bên ngoài. Thiết kế một loạt các thử nghiệm, nơi các giá trị của các tham số cho các thành phần khác bên ngoài là ở hai đầu cực của các phạm vi của họ. Những giá trị cực đoan có nhiều khả năng để lộ sự mâu thuẫn giao diện.
2. Nơi con trỏ được truyền qua một giao diện, luôn luôn thử nghiệm giao diện với các tham số con trỏ null.
3. Trong trường hợp một thành phần được gọi thông qua một giao diện thủ tục, kiểm tra thiết kế nên gây ra các thành phần để thất bại. Khác với các giả định sự thất bại là một trong những đặc điểm kỹ thuật hiểu lầm phổ biến nhất.
4. Sử dụng thử nghiệm căng thẳng, như đã thảo luận trong phần trước, trong các hệ thống thông đi qua. Kiểm tra thiết kế tạo ra nhiều hơn các thông điệp hơn là khả năng xảy ra trong thực tế. Vấn đề thời gian có thể được tiết lộ theo cách này.
5. Trong trường hợp nhiều thành phần tương tác thông qua bộ nhớ chia sẻ, kiểm tra thiết kế mà thay đổi thứ tự trong đó các thành phần này được kích hoạt. Các xét nghiệm này có thể cho thấy giả định ngầm được thực hiện bởi các lập trình viên về thứ tự trong đó các dữ liệu được chia sẻ được sản xuất và tiêu thụ. Các kỹ thuật xác nhận tĩnh là thường chi phí-hiệu quả hơn so với thử nghiệm để phát hiện lỗi giao diện. Một ngôn ngữ mạnh mẽ đánh máy như Java cho phép nhiều lỗi giao diện để bị mắc kẹt bởi trình biên dịch. Trường hợp một ngôn ngữ yếu, chẳng hạn như C, được sử dụng, một phân tích tĩnh như lint (xem Chương 22) có thể phát hiện lỗi giao diện. Chương trình tions thanh tra có thể tập trung vào giao diện thành phần và các câu hỏi về các hành vi liên mặt giả hỏi trong quá trình kiểm tra.
Kiểm tra trường hợp thiết kế là một phần của hệ thống và kiểm tra thành phần mà bạn thiết kế các trường hợp kiểm tra (đầu vào và dự đoán kết quả đầu ra) mà kiểm tra hệ thống. Mục đích của quá trình thiết kế trường hợp thử nghiệm là để tạo ra một tập hợp các trường hợp kiểm tra có hiệu quả trong việc phát hiện các khuyết tật chương trình và cho thấy rằng hệ thống đáp ứng yêu cầu của nó. Để thiết kế một trường hợp thử nghiệm, bạn chọn một tính năng của hệ thống hoặc thành phần mà bạn đang thử nghiệm. Sau đó bạn chọn một tập hợp các yếu tố đầu vào mà thực hiện tính năng này, tài liệu các kết quả mong đợi hoặc dãy đầu ra và, nơi p'ossible, thiết kế một kiểm tra tự động kiểm tra rằng các kết quả thực tế và dự kiến sẽ là như nhau.
Có nhiều cách tiếp cận khác nhau mà bạn có thể tận để kiểm tra trường hợp thiết kế:
1. Yêu cầu dựa trên thử nghiệm mà trường hợp thử nghiệm được thiết kế để kiểm tra các yêu cầu hệ thống. Điều này được sử dụng chủ yếu ở giai đoạn thử nghiệm hệ thống như hệ thống các yêu cầu thường được thực hiện bởi severalcomponents. Đối với mỗi yêu cầu, bạn xác định các trường hợp thử nghiệm có thể chứng minh rằng hệ thống đáp ứng yêu cầu đó.
2. Kiểm tra phân vùng nơi bạn xác định đầu vào và đầu ra phân vùng và kiểm tra thiết kế để hệ thống thực thi đầu vào từ tất cả các phân vùng và tạo ra kết quả đầu ra trong tất cả các phân vùng. Phân vùng đã được các nhóm dữ liệu có đặc điểm chung như tất cả các số âm, tất cả các tên ít hơn 30 ký tự, tất cả các sự kiện aris- ing từ cách chọn các mục trên menu, và như vậy.
3. Kiểm tra cấu trúc mà bạn sử dụng kiến thức về cấu trúc của chương trình để thiết kế các bài kiểm tra thực hiện tất cả các phần của chương trình. Về cơ bản, khi thử nghiệm một chương trình, bạn nên cố gắng thực hiện từng tuyên bố ít nhất một lần. Kiểm tra cấu trúc giúp xác định các trường hợp thử nghiệm, có thể làm cho điều này có thể.
Nói chung, khi thiết kế trường hợp thử nghiệm, bạn nên bắt đầu với các bài kiểm tra cấp cao nhất từ therequirements sau đó dần dần thêm các xét nghiệm chi tiết hơn bằng cách sử dụng phân vùng và cấu trúc nguyên tắc chung testing.A các yêu cầu kỹ thuật, thảo luận trong Chương 6, đó là các yêu cầu cần được kiểm chứng. Đó là, các yêu cầu cần phải được viết theo một cách mà một thử nghiệm có thể được thiết kế để cho một người quan sát có thể kiểm tra xem các yêu cầu đã được thỏa mãn. Yêu cầu dựa trên thử nghiệm, do đó, là một cách tiếp cận có hệ thống để kiểm tra trường hợp thiết kế, nơi bạn xem xét từng yêu cầu và lấy được một số các kiểm tra cho nó. Yêu cầu dựa trên thử nghiệm là xác hơn là lỗi thử nghiệm-mà quý vị đang try- để chứng minh rằng hệ thống đã thực hiện đúng yêu cầu của nó.
Ví dụ, hãy xem xét các yêu cầu đối với hệ thống LIBSYS giới thiệu trong chương 6.
1. Người sử dụng sẽ có thể tìm kiếm hoặc là tất cả các thiết lập ban đầu của cơ sở dữ liệu hoặc chọn một tập hợp con của nó.
2. Hệ thống sẽ cung cấp cho người xem thích hợp cho người sử dụng để đọc các tài liệu trong kho lưu trữ tài liệu.
đang được dịch, vui lòng đợi..