A black box is opaque and non transparent. It is not lucid and it is hard to see as well as understand what is inside it. Similarly, black box testing in product development is a mission critical activity where it is the responsibility of the tester to understand the user requirement. The tester cannot see how the codes are operating inside the product. He provides an input and the output comes out, for him to asses its usability.
While white box testing is usually done in-house by developers, black box testing is ideal under system testers or an independent verification validation team.
The motive of black box testing is to see that the product behaves efficiently in normal and abnormal situations. The tester has to think of real time situations in detail for the success of the product. “It is impossible to test a product under all situations. The power of black box tester lies in solving the most critical problems in shortest time possible. For example, in a healthcare product, a tester may not find all the bugs but he should definitely find the bugs that are life threatening,” says Vipul Kocher, Co Founder at Pure Testing, an India based software and product testing company.
Particularly in black box testing, the right thought process is very important, otherwise you might be spending a long time in the wrong area. The tester needs to be more intelligent than the developer who created the product. A very good imagination and analysis is expected from the tester to think of the scenarios which the developer may not have thought of.
Pradip Bhowmick, Executive Director with PricewaterhouseCoopers, India explains that the phenomenon of black box testing should be introduced early in product life cycle. This would help the tester mature as the product also develops simultaneously. He should develop all the scenarios in advance and keep modifying it for the future. This would save time to a great extent.
There needs to be independence between the developer and tester for an unbiased review. If the company can create a Chinese wall within the OPD company between the testing team and developers, well and good. Otherwise, the ideal situation and current trend is to hire a company which specializes in testing. After all, you cannot have a fox guard a hen-house.
“Trust but verify” should be the mantra of the testers, according to Vipul. The more curious the testing team is, the better it is. Its good to trust the developer but verification should be unbiased. Tester needs to understand the profile of the end user.
The Current Scenario and Future Trends
Today, every sector uses black box testing and it is synonymous with “independent testing”. Black box is an integral part of the CMMI (Capability Maturity Model Integration) and is used across all sectors such as FMCG, Retail, Aviation, and is of paramount importance in BFSI.
“With the spread of Agile methodology, it was feared that black box testing would become extinct,” says Vipul. This was because only white box had compatibility with Agile methodologies. The developers also claimed that there is no need for Black box testing separately. However, today agile is active in black box as well and is gaining importance constantly.
The hot spot in black box testing is reusability of test cases. Conventionally, creativity and reusability don’t go hand in hand. However, the tester needs to be creative enough to create reusability. Reusability cannot be done keeping in mind the nitty-gritty's. Reusability helps in 30 to 40 percent decrease in testing effort and cost. At the same time it is also time saving to the customer, explains Pradip.
Black box testing is here to stay but testers should make more efforts to learn programming for efficient work. To talk to the developer, tester needs to speak the language of the developer.