Copyright © 2014 Spyder Project Contributors
Spyder-unittest is a plugin that integrates popular unit test frameworks with Spyder, allowing you to run test suites and view the results in the IDE.
The plugin supports the unittest
module in the Python standard library
as well as the pytest
and nose2
testing frameworks.
Support for pytest
is most complete at the moment.
To install this plugin, you can use either pip
or conda
package managers, as follows:
Using conda (the recommended way!):
conda install spyder-unittest -c conda-forge
Using pip:
pip install spyder-unittest
Note: At the moment it is not possible to use this plugin with the Spyder installers for Windows and macOS. We're working to make that a reality in the future.
The plugin adds an item Run unit tests
to the Run
menu in Spyder.
Click on this to run the unit tests. After you specify the testing framework
and the directory under which the tests are stored, the tests are run.
The Unit testing
window pane (displayed at the top of this file) will pop up
with the results. If you are using pytest
, you can double-click on a test
to view it in the editor.
If you want to run tests in a different directory or switch testing
frameworks, click Configure
in the Options menu (cogwheel icon),
which is located in the upper right corner of the Unit testing
pane.
Bug reports, feature requests and other ideas are more than welcome on the issue tracker. Use the Spyder Google Group or our Gitter Chatroom for general discussion.
Development of the plugin is done at https://github.com/spyder-ide/spyder-unittest .
You can install the development version of the plugin by cloning the git repository
and running pip install .
, possibly with the --editable
flag.
The plugin has the following dependencies:
- spyder (obviously), at least version 4.0
- lxml
- the testing framework that you will be using: pytest and/or nose2
In order to run the tests distributed with this plugin, you need nose2, pytest and pytest-qt. If you use Python 2, you also need mock.
You are very welcome to submit code contributions in the form of pull requests to the issue tracker. GitHub is configured to run pull requests automatically against the test suite and against several automatic style checkers using ciocheck. The style checkers can be rather finicky so you may want to install ciocheck locally and run them before submitting the code.
Everyone is welcome to contribute! The document Contributing to Spyder also applies to the unittest plugin.
We are grateful to the entire Spyder community for their support, without which this plugin and the whole of Spyder would be a lot less awesome.