SEFeb 10, 2022

Pynguin: Automated Unit Test Generation for Python

arXiv:2202.05218v1150 citations
Originality Synthesis-oriented
AI Analysis

This addresses the problem of reducing manual testing effort for developers in Python, a popular dynamically typed language, but it is incremental as it adapts existing methodologies to a new language context.

The authors tackled the lack of automated unit test generation tools for dynamically typed languages by introducing Pynguin, a framework for Python that generates regression tests with high code coverage, making it usable for practitioners and extensible for researchers.

Automated unit test generation is a well-known methodology aiming to reduce the developers' effort of writing tests manually. Prior research focused mainly on statically typed programming languages like Java. In practice, however, dynamically typed languages have received a huge gain in popularity over the last decade. This introduces the need for tools and research on test generation for these languages, too. We introduce Pynguin, an extendable test-generation framework for Python, which generates regression tests with high code coverage. Pynguin is designed to be easily usable by practitioners; it is also extensible to allow researchers to adapt it for their needs and to enable future research. We provide a demo of Pynguin at https://youtu.be/UiGrG25Vts0; further information, documentation, the tool, and its source code are available at https://www.pynguin.eu.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes