Section I: Black Box Testing Techniques
Chapter List
Chapter 3: Equivalence Class Testing
Chapter 4: Boundary Value Testing
Chapter 5: Decision Table Testing
Chapter 6: Pairwise Testing
Chapter 7: State-Transition Testing
Chapter 8: Domain Analysis Testing
Chapter 9: Use Case Testing
Part Overview
Definition
Black box testing is a strategy in which testing is based solely on the requirements and specifications. Unlike its complement, white box testing, black box testing requires no knowledge of the internal paths, structure, or implementation of the software under test (SUT).
The general black box testing process is:
The requirements or specifications are analyzed.
Valid inputs are chosen based on the specification to determine that the SUT processes them correctly. Invalid inputs must also be chosen to verify that the SUT detects them and handles them properly.
Expected outputs for those inputs are determined.
Tests are constructed with the selected inputs.
The tests are run.
Actual outputs are compared with the expected outputs.
A determination is made as to the proper functioning of the SUT.
Applicability
Black box testing can be applied at all levels of system development—unit, integration, system, and acceptance.
Click To expand
As we move up in size from module to subsystem to system the box gets larger, with more complex inputs and more complex outputs, but the approach remains the same. Also, as we move up in size, we are forced to the black box approach; there are simply too many paths through the SUT to perform white box testing.
Disadvantages
When using black box testing, the tester can never be sure of how much of the SUT has been tested. No matter how clever or diligent the tester, some execution paths may never be exercised. For example, what is the probability a tester would select a test case to discover this "feature"?
if (name=="Lee" && employeeNumber=="1234" &&
employmentStatus=="RecentlyTerminatedForCause") {
send Lee a check for $1,000,000;
}
Key Point When using black box testing, the tester can never be sure of how much of the system under test has been tested.
To find every defect using black box testing, the tester would have to create every possible combination of input data, both valid and invalid. This exhaustive input testing is almost always impossible. We can only choose a subset (often a very small subset) of the input combinations.
In The Art of Software Testing, Glenford Myers provides an excellent example of the futility of exhaustive testing: How would you thoroughly test a compiler? By writing every possible valid and invalid program. The problem is substantially worse for systems that must remember what has happened before (i.e., that remember their state). In those systems, not only must we test every possible input, we must test every possible sequence of every possible input.
Key Point Even though we can't test everything, formal black box testing directs the tester to choose subsets of tests that are both efficient and effective in finding defects.
Advantages
Even though we can't test everything, formal black box testing directs the tester to choose subsets of tests that are both efficient and effective in finding defects. As such, these subsets will find more defects than a randomly created equivalent number of tests. Black box testing helps maximize the return on our testing investment.
References
Myers, Glenford J. (1979). The Art of Software Testing. John Wiley & Sons.
Results (
Vietnamese) 1:
[Copy]Copied!
Phần I: hộp đen thử nghiệm kỹ thuậtDanh sách chươngChương 3: Tương đương lớp học thử nghiệm Chương 4: Ranh giới giá trị thử nghiệm Chương 5: Quyết định bàn kiểm tra Chương 6: Pairwise thử nghiệm Chương 7: Nhà nước chuyển tiếp thử nghiệm Chương 8: Tên miền thử nghiệm phân tích Chương 9: Sử dụng trường hợp thử nghiệm Phần tổng quan Định nghĩaHộp đen thử nghiệm là một chiến lược trong đó thử nghiệm dựa hoàn toàn vào các yêu cầu và thông số kỹ thuật. Không giống như bổ ngữ của nó, trắng hộp kiểm tra, hộp đen thử nghiệm yêu cầu không có kiến thức của đường dẫn nội bộ, cấu trúc, hoặc thực hiện các phần mềm theo thử nghiệm (SUT). Chung hộp đen thử nghiệm quá trình là:Yêu cầu hoặc thông số kỹ thuật được phân tích.Đầu vào hợp lệ được lựa chọn dựa trên đặc điểm kỹ thuật để xác định rằng SUT xử lý chúng một cách chính xác. Đầu vào không hợp lệ cũng phải được chọn để xác minh rằng SUT phát hiện chúng và xử lý chúng đúng cách.Kết quả đầu ra dự kiến cho các đầu vào được xác định.Xét nghiệm được xây dựng với các đầu vào được chọn.Các bài kiểm tra đang chạy.Kết quả đầu ra thực tế được so sánh với kết quả đầu ra dự kiến.Một quyết định được thực hiện là để hoạt động đúng đắn của SUT.Ứng dụngHộp đen thử nghiệm có thể được áp dụng ở mọi cấp của hệ thống phát triển-đơn vị, hội nhập, Hệ thống, và chấp nhận.Click vào để mở rộng Khi chúng tôi di chuyển trong kích thước từ mô-đun để hệ thống phụ để hệ thống hộp được lớn hơn, với phức tạp hơn đầu vào và đầu ra phức tạp hơn, nhưng phương pháp tiếp cận vẫn giữ nguyên. Ngoài ra, như chúng tôi di chuyển lên trong kích thước, chúng tôi đang bị buộc phải tiếp cận hộp đen; có là chỉ đơn giản là quá nhiều đường dẫn thông qua SUT để thực hiện kiểm tra hộp màu trắng.Nhược điểmKhi sử dụng hộp đen thử nghiệm, thử nghiệm có thể không bao giờ chắc chắn bao nhiêu SUT đã được thử nghiệm. Không có vấn đề như thế nào thông minh hoặc siêng năng thử nghiệm, đường dẫn thực hiện một số không bao giờ có thể được thực hiện. Ví dụ, xác suất một thử chọn một trường hợp thử nghiệm để khám phá các tính năng này"" là gì? Nếu (tên == "Lee" & & employeeNumber == "1234" & & employmentStatus == "RecentlyTerminatedForCause") {} gửi Lee một kiểm tra $1.000.000; } Key điểm khi sử dụng hộp đen thử nghiệm, thử nghiệm có thể không bao giờ chắc chắn bao nhiêu của hệ thống thử nghiệm đã được thử nghiệm. Để tìm mọi lỗi bằng cách sử dụng hộp đen thử nghiệm, thử sẽ phải tạo ra mỗi sự kết hợp có thể của dữ liệu đầu vào, hợp lệ và không hợp lệ. Này thử nghiệm nhập đầy đủ là hầu như luôn luôn không thể. Chúng tôi chỉ có thể chọn một tập hợp con (thường là một nhóm rất nhỏ) của các kết hợp đầu vào.The Art of kiểm thử phần mềm, Glenford Myers cung cấp một ví dụ tuyệt vời về sự vô ích của thử nghiệm đầy đủ: làm thế nào bạn triệt để kiểm tra một trình biên dịch? Bằng cách viết mỗi chương trình có thể hợp lệ và không hợp lệ. Vấn đề là tồi tệ hơn đáng kể cho hệ thống phải nhớ những gì đã xảy ra trước khi (tức là, mà nhớ nhà nước của họ). Trong các hệ thống, không chỉ chúng tôi phải kiểm tra mỗi đầu vào có thể, chúng tôi phải kiểm tra mỗi chuỗi có thể mỗi đầu vào có thể. Key điểm mặc dù chúng tôi không thể kiểm tra tất cả mọi thứ, chính thức hộp đen thử nghiệm chỉ đạo thử để chọn các tập con của bài kiểm tra hiệu quả và hiệu quả trong việc tìm kiếm lỗi. Lợi thếMặc dù chúng tôi không thể kiểm tra tất cả mọi thứ, chính thức hộp đen thử nghiệm chỉ đạo thử nghiệm để lựa chọn các tập con của bài kiểm tra hiệu quả và hiệu quả trong việc tìm kiếm lỗi. Như vậy, các con sẽ tìm thấy các Khuyết tật nhiều hơn một số xét nghiệm ngẫu nhiên tạo ra tương đương. Hộp đen thử nghiệm giúp tối đa hóa lợi nhuận trên đầu tư thử nghiệm của chúng tôi.Tài liệu tham khảoMyers, Glenford J. (1979). Nghệ thuật của kiểm thử phần mềm. John Wiley & Sons.
Being translated, please wait..

