A knowledge-based system for regression testing
Taewoon Jeon · 1992
Regression testing is retesting a program to revalidate its correctness after a code change. This thesis centers on how to apply knowledge-based methodologies to extending existing regression testing techniques and tools into more effective supporting environments. For the required knowledge base design, we are using an appropriate model from the concept of frame based systems and truth maintenance systems. Frames represent test-related objects such as test cases, control flow, data flow, and input/output domains. The truth maintenance system is intended to record logical inferences and dependencies among test-related objects (among other, the dependencies denoting how and which objects in one level of abstractions are affected by others in another level due to a code change). Based on the knowledge base, we intend the regression testing system to assist in (1) obtaining information such as achieved test coverage and test cases to be rerun, (2) selecting appropriate tools for running tests and gathering information, and (3) planning the test process for revalidation.