If you’re doing QA, you’ll eventually run across this term and wonder what it really means. Black box testing is easy to guess, but what does it really mean to do white box testing?

Since it’s the most widespread style of testing in use, even if you don’t know exactly what white box means, you’re probably doing it.

White box testing is when a programmer writes tests for his or her own code.

Unit testing, integration testing, regression testing, and coverage tests all can fall into this category. White box testers have full access to the source code and understand how the software has been created. When you’re a white box tester, you’re familiar with the inner workings of the product. No matter how hard you try to do otherwise, you test the software based on that knowledge, and with the same assumptions made by the code itself.

White box testing isn’t bad or inferior. It serves a specific and useful function: verifying that a part of the system does exactly what the programmer or tester expects it to do. Without this kind of testing, you have no way of knowing that your upload form works. If you change one line of code months later, the whole system might break without you knowing it – unless you’ve done your white box unit tests.

Know that your app’s features and functions are working: that’s why white box testing methods are beloved and widely adopted.