pytest-inline: An Inline Testing Tool for Python

Autor: Liu, Yu, Thurston, Zachary, Han, Alan, Nie, Pengyu, Gligoric, Milos, Legunsen, Owolabi
Rok vydání: 2023
Předmět:
Druh dokumentu: Working Paper
Popis: We present pytest-inline, the first inline testing framework for Python. We recently proposed inline tests to make it easier to test individual program statements. But, there is no framework-level support for developers to write inline tests in Python. To fill this gap, we design and implement pytest-inline as a plugin for pytest, the most popular Python testing framework. Using pytest-inline, a developer can write an inline test by assigning test inputs to variables in a target statement and specifying the expected test output. Then, pytest-inline runs each inline test and fails if the target statement's output does not match the expected output. In this paper, we describe our design of pytest-inline, the testing features that it provides, and the intended use cases. Our evaluation on inline tests that we wrote for 80 target statements from 31 open-source Python projects shows that using pytest-inline incurs negligible overhead, at 0.012x. pytest-inline is integrated into the pytest-dev organization, and a video demo is at https://www.youtube.com/watch?v=pZgiAxR_uJg.
Comment: Accepted as a tool demo paper at ICSE DEMO 2023
Databáze: arXiv