use pytest instead of nose for automated tests #204
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR switches pvlib from the nose testing framework to the pytest framework. I needed to learn pytest for another project, so pvlib is my pytest test. After a short learning curve, I've come to like Pytest a lot. Pytest seems much more powerful than nose. Also, nose is no longer maintained.
Another nice thing about pytest is that you can install the pytest-xdist plugin and run your tests in parallel across multiple cpu cores. My 4 core machine runs
py.test pvlib
in 46 seconds andpy.test pvlib -n 4
in 19 seconds. This is more important for local testing since the CI builds are mostly limited by the bandwidth of those services.I'll let this sit for a few days and then merge if there are no objections.