Pros vs Cons

Pros
- Testing is thorough with complete code coverage
- White-box testing gives a clear structure to testing with clearly defined rules
- Knowledge of the products internal system allows for small pieces of code to be tested to see if they run as they should, a process known as ‘Unit Testing’. Due to their quick nature, unit tests can be automated
- White-box testing can significantly speed up the testing process
- The Code can be optimised during the process

Cons
- Due to the precise nature, White-box testing is costly
- Testing is often more time consuming and complex
- Automated tests can be neglected if there are continuous changes is in the code
- Testers are required to possess internal knowledge
- Despite its thoroughness, there is still the possibility that sections of code are accidentally missed