kevlened / pytest-parallel

A pytest plugin for parallel and concurrent testing
https://github.com/browsertron/pytest-parallel/issues/104#issuecomment-1293941066
MIT License
313 stars 59 forks source link

The plugin does not fire any setup / tear down events for child threads make it extremely hard to implement extensions #112

Open HardNorth opened 2 years ago

HardNorth commented 2 years ago

The plugin works around calling pytest_runtest_protocol hook of pytest. It does not signal to new forks when test processing starting (lesser problem) and does not signal when test processing ended (greater problem). This makes impossible to gracefully finish other plugins which work during the whole pytest lifecycle. E.G. in my project I can't catch the moment when to upload the last log batch on our server. Thus I constantly lose the tail of logs if my users use pytest-parallel. And I can't also use fully async client by the same reason. I won't get the whole batch of test items because pytest-parallel terminates child process execution instantly.

The situation makes me deprecate using pytest-parallel along with my plugin. Unless pytest-parallel provide necessary options.