Bachelor Thesis BCLR-2021-12

BibliographyBareiß, Patrick: Extracting Metamorphic Test Oracles from Natural Language Documentation.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Bachelor Thesis No. 12 (2021).
61 pages, english.
Abstract

Metamorphic testing is a useful technique to test the behavior of methods. Instead of testing for specific outputs, metamorphic testing tests for relationships in outputs for two di erent inputs. However these relationships are rarely provided, greatly decreasing their usage. Nonetheless oftentimes they can be found informally described in natural language documentation. Our approach extracts the informally described metamorphic relations and turns them into a format usable directly for test generation. It achieves this by seeing all possible relations as hypotheses and uses the documentation text as the premise to identify the ones that are actually correct. When running our tool on four popular Java libraries, we achieve a precision of 92% and a recall of 41%. Generating tests using the extracted oracles reveals a previously unknown bug in the documentation of the Guava library.

Department(s)University of Stuttgart, Institute of Software Technology, Software Lab - Program Analysis
Superviser(s)Pradel, Prof. Michael
Entry dateJune 2, 2021
   Publ. Computer Science