OLYMPIADS IN INFORMATICS, 2015, Vol. 9, pp. 75 - 88
© IOI, Vilnius University
ISSN 1822-7732
DOI: 10.15388/ioi.2015.07
Metamorphic Testing and DSL for Test Cases & Checker Generators
Ryan Ignatius HADIWIJAYA, M. M. Inggriani LIEM
Data and Software Engineering Research, School of Electrical Engineering and Informatics
Institut Teknologi Bandung
e-mail: ryan.ign54@gmail.com, inge@informatika.org
Abstract
In programming competition, a problem setter must prepare a task description, program solution, test cases and sometimes a checker. Test cases should be able to capture all possible cases; therefore, its preparation is time-consuming. Metamorphic Testing (MT) is a property-based testing method where relationships are defined between input and output to alleviate a test oracle problem. The success of MT relies on the existence of a Metamorphic Relation which is comprised of two interrelated relations: the test-case relation and the test-result relation. MR can be used for automated test-case generation and verification of results. In this research, we defined a Domain Specific Language (DSL) to describe metamorphic relations that will be used for test case and checker generation of programming tasks. Our method has been tested for tasks with Knapsack, Greedy, and Dynamic Programming solutions, and it has been proven, reliable, reusable and more systematic.
Keywords:
test case generation, programming task checker, programming competition, Knapsack problem, Greedy problem, metamorphic testing.
To preview full
article text in PDF format click here
You
could obtain free Acrobat Reader from Adobe
Copyright © International Olympiads in Informatics, Vilnius University Institute of Mathematics and Informatics, 2015