<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi,<br>
<br>
I've added support to coverage.py for plugins to support non-Python
files, and I've written a plugin to measure Django templates. I'm
looking for people interested in trying it out in its current
alpha-state.<br>
<br>
If you'd like to try it, the plugin itself is pip installable: pip
install django_coverage_plugin . To run it, add these settings to
your .coveragerc:<tt><br>
</tt>
<blockquote><tt>[run]</tt><br>
<tt># won't be needed eventually</tt><tt><br>
</tt><tt> </tt><tt>timid = True</tt><tt><br>
</tt><tt><br>
plugins =</tt><tt><br>
</tt><tt> django_coverage_plugin</tt><br>
</blockquote>
Then run your tests under coverage as you normally would. It
requires coverage.py>=4.0a2, so it may not work with other
coverage-related tools if you have them, such as coveralls.io. You
will see your templates listed in your coverage report alongside
your Python modules (they have a .html extension but no directory,
that's still to be fixed).<br>
<br>
The technique used to measure the coverage is the same that Dmitry
Trofimov used in dtcov, but integrated into coverage.py, and made
more performant. I'd love to see how well it works in a real
production project. If you want to help me with, feel free to reply
offlist if it's more appropriate.<br>
<br>
BTW, the coverage.py plugin mechanism is designed to be generally
useful for hooking into the collection and reporting phases of
coverage.py, specifically to support non-Python files. I've also
got a plugin for Mako templates, but it needs some fixes from Mako.
If you have non-Python files you'd like to add coverage support for,
let's talk.<br>
<br>
Thanks,<br>
<br>
--Ned.
</body>
</html>