OLD | NEW |
| (Empty) |
1 =========== | |
2 coverage.py | |
3 =========== | |
4 | |
5 :history: 20090524T134300, brand new docs. | |
6 :history: 20090613T164000, final touches for 3.0 | |
7 :history: 20090618T195900, minor tweaks | |
8 :history: 20090707T205200, changes for 3.0.1 | |
9 :history: 20090913T084400, new command line syntax | |
10 :history: 20091004T211900, version 3.1 | |
11 :history: 20091127T155100, version 3.2 | |
12 :history: 20091205T161429, version 3.2 for real. | |
13 :history: 20100224T204700, version 3.3 | |
14 :history: 20100306T181500, version 3.3.1 | |
15 :history: 20100725T211700, updated for 3.4. | |
16 :history: 20100820T151500, updated for 3.4b1. | |
17 :history: 20100906T134700, updated for 3.4b2. | |
18 :history: 20100919T163500, updated for 3.4 release. | |
19 :history: 20110213T081200, claim true 3.2 compatibility. | |
20 :history: 20110604T114800, update for 3.5b1 | |
21 :history: 20110629T082300, update for 3.5 | |
22 :history: 20110827T221800, update for 3.5.1b1 | |
23 :history: 20110923T081800, update for 3.5.1 | |
24 :history: 20120429T162100, updated for 3.5.2b1 | |
25 :history: 20120503T233800, updated for 3.5.2 | |
26 :history: 20120929T093500, updated for 3.5.3 | |
27 :history: 20121117T094900, Change from easy_install to pip. | |
28 :history: 20121128T203700, Updated for 3.6b1. | |
29 :history: 20121223T180600, Updated for 3.6b2. | |
30 :history: 20121229T112300, Updated for 3.6b3. | |
31 :history: 20130105T174000, Updated for 3.6 | |
32 | |
33 | |
34 Coverage.py is a tool for measuring code coverage of Python programs. It | |
35 monitors your program, noting which parts of the code have been executed, then | |
36 analyzes the source to identify code that could have been executed but was not. | |
37 | |
38 Coverage measurement is typically used to gauge the effectiveness of tests. It | |
39 can show which parts of your code are being exercised by tests, and which are | |
40 not. | |
41 | |
42 .. ifconfig:: not prerelease | |
43 | |
44 The latest version is coverage.py 3.6, released 5 January 2013. | |
45 It is supported on Python versions 2.3 through 3.3, and PyPy 1.8. | |
46 | |
47 .. ifconfig:: prerelease | |
48 | |
49 The latest version is coverage.py 3.6b3, released 29 December 2012. | |
50 It is supported on Python versions 2.3 through 3.3, and PyPy 1.9. | |
51 **This is a pre-release build. The usual warnings about possible bugs apply
.** | |
52 The latest stable version is coverage.py 3.5.3, `described here`_. | |
53 | |
54 .. _described here: http://nedbatchelder.com/code/coverage | |
55 | |
56 | |
57 Quick start | |
58 ----------- | |
59 | |
60 Getting started is easy: | |
61 | |
62 #. Install coverage.py from the `coverage page on the Python Package Index`_, | |
63 or by using "pip install coverage". For a few more details, see | |
64 :ref:`install`. | |
65 | |
66 #. Use ``coverage run`` to run your program and gather data: | |
67 | |
68 .. code-block:: console | |
69 | |
70 $ coverage run my_program.py arg1 arg2 | |
71 blah blah ..your program's output.. blah blah | |
72 | |
73 #. Use ``coverage report`` to report on the results: | |
74 | |
75 .. code-block:: console | |
76 | |
77 $ coverage report -m | |
78 Name Stmts Miss Cover Missing | |
79 ------------------------------------------------------- | |
80 my_program 20 4 80% 33-35, 39 | |
81 my_other_module 56 6 89% 17-23 | |
82 ------------------------------------------------------- | |
83 TOTAL 76 10 87% | |
84 | |
85 #. For a nicer presentation, use ``coverage html`` to get annotated HTML | |
86 listings detailing missed lines: | |
87 | |
88 .. code-block:: console | |
89 | |
90 $ coverage html | |
91 | |
92 .. ifconfig:: not prerelease | |
93 | |
94 Then visit htmlcov/index.html in your browser, to see a | |
95 `report like this`_. | |
96 | |
97 .. ifconfig:: prerelease | |
98 | |
99 Then visit htmlcov/index.html in your browser, to see a | |
100 `report like this one`_. | |
101 | |
102 .. _coverage page on the Python Package Index: http://pypi.python.org/pypi/cover
age | |
103 .. _report like this: /code/coverage/sample_html/index.html | |
104 .. _report like this one: /code/coverage/sample_html_beta/index.html | |
105 | |
106 | |
107 Using coverage.py | |
108 ----------------- | |
109 | |
110 There are a few different ways to use coverage.py. The simplest is the | |
111 :ref:`command line <cmd>`, which lets you run your program and see the results. | |
112 If you need more control over how your project is measured, you can use the | |
113 :ref:`API <api>`. | |
114 | |
115 Some test runners provide coverage integration to make it easy to use coverage | |
116 while running tests. For example, `nose`_ has a `cover plug-in`_. | |
117 | |
118 You can fine-tune coverage's view of your code by directing it to ignore parts | |
119 that you know aren't interesting. See :ref:`source` and :ref:`excluding` for | |
120 details. | |
121 | |
122 .. _nose: http://somethingaboutorange.com/mrl/projects/nose | |
123 .. _cover plug-in: https://nose.readthedocs.org/en/latest/plugins/cover.html | |
124 | |
125 | |
126 .. _contact: | |
127 | |
128 Getting help | |
129 ------------ | |
130 | |
131 If the :ref:`FAQ <faq>` doesn't answer your question, you can discuss | |
132 coverage.py or get help using it on the `Testing In Python`_ mailing list. | |
133 | |
134 .. _Testing In Python: http://lists.idyll.org/listinfo/testing-in-python | |
135 | |
136 Bug reports are gladly accepted at the `Bitbucket issue tracker`_. | |
137 Bitbucket also hosts the `code repository`_. | |
138 | |
139 .. _Bitbucket issue tracker: http://bitbucket.org/ned/coveragepy/issues | |
140 .. _code repository: http://bitbucket.org/ned/coveragepy | |
141 | |
142 `I can be reached`_ in a number of ways. I'm happy to answer questions about | |
143 using coverage.py. I'm also available hourly for consultation or custom | |
144 development. | |
145 | |
146 .. _I can be reached: http://nedbatchelder.com/site/aboutned.html | |
147 | |
148 | |
149 | |
150 More information | |
151 ---------------- | |
152 | |
153 .. toctree:: | |
154 :maxdepth: 1 | |
155 | |
156 install | |
157 cmd | |
158 config | |
159 source | |
160 excluding | |
161 branch | |
162 subprocess | |
163 api | |
164 contributing | |
165 trouble | |
166 faq | |
167 changes | |
168 | |
169 | |
170 .. How it works | |
171 .. .coverage file format | |
OLD | NEW |