Metamorphic Testing
Metamorphic testing checks that the relationship between outputs for related inputs holds — useful when there is no oracle for the exact correct output.
Example: if sin(x) = sin(π − x), then testing sin(x) and sin(π − x) and comparing their results doesn’t require knowing the true value — only that they should be equal. A violation reveals a bug.
Generally used to reveal new errors in systems that lack a test oracle.