The only way to fully test your software is by writing white box tests. However, writing white box tests by hand is a slow, manual, and complex process. There is a new automated white box testing approach from GenRocket that
GenRocket Blog