AmPyfier: Test Amplification in Python

12/21/2021
by   Ebert Schoofs, et al.
0

Test Amplification is a method to extend handwritten tests into a more rigorous test suite covering corner cases in the system under test. Unfortunately, the current state-of-the-art for test amplification heavily relies on program analysis techniques which benefit a lot from explicit type declarations present in statically typed languages like Java and C++. In dynamically typed languages, such type declarations are not available and as a consequence test amplification has yet to find its way to programming languages like Python, Ruby and Javascript. In this paper, we present AmPyfier, a proof-of-concept tool, which brings test amplification to the dynamically typed, interpreted language Python. We evaluated this approach on 7 open-source projects, and found that AmPyfier could successfully strengthen 7 out of 10 test classes (70 for one of the most popular programming languages in use today.

READ FULL TEXT
research
08/12/2021

Small-Amp: Test Amplification in a Dynamically Typed Language

Test amplification is a novel technique which extends a manually created...
research
08/19/2021

Svar: A Tiny C++ Header Brings Unified Interface for Multiple programming Languages

There are numerous types of programming languages developed in the last ...
research
02/14/2020

Lightweight Lexical Test Prioritization for Immediate Feedback

The practice of unit testing enables programmers to obtain automated fee...
research
05/07/2021

NoCFG: A Lightweight Approach for Sound Call Graph Approximation

Interprocedural analysis refers to gathering information about the entir...
research
08/04/2017

Scoped Extension Methods in Dynamically-Typed Languages

Context. An extension method is a method declared in a package other tha...
research
07/28/2020

Automated Unit Test Generation for Python

Automated unit test generation is an established research field, and mat...
research
08/10/2021

PyNose: A Test Smell Detector For Python

Similarly to production code, code smells also occur in test code, where...

Please sign up or login with your details

Forgot password? Click here to reset