Geometric Theory for Program Testing
Bernhard Moller, Tony Hoare, Zhe Hou, Jin Song Dong

TL;DR
This paper introduces a geometric theory for program testing that integrates formal verification methods into a comprehensive testing environment, aiding error detection and correction through visual causal diagrams.
Contribution
It presents a novel geometric framework for program testing, including an automated error localization and correction tool using visual causal chain diagrams.
Findings
Automated error localization in testing process
Visual causal diagrams assist in debugging
Tool supports program modification for error removal
Abstract
Formal methods for verification of programs are extended to testing of programs. Their combination is intended to lead to benefits in reliable program development, testing, and evolution. Our geometric theory of testing is intended to serve as the specification of a testing environment, included as the last stage of a toolchain that assists professional programmers, amateurs, and students of Computer Science. The testing environment includes an automated algorithm which locates errors in a test that has been run, and assists in correcting them. It does this by displaying, on a monitor screen, a stick diagram of causal chains in the execution of the program under test. The diagram can then be navigated backwards in the familiar style of a satnav following roads on a map. This will reveal selections of places at which the program should be modified to remove the error.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Teaching and Learning Programming · Advanced Malware Detection Techniques
