posted on 2024-07-26, 14:06authored byTsong ChenTsong Chen, T. H. Tse, Zhi Quan Zhou
We present an integrated method for program proving, testing, and debugging. Using the concept of metamorphic relations, we select necessary properties for target programs. For programs where global symbolic evaluation can be conducted and the constraint expressions involved can be solved, we can either prove that these necessary conditions for program correctness are satisfied, or identify all inputs that violate the conditions. For other programs, our method can be converted into a symbolic testing approach. Our method extrapolates from the correctness of a program for tested inputs to the correctness of the program for related untested inputs. The method supports automatic debugging through the identification of constraint expressions that reveal failures.
Funding
Metamorphic Testing: An In-Depth Study to Enhance the Failure-Detection Capability of Software Testing Without an Oracle