-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve start-up time (client) #14
Comments
Out of scope for this is improving the start-up time incurred by using |
#17 will cover the jurigged overhead |
Profiling this, I'm actually seeing the time sink seems to be this:
When I profile the opposite end, the test is much faster, so perhaps there's a bit of dead time in the communication that could be reduced |
This branch experiments with substituting the built in XMLRPC library with Robyn. The performance is nearly identical so its not worth making the switch for that reason alone. https://github.com/JamesHutchison/pytest-hot-reloading/tree/robyn-experiment Without debugging, it looks like it's getting :
I know its possible to get tests to run in a split second (close to that server time), because that is how fast it ran on my hackathon implementation (which used files instead of a web server). I distinctly remember the spinner not being able to complete a full rotation. That said, things are pretty fast so this might be splitting hairs. Of course, the daemon is frequently ran with the debugger, and these times balloon out to where the time savings are more significant and meaningful. Using the debugger seems to add less than half a second. |
* Return instead of exit * Improve client startup * Measure server time and print it * Reduce imports for plugin for client use case * Cache test collection * Add cachetools dependency * Increment version
There appears to be an overhead to running things caused by pytest. This overhead seems to occur prior to running the plugin. If we can jump straight to running the plugin, running tests will be very quick.
The text was updated successfully, but these errors were encountered: