/usr/share/doc/python-pytest-doc/html/nose.html is in python-pytest-doc 3.0.6-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Running tests written for nose — pytest documentation</title>
<link rel="stylesheet" href="_static/flasky.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
VERSION: '3.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="shortcut icon" href="_static/pytest1favi.ico"/>
<link rel="search" title="Search" href="search.html" />
<link rel="top" title="pytest documentation" href="contents.html" />
<link rel="next" title="classic xunit-style setup" href="xunit_setup.html" />
<link rel="prev" title="Support for unittest.TestCase / Integration of fixtures" href="unittest.html" />
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9">
</head>
<body role="document">
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="xunit_setup.html" title="classic xunit-style setup"
accesskey="N">next</a></li>
<li class="right" >
<a href="unittest.html" title="Support for unittest.TestCase / Integration of fixtures"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="contents.html">pytest-3.0</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="running-tests-written-for-nose">
<span id="noseintegration"></span><h1>Running tests written for nose<a class="headerlink" href="#running-tests-written-for-nose" title="Permalink to this headline">¶</a></h1>
<p><code class="docutils literal"><span class="pre">pytest</span></code> has basic support for running tests written for <a class="reference external" href="https://nose.readthedocs.io/en/latest/">nose</a>.</p>
<div class="section" id="usage">
<span id="nosestyle"></span><h2>Usage<a class="headerlink" href="#usage" title="Permalink to this headline">¶</a></h2>
<p>After <a class="reference internal" href="getting-started.html#installation"><span class="std std-ref">Installation</span></a> type:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">python</span> <span class="n">setup</span><span class="o">.</span><span class="n">py</span> <span class="n">develop</span> <span class="c1"># make sure tests can import our package</span>
<span class="n">pytest</span> <span class="c1"># instead of 'nosetests'</span>
</pre></div>
</div>
<p>and you should be able to run your nose style tests and
make use of pytest’s capabilities.</p>
</div>
<div class="section" id="supported-nose-idioms">
<h2>Supported nose Idioms<a class="headerlink" href="#supported-nose-idioms" title="Permalink to this headline">¶</a></h2>
<ul class="simple">
<li>setup and teardown at module/class/method level</li>
<li>SkipTest exceptions and markers</li>
<li>setup/teardown decorators</li>
<li><code class="docutils literal"><span class="pre">yield</span></code>-based tests and their setup</li>
<li><code class="docutils literal"><span class="pre">__test__</span></code> attribute on modules/classes/functions</li>
<li>general usage of nose utilities</li>
</ul>
</div>
<div class="section" id="unsupported-idioms-known-issues">
<h2>Unsupported idioms / known issues<a class="headerlink" href="#unsupported-idioms-known-issues" title="Permalink to this headline">¶</a></h2>
<ul class="simple">
<li>unittest-style <code class="docutils literal"><span class="pre">setUp,</span> <span class="pre">tearDown,</span> <span class="pre">setUpClass,</span> <span class="pre">tearDownClass</span></code>
are recognized only on <code class="docutils literal"><span class="pre">unittest.TestCase</span></code> classes but not
on plain classes. <code class="docutils literal"><span class="pre">nose</span></code> supports these methods also on plain
classes but pytest deliberately does not. As nose and pytest already
both support <code class="docutils literal"><span class="pre">setup_class,</span> <span class="pre">teardown_class,</span> <span class="pre">setup_method,</span> <span class="pre">teardown_method</span></code>
it doesn’t seem useful to duplicate the unittest-API like nose does.
If you however rather think pytest should support the unittest-spelling on
plain classes please post <a class="reference external" href="https://github.com/pytest-dev/pytest/issues/377/">to this issue</a>.</li>
<li>nose imports test modules with the same import path (e.g.
<code class="docutils literal"><span class="pre">tests.test_mod</span></code>) but different file system paths
(e.g. <code class="docutils literal"><span class="pre">tests/test_mode.py</span></code> and <code class="docutils literal"><span class="pre">other/tests/test_mode.py</span></code>)
by extending sys.path/import semantics. pytest does not do that
but there is discussion in <a class="reference external" href="https://github.com/pytest-dev/pytest/issues/268">issue268</a> for adding some support. Note that
<a class="reference external" href="https://nose2.readthedocs.io/en/latest/differences.html#test-discovery-and-loading">nose2 choose to avoid this sys.path/import hackery</a>.</li>
<li>nose-style doctests are not collected and executed correctly,
also doctest fixtures don’t work.</li>
<li>no nose-configuration is recognized.</li>
<li><code class="docutils literal"><span class="pre">yield</span></code>-based methods don’t support <code class="docutils literal"><span class="pre">setup</span></code> properly because
the <code class="docutils literal"><span class="pre">setup</span></code> method is always called in the same class instance.
There are no plans to fix this currently because <code class="docutils literal"><span class="pre">yield</span></code>-tests
are deprecated in pytest 3.0, with <code class="docutils literal"><span class="pre">pytest.mark.parametrize</span></code>
being the recommended alternative.</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="contents.html">
<img class="logo" src="_static/pytest1.png" alt="Logo"/>
</a></p><h3><a href="contents.html">Table Of Contents</a></h3>
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="contents.html">Contents</a></li>
<li><a href="getting-started.html">Install</a></li>
<li><a href="example/index.html">Examples</a></li>
<li><a href="customize.html">Customize</a></li>
<li><a href="contact.html">Contact</a></li>
<li><a href="talks.html">Talks/Posts</a></li>
<li><a href="changelog.html">Changelog</a></li>
<li><a href="license.html">License</a></li>
</ul>
<hr>
<ul>
<li><a class="reference internal" href="#">Running tests written for nose</a><ul>
<li><a class="reference internal" href="#usage">Usage</a></li>
<li><a class="reference internal" href="#supported-nose-idioms">Supported nose Idioms</a></li>
<li><a class="reference internal" href="#unsupported-idioms-known-issues">Unsupported idioms / known issues</a></li>
</ul>
</li>
</ul>
<h3>Related Topics</h3>
<ul>
<li><a href="contents.html">Documentation overview</a><ul>
<li>Previous: <a href="unittest.html" title="previous chapter">Support for unittest.TestCase / Integration of fixtures</a></li>
<li>Next: <a href="xunit_setup.html" title="next chapter">classic xunit-style setup</a></li>
</ul></li>
</ul><h3>Useful Links</h3>
<ul>
<li><a href="index.html">The pytest Website</a></li>
<li><a href="contributing.html">Contribution Guide</a></li>
<li><a href="https://pypi.python.org/pypi/pytest">pytest @ PyPI</a></li>
<li><a href="https://github.com/pytest-dev/pytest/">pytest @ GitHub</a></li>
<li><a href="http://plugincompat.herokuapp.com/">3rd party plugins</a></li>
<li><a href="https://github.com/pytest-dev/pytest/issues">Issue Tracker</a></li>
<li><a href="https://media.readthedocs.org/pdf/pytest/latest/pytest.pdf">PDF Documentation</a>
</ul>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<div><input type="text" name="q" /></div>
<div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
© Copyright 2017, holger krekel and pytest-dev team.
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a>.
</div>
</body>
</html>
|