Results (
Vietnamese) 2:
[Copy]Copied!
Phần I: Black Box Testing Kỹ thuật
Chapter List
Chương 3: Thử nghiệm tương đương lớp
Chương 4: Boundary Value nghiệm
Chương 5: Quyết định Bảng kiểm tra
Chương 6: Kiểm tra cặp
Chương 7: Kiểm tra nhà nước-Transition
Chương 8: Domain Analysis Testing
Chương 9: Trường hợp sử dụng thử nghiệm
phần Tổng quan
Definition
hộp đen kiểm tra là một chiến lược trong đó thử nghiệm được chỉ dựa trên các yêu cầu và chi tiết kỹ thuật. Không giống như các bổ sung của nó, kiểm tra hộp màu trắng, kiểm tra hộp đen đòi hỏi phải có kiến thức về con đường nội bộ, cơ cấu, hoặc thực hiện các phần mềm thử (SUT). Quá trình kiểm tra hộp đen nói chung là:. Các yêu cầu hoặc thông số kỹ thuật được phân tích đầu vào hợp lệ là chọn dựa trên các đặc điểm kỹ thuật để xác định rằng các SUT xử lý chúng một cách chính xác. Đầu vào không hợp lệ cũng phải được lựa chọn để xác minh rằng các SUT phát hiện chúng và xử lý chúng đúng cách. Kết quả mong đợi cho những đầu vào được xác định. Các xét nghiệm được xây dựng với các yếu tố đầu vào được lựa chọn. Việc kiểm tra được chạy. Kết quả đầu ra thực tế được so sánh với các kết quả đầu ra dự kiến. Một quyết định được thực hiện như các hoạt động đúng đắn của các SUT. Khả năng áp dụng Đen kiểm tra hộp có thể được áp dụng ở tất cả các cấp của hệ thống phát triển đơn vị, tích hợp, hệ thống, và chấp nhận. Bấm vào để mở rộng Khi chúng ta tiến lên trong kích thước từ module hệ thống phụ cho hệ thống hộp được lớn hơn, với nhiều đầu vào phức tạp và nhiều hơn nữa kết quả đầu ra phức tạp, nhưng cách tiếp cận vẫn giữ nguyên. Ngoài ra, như chúng tôi di chuyển lên về kích thước, chúng tôi buộc phải tiếp cận hộp đen; có đơn giản là quá nhiều con đường xuyên qua SUT để thực hiện kiểm tra hộp màu trắng. Nhược điểm Khi sử dụng kiểm tra hộp đen, các thử nghiệm không bao giờ có thể chắc chắn bao nhiêu của SUT đã được thử nghiệm. Không có vấn đề làm thế nào thông minh hay chăm chỉ các máy đo, một số đường dẫn thực hiện có thể không bao giờ được thực hiện. Ví dụ, xác suất một người kiểm tra sẽ chọn một trường hợp thử nghiệm để khám phá tính năng này ""? Là gì nếu (tên == "Lee" && employeeNumber == "1234" && employmentStatus == "RecentlyTerminatedForCause") {gửi Lee một kiểm tra cho $ 1.000.000;}. Point Key Khi sử dụng kiểm tra hộp đen, các thử nghiệm không bao giờ có thể chắc chắn bao nhiêu phần của hệ thống theo thử nghiệm đã được thử nghiệm để tìm tất cả các khiếm khuyết bằng cách sử dụng kiểm tra hộp đen, các thử nghiệm sẽ phải tạo mọi sự kết hợp có thể có của dữ liệu đầu vào , cả hai đều hợp lệ và không hợp lệ. Kiểm tra đầu vào đầy đủ này là hầu như luôn luôn không thể. Chúng tôi chỉ có thể chọn một tập con (thường là một tập hợp con rất nhỏ) của các tổ hợp đầu vào. Trong Nghệ thuật của kiểm thử phần mềm, Glenford Myers là một ví dụ tuyệt vời của sự vô ích của kiểm tra đầy đủ: Làm thế nào bạn sẽ kiểm tra kỹ lưỡng một trình biên dịch? Bằng cách viết mỗi chương trình hợp lệ và không hợp lệ có thể. Vấn đề là tồi tệ đáng kể cho hệ thống đó phải nhớ những gì đã xảy ra trước đó (ví dụ, rằng nhớ nhà nước của họ). Trong những hệ thống, không những chúng ta phải kiểm tra tất cả đầu vào có thể, chúng ta phải kiểm tra mỗi chuỗi có thể có của mỗi đầu vào có thể. Key Point Mặc dù chúng tôi không thể kiểm tra tất cả mọi thứ, chính thức kiểm tra hộp đen chỉ đạo các thử nghiệm để lựa chọn các tập con của các bài kiểm tra được cả hai hiệu quả và hiệu quả trong việc tìm kiếm các khuyết tật. Ưu Mặc dù chúng tôi không thể kiểm tra tất cả mọi thứ, chính thức kiểm tra hộp đen chỉ đạo các thử nghiệm để lựa chọn các tập con của các bài kiểm tra đều hữu hiệu và hiệu quả trong việc tìm kiếm các khuyết tật. Như vậy, các tập con sẽ tìm thấy khiếm khuyết hơn một số lượng tương đương tạo ra ngẫu nhiên các bài kiểm tra. Kiểm tra hộp đen sẽ giúp tối đa hóa lợi nhuận trên đầu tư thử nghiệm của chúng tôi. Tài liệu tham khảo Myers, Glenford J. (1979). Nghệ thuật của kiểm thử phần mềm. John Wiley & Sons.
Being translated, please wait..
