summaryrefslogtreecommitdiff
path: root/doc/developer.texi
diff options
context:
space:
mode:
authorReinhard Tartler <siretart@tauware.de>2013-03-23 08:17:24 +0100
committerReinhard Tartler <siretart@tauware.de>2013-04-05 18:55:11 +0200
commita862c7d3368241e72a465ab944afa38ea62a6640 (patch)
tree8e1ef0f68082a2f27b56858e57e7bc4a9c3ce91b /doc/developer.texi
parent52cd84d4d4e335daf26eb8c8b60c2578b3341b91 (diff)
Integrate lcov/gcov into Libav
The gcov/lcov are a common toolchain for visualizing code coverage with the GNU/Toolchain. The documentation and implementation of this integration was heavily inspired from the blog entry by Mike Melanson: http://multimedia.cx/eggs/using-lcov-with-ffmpeg/
Diffstat (limited to 'doc/developer.texi')
-rw-r--r--doc/developer.texi24
1 files changed, 24 insertions, 0 deletions
diff --git a/doc/developer.texi b/doc/developer.texi
index cde87f1e5d..3d574e4428 100644
--- a/doc/developer.texi
+++ b/doc/developer.texi
@@ -550,6 +550,30 @@ why the expected result changed.
Please refer to @url{fate.html}.
+@subsection Visualizing Test Coverage
+
+The Libav build system allows visualizing the test coverage in an easy
+manner with the coverage tools @code{gcov}/@code{lcov}. This involves
+the following steps:
+
+@enumerate
+@item
+ Configure to compile with instrumentation enabled:
+ @code{configure --toolchain=gcov}.
+@item
+ Run your test case, either manually or via FATE. This can be either
+ the full FATE regression suite, or any arbitrary invocation of any
+ front-end tool provided by Libav, in any combination.
+@item
+ Run @code{make lcov} to generate coverage data in HTML format.
+@item
+ View @code{lcov/index.html} in your preferred HTML viewer.
+@end enumerate
+
+You can use the command @code{make lcov-reset} to reset the coverage
+measurements. You will need to rerun @code{make lcov} after running a
+new test.
+
@anchor{Release process}
@section Release process