White-box testing examines internal code structure. Mutation Testing alters code to verify tests catch changes. Fault Injection introduces errors to test system response. Code coverage measures how much code is executed. Specification-based testing uses requirements without code knowledge - it's black-box, not white-box.