Development Environment / pytest
pytest
is not currently used for testing but may be used in the future.
This documentation is retained in case it is useful in the future.
The pytest
software is a useful tool that provides enhanced unit test features,
which can can also be used for functional testing of Python and other software (in this case StateCU). See also:
pytest has not yet been adopted as the testing tool but may be evaluated. It may also be possible to use a Fortran unit test tool, but Fortran tools seem limited. TSTool can be implemented for testing, similar to the StateMod tests.
This documentation contains the following sections:
Prerequisites
The pytest
software depends on Python and pip
being installed.
Install pytest
To install pytest
for the installed Python 3 environment and assuming pip
is installed, run the following on
Windows (normal command shell window, not MinGW), Cygwin, or Linux. On Windows, run as administrator.
> pip install -U pytest
Collecting pytest
Downloading pytest-3.0.5-py2.py3-none-any.whl (170kB)
100% |################################| 174kB 3.3MB/s
Requirement already up-to-date: colorama; sys_platform == "win32" in c:\program files\python35\lib\site-packages (from pytest)
Collecting py>=1.4.29 (from pytest)
Downloading py-1.4.32-py2.py3-none-any.whl (82kB)
100% |################################| 92kB 5.9MB/s
Installing collected packages: py, pytest
Successfully installed py-1.4.32 pytest-3.0.5
Test that pytest
was installed:
> pytest --version
This is pytest version 3.0.5, imported from c:\program files\python35\lib\site-packages\pytest.py
Additional pytest
Configuration
The following may be useful: improve slow startup.
Writing pytest
Tests
See the Development Tasks / Testing documentation for examples of tests.