Browse Source

Added make target for test coverage, documented make commands

pull/1896/head
Anton Sarukhanov 9 years ago
parent
commit
5cadd4a348
  1. 2
      .gitignore
  2. 25
      CONTRIBUTING.rst
  3. 5
      Makefile
  4. 2
      test-requirements.txt

2
.gitignore vendored

@ -11,3 +11,5 @@ _mailinglist
.tox .tox
.cache/ .cache/
.idea/ .idea/
.coverage
htmlcov

25
CONTRIBUTING.rst

@ -31,18 +31,12 @@ Submitting patches
- Try to follow `PEP8 <http://legacy.python.org/dev/peps/pep-0008/>`_, but you - Try to follow `PEP8 <http://legacy.python.org/dev/peps/pep-0008/>`_, but you
may ignore the line-length-limit if following it would make the code uglier. may ignore the line-length-limit if following it would make the code uglier.
Getting Started
Running the testsuite ===============
---------------------
You probably want to set up a `virtualenv You probably want to set up a `virtualenv
<https://virtualenv.readthedocs.io/en/latest/index.html>`_. <https://virtualenv.readthedocs.io/en/latest/index.html>`_.
The minimal requirement for running the testsuite is ``py.test``. You can
install it with::
pip install pytest
Clone this repository:: Clone this repository::
git clone https://github.com/pallets/flask.git git clone https://github.com/pallets/flask.git
@ -52,11 +46,21 @@ Install Flask as an editable package using the current source::
cd flask cd flask
pip install --editable . pip install --editable .
Running the testsuite
---------------------
The minimal requirement for running the testsuite is ``pytest``. You can
install it with::
pip install pytest
Then you can run the testsuite with:: Then you can run the testsuite with::
py.test py.test
With only py.test installed, a large part of the testsuite will get skipped **Shortcut**: ``make test`` will ensure ``pytest`` is installed, and run it.
With only pytest installed, a large part of the testsuite will get skipped
though. Whether this is relevant depends on which part of Flask you're working though. Whether this is relevant depends on which part of Flask you're working
on. Travis is set up to run the full testsuite when you submit your pull on. Travis is set up to run the full testsuite when you submit your pull
request anyways. request anyways.
@ -69,6 +73,8 @@ of ``pytest``. You can install it with::
The ``tox`` command will then run all tests against multiple combinations The ``tox`` command will then run all tests against multiple combinations
Python versions and dependency versions. Python versions and dependency versions.
**Shortcut**: ``make tox-test`` will ensure ``tox`` is installed, and run it.
Running test coverage Running test coverage
--------------------- ---------------------
Generating a report of lines that do not have unit test coverage can indicate where Generating a report of lines that do not have unit test coverage can indicate where
@ -87,3 +93,4 @@ Generate a HTML report can be done using this command::
Full docs on ``coverage.py`` are here: https://coverage.readthedocs.io Full docs on ``coverage.py`` are here: https://coverage.readthedocs.io
**Shortcut**: ``make cov`` will ensure ``pytest-cov`` is installed, run it, display the results, *and* save the HTML report.

5
Makefile

@ -7,8 +7,13 @@ test:
FLASK_DEBUG= py.test tests examples FLASK_DEBUG= py.test tests examples
tox-test: tox-test:
pip install -r test-requirements.txt -q
tox tox
cov:
pip install -r test-requirements.txt -q
FLASK_DEBUG= py.test --cov-report term --cov-report html --cov=flask --cov=examples tests examples
audit: audit:
python setup.py audit python setup.py audit

2
test-requirements.txt

@ -1 +1,3 @@
tox
pytest pytest
pytest-cov

Loading…
Cancel
Save