An effective testing method for end-user programmers
WEUSE I Proceedings of the first workshop on End-user software engineering
The Effectiveness of T-Way Test Data Generation
SAFECOMP '08 Proceedings of the 27th international conference on Computer Safety, Reliability, and Security
Testing of heuristic methods: a case study of greedy algorithm
CEE-SET'08 Proceedings of the Third IFIP TC 2 Central and East European conference on Software engineering techniques
Hi-index | 0.00 |
Symmetries often appear as properties of many artificalsettings. In Program Testing, they can be viewed as propertiesof programs and can be given by the tester to checkthe correctness of the computed outcome. In this paper, weconsider symmetries to be permutation relations betweenprogram executions and use them to automate the testingprocess. We introduce a software testing paradigm calledSymmetric Testing, where automatic test data generation iscoupled with symmetries checking to uncover faults insidethe programs. A practical procedure for checking that aprogram satisfies a given symmetry relation is described.The paradigm makes use of Group theoretic results as aformal basis to minimize the number of outcome comparisonsrequired by the method. This approach appears tobe of particular interest for programs for which neither anoracle, nor any formal specification is available. We implementedSymmetric Testing by using the primitive operationsof the Java unit testing tool Roast [9]. The experimental resultswe got on faulty versions of classical programs of theSoftware Testing community tend to show the effectivenessof the approach.