Do white box tester only test code coverage, branching condition, looping conditions or do they also perform some coding on the project?

What are the skills needed to become an expert white box tester? How are they different from a grey box tester or automation engineer?

3 Answers 3


A white box tester openly reviews the source code.

A grey box tester will typically manually verify that the code functions correctly and then review the source code.

Automation engineer writes code that tests the code.

Often times a person can perform all 3 (I currently do).

Typically a white/grey box tester will assist in the writing of the code but, depending on the organization, should not check in code. Their code should be more or less suggestions to developers. By doing this it reduces the conflict of interest in testing the code you wrote.

The major benefits to a white/grey box tester is the extremely in depth understanding of the project as a whole that the tester will obtain. The amount of time reduced by having a white or grey box tester review defects can drastically change the pace of the development process as well. Often times these testers will have a much better understanding of the AUT than anyone else and can find the root cause of the defect a lot easier.

The skillset needed .....

  • Curiosity
  • Development Language(s)
  • Communication (Both verbal and written)
  • Ability to interpret code
  • Ability to spot a minute error in code without execution

And many many more.

As an example of a benefit to a white box tester, a few weeks ago we made a change to our source code. I was reviewing the source and realized that a variable was never being used after being declared and a function called to set it. The function to set it was quite resource intensive, the developer did not realize that this was no longer necessary for anything in the code. The declaration and set was removed and that segment of code's performance was increased drastically. Without a review of the source code it would have been impossible to detect this since the variable literally was only set and nothing happened.

This happens more than you'd like to imagine.


As for me - there no such role as "white box tester". It should be a programmer, who create and maintain unit tests over own code changes. If project developed in TDD model - tests and code developed by same person.


Virtually anyone can configure a Jenkins job to measure code coverage. An expert white box tester is a strong developer with a strong interest in testing. Whether they write code for the project depends on the organization.

I have no idea what "grey box" is supposed to mean.

Most people seem to define Automation Engineer to mean someone who can use Selenium, but there is a lot of automation work that has nothing to do with web browsers or user interfaces. In general an automation engineer is someone who writes software that helps test other software, which works out to be the same skill set as a white box tester.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.