Strategic Automated Testing Using Inferred Program Properties for Enhanced Software Reliability
This dissertation explores the integration of strategic automated testing methodologies to enhance software reliability through inferred program properties. By leveraging formal methods, the research aims to generate, execute, and inspect tests efficiently while addressing practical challenges in the industry. The focus is on optimizing test generation, detection of redundant tests, and selecting behavior-exposing tests, ultimately aligning testing efforts with cost, time, and quality goals. The findings contribute to better approaches in automated testing, significantly impacting software development practices.
Strategic Automated Testing Using Inferred Program Properties for Enhanced Software Reliability
E N D
Presentation Transcript
Strategic Automated Testing with Inferred Program Properties cost cost cost cost Tao Xie (taoxie@cs.washington.edu) Advisor: David NotkinCSEDept., University of Washington, Seattle • Software testing is mainly used to find bugs or increase confidence • Automated testing tools are increasingly in need to fill holes left over by manual/no tests • Automated testing needs to be a strategic approach to meet benefit, cost, schedule, and quality constraints • My dissertation is about exploiting inferred program properties to do strategic automated testing GenerationExecutionInspection • Practical problems • Strategic formal-method-based solutions • Industry impact Inspection Test generation • Detect redundant tests for Java code [ASE 04] • Detect redundant tests for AspectJ code [UWCSE-041003] • Generate tests based on concrete states [UWCSE-040105] • Generate tests based on symbolic states [UWCSE-041002] State-equivalence properties Test abstraction State-equivalence properties • Extract observer abstractions [ICFEM 04] • Extract sliced object state machines [SAVCBS 04] program properties State-equivalence properties Axiomatic properties Statisticalalgebraic properties Test selection Regression testing infer • Select new-behavior-exposing tests based on operational violations [ASE 03] • Select common and special tests based on statistical algebraic abstractions [UWCSE-040803] [OOPSLA Companion 04] • Check inside the black box: compare value spectra from two versions [ICSM 04] Program Test 1 Test 1 Test 1 Test 1 Feedback loop [FATES 03] GenerationInspection Inspection http://www.cs.washington.edu/homes/taoxie/publications.htm