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.
翻译:自动单位测试生成是一种众所周知的方法,旨在减少开发者人工写作测试的努力。先前的研究主要侧重于静态键入式编程语言,如爪哇。但实际上,在过去十年里,动态键入语言的受欢迎程度有了很大的提高。这也意味着需要为这些语言的测试生成提供工具和研究。我们为Python引入了Pynguin,这是一个可扩展的测试生成框架,可生成高代码覆盖的回归测试。Pynguin设计为从业人员容易使用;还允许研究人员根据自己的需要调整它,并允许未来研究。我们在https://youtu.be/UiGrG25Vts0上提供了Pynguin的演示;在https://www.pynguin.e.eu上提供了进一步的信息、文件、工具及其源代码。