What Is a White Box?

White box testing is also known as structural testing, transparent box testing, logic-driven testing, or code-based testing. White box testing is a test case design method. A box refers to the software being tested. A white box refers to a box that is visible, that is, to know what is inside the box and how it works. The "white box" method fully understands the internal logical structure of the program and tests all logical paths. The "white box" method is an exhaustive path test. When using this scheme, the tester must check the internal structure of the program and start from the logic of the check program to get the test data. The number of independent paths through the program is astronomical. [1]

Test methods for white box testing include code inspection, static structural analysis, static quality measurement,
By checking the internal logical structure of the software, the logical path in the software is covered and tested. Set up checkpoints in different parts of the program to check the status of the program to determine whether the actual running status is consistent with the expected status. [2]
(1) All independent paths in a module are tested at least once. [2]
1.
White box testing methods are generally divided into two categories: static analysis methods and dynamic analysis methods. [3]
According to
White box testing is mainly used in software fields with high reliability requirements, such as military software, aerospace software, industrial control software, and so on. White box testing tools should mainly be supported by the development language, the depth of code coverage,
The most widely used test method for white box testing is the basic path test method. [3]
White Box Testing: Tests that go deeper into the code level and use this technique to find the earliest problems and achieve the best results. The main feature of this technology is that the test object enters the code, and according to the developer's familiarity with the code and the program, the necessary parts are carried out in the software coding phase. The test is called a white box test. This stage of testing is mainly for software developers, using the Xunit series of tools for testing on the JAVA platform. The Xunit test tool is a class-level test tool that tests each class and its methods. [3]
Black Box Testing (Black Box Testing): The content of black box testing mainly includes the following aspects, but mainly the functional part. It mainly covers all functions, and can be combined with compatibility and performance testing. According to software requirements, design documents, simulation customer scenarios, and actual testing with the system. This testing technology is the most used testing technology covering all aspects of testing. Consider the following: [3]
1. Correctness: Calculation results, naming, etc. [3]
2. Usability (Usability): whether the requirements of the software can be met. [3]
3. Boundary Condition: The boundary value of the input part is to use the equivalent class division in the general book to try the maximum and minimum and illegal data and so on. [3]
4. Performance: The time required for the system to complete a task during normal use. The response time is acceptable when multiple people use it simultaneously. The system implemented by J2EE technology needs more care in terms of performance. The general principle is that it is acceptable in less than 3 seconds, acceptable in 3-5 seconds, and more than 5 seconds affects ease of use. If performance problems are found during testing, it is very difficult to fix them, because this often means that the program's algorithm is bad, the structure is bad, or the design is wrong. Therefore, at the beginning of product development, software performance issues must be considered. [3]
5. Stress: For multiple users, you can consider using stress testing tools. It is recommended to combine stress and performance testing. If there is load balancing, open the monitoring tool on the server side to view the server CPU usage and memory usage. If necessary, you can simulate a large amount of data input, the impact on the hard disk and so on. If necessary, performance optimization must be performed (both software and hardware). The stress tests here are for a few features. [3]
6. Error Recovery (Error Recovery): error handling, page data verification, including sudden power failure, input dirty data, etc. [3]
7. Security: This area is under study. Needless to say firewalls, patch packs, anti-virus software, etc., but it can be considered. After reading some information during the destructive test, I learned that the knowledge and content involved can be written in this book, not a sentence or two, especially some business websites, or money-related, or companies Secret-related webs need to be tested in this area. There is a person specializing in this field in foreign countries called a security consultant who can review the code, make security recommendations, and deal with emergency situations. Specialized in security technology testing. [3]
8. Compatibility: Different browsers and different application versions behave differently when implementing functions, if you test a public website. [3]

IN OTHER LANGUAGES

Was this article helpful? Thanks for the feedback Thanks for the feedback

How can we help? How can we help?