test_ok2/README.rst

110 lines
3.3 KiB
ReStructuredText
Raw Normal View History

.. image:: http://docs.pytest.org/en/latest/_static/pytest1.png
:target: http://docs.pytest.org
:align: center
:alt: pytest
2015-06-16 05:28:31 +08:00
------
2015-06-16 05:28:31 +08:00
2015-12-10 07:01:36 +08:00
.. image:: https://img.shields.io/pypi/v/pytest.svg
2017-04-28 23:51:40 +08:00
:target: https://pypi.python.org/pypi/pytest
.. image:: https://anaconda.org/conda-forge/pytest/badges/version.svg
:target: https://anaconda.org/conda-forge/pytest
.. image:: https://img.shields.io/pypi/pyversions/pytest.svg
2017-04-28 23:51:40 +08:00
:target: https://pypi.python.org/pypi/pytest
2015-12-10 07:01:36 +08:00
.. image:: https://img.shields.io/coveralls/pytest-dev/pytest/master.svg
2017-04-28 23:51:40 +08:00
:target: https://coveralls.io/r/pytest-dev/pytest
2015-06-16 06:16:59 +08:00
.. image:: https://travis-ci.org/pytest-dev/pytest.svg?branch=master
:target: https://travis-ci.org/pytest-dev/pytest
2017-04-28 23:51:40 +08:00
2015-06-16 09:28:12 +08:00
.. image:: https://ci.appveyor.com/api/projects/status/mrgbjaua7t33pg6b?svg=true
:target: https://ci.appveyor.com/project/pytestbot/pytest
2013-10-02 18:09:19 +08:00
The ``pytest`` framework makes it easy to write small tests, yet
scales to support complex functional testing for applications and libraries.
2013-10-24 21:08:50 +08:00
An example of a simple test:
2013-10-02 18:09:19 +08:00
.. code-block:: python
# content of test_sample.py
def inc(x):
return x + 1
def test_answer():
assert inc(3) == 5
To execute it::
$ pytest
2017-04-28 23:51:40 +08:00
============================= test session starts =============================
collected 1 items
test_sample.py F
================================== FAILURES ===================================
_________________________________ test_answer _________________________________
def test_answer():
> assert inc(3) == 5
E assert 4 == 5
E + where 4 = inc(3)
test_sample.py:5: AssertionError
========================== 1 failed in 0.04 seconds ===========================
Due to ``pytest``'s detailed assertion introspection, only plain ``assert`` statements are used. See `getting-started <http://docs.pytest.org/en/latest/getting-started.html#our-first-test-run>`_ for more examples.
2013-10-24 21:08:50 +08:00
2015-06-16 05:28:31 +08:00
Features
--------
- Detailed info on failing `assert statements <http://docs.pytest.org/en/latest/assert.html>`_ (no need to remember ``self.assert*`` names);
- `Auto-discovery
<http://docs.pytest.org/en/latest/goodpractices.html#python-test-discovery>`_
of test modules and functions;
- `Modular fixtures <http://docs.pytest.org/en/latest/fixture.html>`_ for
managing small or parametrized long-lived test resources;
2012-11-20 21:24:26 +08:00
- Can run `unittest <http://docs.pytest.org/en/latest/unittest.html>`_ (or trial),
`nose <http://docs.pytest.org/en/latest/nose.html>`_ test suites out of the box;
2012-11-20 21:24:26 +08:00
- Python2.6+, Python3.3+, PyPy-2.3, Jython-2.5 (untested);
2015-06-16 05:28:31 +08:00
- Rich plugin architecture, with over 315+ `external plugins <http://plugincompat.herokuapp.com>`_ and thriving community;
Documentation
-------------
2012-11-20 21:24:26 +08:00
For full documentation, including installation, tutorials and PDF documents, please see http://docs.pytest.org.
2012-11-20 21:24:26 +08:00
Bugs/Requests
-------------
2012-11-20 21:24:26 +08:00
2015-12-29 04:55:20 +08:00
Please use the `GitHub issue tracker <https://github.com/pytest-dev/pytest/issues>`_ to submit bugs or request features.
2012-11-20 21:24:26 +08:00
Changelog
---------
2012-11-20 21:24:26 +08:00
2016-11-11 22:56:07 +08:00
Consult the `Changelog <http://docs.pytest.org/en/latest/changelog.html>`__ page for fixes and enhancements of each version.
2013-07-24 18:14:53 +08:00
License
-------
2013-07-24 18:14:53 +08:00
Copyright Holger Krekel and others, 2004-2017.
Distributed under the terms of the `MIT`_ license, pytest is free and open source software.
.. _`MIT`: https://github.com/pytest-dev/pytest/blob/master/LICENSE