Supervised learning over test executions as a test oracle
Foivos Tsimpourlas, Ajitha Rajan, Miltiadis Allamanis
Abstract
The challenge of automatically determining the correctness of test executions is referred to as the test oracle problem and is a key remaining issue for automated testing. The paper aims at solving the test oracle problem in a scalable and accurate way. To achieve this, we use supervised learning over test execution traces. We label a small fraction of the execution traces with their verdict of pass or fail. We use the labelled traces to train a neural network (NN) model to learn to distinguish runtime patterns for passing versus failing executions for a given program.
Topics & Concepts
OracleComputer scienceCorrectnessScalabilityTest (biology)Key (lock)Machine learningArtificial neural networkTest caseArtificial intelligenceProgramming languageOperating systemPaleontologyRegression analysisBiologySoftware Testing and Debugging TechniquesSoftware Reliability and Analysis ResearchSoftware Engineering Research