Software testing is broadly divided into three major software testing techniques, Black box testing, White box testing, and Gray box testing.
Black box testing technique is a testing strategy based solely on requirements and specifications. Black box testing requires no knowledge of internal paths, structures, or implementation of the software being tested.
White box testing technique is a testing strategy based on internal paths, code structures, and implementation of the software being tested. White box testing generally requires detailed programming skills.
There is one more type of testing called gray box testing technique . In this, we look into the “box” being tested just long enough to understand how it has been implemented. Then we close up the box and use our knowledge to choose more effective black box tests.
|#||Black Box Testing||White Box Testing|
|1||Black box testing is the Software testing method which is used to test the software without knowing the internal structure of code or program.||White box testing is the software testing method in which internal structure is being known to the tester who is going to test the software.|
|2||This type of testing is carried out by testers.||Generally, this type of testing is carried out by software developers.|
|3||Implementation Knowledge is not required to carry out Black Box Testing.||Implementation Knowledge is required to carry out White Box Testing.|
|4||Programming Knowledge is not required to carry out Black Box Testing.||Programming Knowledge is required to carry out White Box Testing.|
|5||Testing is applicable to higher levels of testing like System Testing, Acceptance testing.||Testing is applicable on the lower level of testing like Unit Testing, Integration testing.|
|6||Black box testing means functional test or external testing.||White box testing means structural test or interior testing.|
|7||In Black Box testing is primarily concentrate on the functionality of the system under test.||In White Box testing is primarily concentrate on the testing of the program code of the system under test like code structure, branches, conditions, loops etc.|
|8||The main aim of this testing to check on what functionality is performing by the system under test.||The main aim of White Box testing to check on how System is performing.|
|9||Black Box testing can be started based on Requirement Specifications documents.||White Box testing can be started based on Detail Design documents.|
|10||The Functional testing, Behavior testing, Close box testing is carried out under Black Box testing, so there is no required of the programming knowledge.||The Structural testing, Logic testing, Path testing, Loop testing, Code coverage testing, Open box testing is carried out under White Box testing, so there is compulsory to know about programming knowledge.|
black box testing technique is the most popular technique as it simulate the end user scenarios.