| OLD | NEW |
| (Empty) |
| 1 .. _config: | |
| 2 | |
| 3 =================== | |
| 4 Configuration files | |
| 5 =================== | |
| 6 | |
| 7 :history: 20100223T201600, new for 3.3 | |
| 8 :history: 20100725T211700, updated for 3.4. | |
| 9 :history: 20100824T092900, added ``precision``. | |
| 10 :history: 20110604T184400, updated for 3.5. | |
| 11 :history: 20110827T212700, updated for 3.5.1 | |
| 12 | |
| 13 | |
| 14 Coverage.py options can be specified in a configuration file. This makes it | |
| 15 easier to re-run coverage with consistent settings, and also allows for | |
| 16 specification of options that are otherwise only available in the | |
| 17 :ref:`API <api>`. | |
| 18 | |
| 19 Configuration files also make it easier to get coverage testing of spawned | |
| 20 sub-processes. See :ref:`subprocess` for more details. | |
| 21 | |
| 22 The default name for configuration files is ``.coveragerc``, in the same | |
| 23 directory coverage.py is being run in. Most of the settings in the | |
| 24 configuration file are tied to your source code and how it should be | |
| 25 measured, so it should be stored with your source, and checked into | |
| 26 source control, rather than put in your home directory. | |
| 27 | |
| 28 | |
| 29 Syntax | |
| 30 ------ | |
| 31 | |
| 32 A coverage.py configuration file is in classic .ini file format: sections are | |
| 33 introduced by a ``[section]`` header, and contain ``name = value`` entries. | |
| 34 Lines beginning with ``#`` or ``;`` are ignored as comments. | |
| 35 | |
| 36 Strings don't need quotes. Multi-valued strings can be created by indenting | |
| 37 values on multiple lines. | |
| 38 | |
| 39 Boolean values can be specified as ``on``, ``off``, ``true``, ``false``, ``1``, | |
| 40 or ``0`` and are case-insensitive. | |
| 41 | |
| 42 Environment variables can be substituted in by using dollar signs: ``$WORD`` | |
| 43 ``${WORD}`` will be replaced with the value of ``WORD`` in the environment. | |
| 44 A dollar sign can be inserted with ``$$``. Missing environment variables | |
| 45 will result in empty strings with no error. | |
| 46 | |
| 47 Many sections and values correspond roughly to commands and options in | |
| 48 the :ref:`command-line interface <cmd>`. | |
| 49 | |
| 50 Here's a sample configuration file:: | |
| 51 | |
| 52 # .coveragerc to control coverage.py | |
| 53 [run] | |
| 54 branch = True | |
| 55 | |
| 56 [report] | |
| 57 # Regexes for lines to exclude from consideration | |
| 58 exclude_lines = | |
| 59 # Have to re-enable the standard pragma | |
| 60 pragma: no cover | |
| 61 | |
| 62 # Don't complain about missing debug-only code: | |
| 63 def __repr__ | |
| 64 if self\.debug | |
| 65 | |
| 66 # Don't complain if tests don't hit defensive assertion code: | |
| 67 raise AssertionError | |
| 68 raise NotImplementedError | |
| 69 | |
| 70 # Don't complain if non-runnable code isn't run: | |
| 71 if 0: | |
| 72 if __name__ == .__main__.: | |
| 73 | |
| 74 ignore_errors = True | |
| 75 | |
| 76 [html] | |
| 77 directory = coverage_html_report | |
| 78 | |
| 79 | |
| 80 [run] | |
| 81 ----- | |
| 82 | |
| 83 These values are generally used when running product code, though some apply | |
| 84 to more than one command. | |
| 85 | |
| 86 ``branch`` (boolean, default False): whether to measure | |
| 87 :ref:`branch coverage <branch>` in addition to statement coverage. | |
| 88 | |
| 89 ``cover_pylib`` (boolean, default False): whether to measure the Python | |
| 90 standard library. | |
| 91 | |
| 92 ``data_file`` (string, default ".coverage"): the name of the data file to use | |
| 93 for storing or reporting coverage. | |
| 94 | |
| 95 ``include`` (multi-string): a list of filename patterns, the files to include | |
| 96 in measurement or reporting. See :ref:`source` for details. | |
| 97 | |
| 98 ``omit`` (multi-string): a list of filename patterns, the files to leave out | |
| 99 of measurement or reporting. See :ref:`source` for details. | |
| 100 | |
| 101 ``parallel`` (boolean, default False): append the machine name, process | |
| 102 id and random number to the data file name to simplify collecting data from | |
| 103 many processes. See :ref:`cmd_combining` for more information. | |
| 104 | |
| 105 ``source`` (multi-string): a list of packages or directories, the source to | |
| 106 measure during execution. See :ref:`source` for details. | |
| 107 | |
| 108 ``timid`` (boolean, default False): use a simpler but slower trace method. | |
| 109 Try this if you get seemingly impossible results. | |
| 110 | |
| 111 | |
| 112 .. _config_paths: | |
| 113 | |
| 114 [paths] | |
| 115 ------- | |
| 116 | |
| 117 The entries in this section are lists of file paths that should be | |
| 118 considered equivalent when combining data from different machines:: | |
| 119 | |
| 120 [paths] | |
| 121 source = | |
| 122 src/ | |
| 123 /jenkins/build/*/src | |
| 124 c:\myproj\src | |
| 125 | |
| 126 The names of the entries are ignored, you may choose any name that | |
| 127 you like. The value is a lists of strings. When combining data | |
| 128 with the ``combine`` command, two file paths will be combined | |
| 129 if they start with paths from the same list. | |
| 130 | |
| 131 The first value must be an actual file path on the machine where | |
| 132 the reporting will happen, so that source code can be found. | |
| 133 The other values can be file patterns to match against the paths | |
| 134 of collected data. | |
| 135 | |
| 136 See :ref:`cmd_combining` for more information. | |
| 137 | |
| 138 | |
| 139 [report] | |
| 140 -------- | |
| 141 | |
| 142 Values common to many kinds of reporting. | |
| 143 | |
| 144 ``exclude_lines`` (multi-string): a list of regular expressions. Any line of | |
| 145 your source code that matches one of these regexes is excluded from being | |
| 146 reported as missing. More details are in :ref:`excluding`. If you use this | |
| 147 option, you are replacing all the exclude regexes, so you'll need to also | |
| 148 supply the "pragma: no cover" regex if you still want to use it. | |
| 149 | |
| 150 ``ignore_errors`` (boolean, default False): ignore source code that can't be | |
| 151 found. | |
| 152 | |
| 153 ``include`` (multi-string): a list of filename patterns, the files to include | |
| 154 in reporting. See :ref:`source` for details. | |
| 155 | |
| 156 ``omit`` (multi-string): a list of filename patterns, the files to leave out | |
| 157 of reporting. See :ref:`source` for details. | |
| 158 | |
| 159 ``partial_branches`` (multi-string): a list of regular expressions. Any line | |
| 160 of code that matches one of these regexes is excused from being reported as | |
| 161 a partial branch. More details are in :ref:`branch`. If you use this option, | |
| 162 you are replacing all the partial branch regexes so you'll need to also | |
| 163 supply the "pragma: no branch" regex if you still want to use it. | |
| 164 | |
| 165 ``precision`` (integer): the number of digits after the decimal point to | |
| 166 display for reported coverage percentages. The default is 0, displaying | |
| 167 for example "87%". A value of 2 will display percentages like "87.32%". | |
| 168 | |
| 169 ``show_missing`` (boolean, default False): when running a summary report, | |
| 170 show missing lines. See :ref:`cmd_summary` for more information. | |
| 171 | |
| 172 | |
| 173 .. _config_html: | |
| 174 | |
| 175 [html] | |
| 176 ------ | |
| 177 | |
| 178 Values particular to HTML reporting. The values in the ``[report]`` section | |
| 179 also apply to HTML output, where appropriate. | |
| 180 | |
| 181 ``directory`` (string, default "htmlcov"): where to write the HTML report files. | |
| 182 | |
| 183 ``extra_css`` (string): the path to a file of CSS to apply to the HTML report. | |
| 184 The file will be copied into the HTML output directory. Don't name it | |
| 185 "style.css". This CSS is in addition to the CSS normally used, though you can | |
| 186 overwrite as many of the rules as you like. | |
| 187 | |
| 188 ``title`` (string, default "Coverage report"): the title to use for the report. | |
| 189 Note this is text, not HTML. | |
| 190 | |
| 191 | |
| 192 [xml] | |
| 193 ----- | |
| 194 | |
| 195 Values particular to XML reporting. The values in the ``[report]`` section | |
| 196 also apply to XML output, where appropriate. | |
| 197 | |
| 198 ``output`` (string, default "coverage.xml"): where to write the XML report. | |
| OLD | NEW |