Litcius/Paper detail

TOGA

Elizabeth Dinella, Gabriel Ryan, Todd Mytkowicz, Shuvendu K. Lahiri

2022Proceedings of the 44th International Conference on Software Engineering92 citationsDOIOpen Access PDF

Abstract

Testing is widely recognized as an important stage of the software development lifecycle. Effective software testing can provide benefits such as bug finding, preventing regressions, and documentation. In terms of documentation, unit tests express a unit's intended functionality, as conceived by the developer. A test oracle, typically expressed as an condition, documents the intended behavior of a unit under a given test prefix. Synthesizing a functional test oracle is a challenging problem, as it must capture the intended functionality rather than the implemented functionality.

Topics & Concepts

OracleComputer scienceDocumentationUnit testingRegression testingTest caseSoftware bugInferenceSoftwareContext (archaeology)Software engineeringData miningProgramming languageMachine learningArtificial intelligenceSoftware developmentSoftware constructionRegression analysisPaleontologyBiologySoftware Testing and Debugging TechniquesSoftware Engineering ResearchSoftware Reliability and Analysis Research