diff --git a/org.jacoco.doc/docroot/doc/faq.html b/org.jacoco.doc/docroot/doc/faq.html index 0e910fb03..15be0a8b2 100644 --- a/org.jacoco.doc/docroot/doc/faq.html +++ b/org.jacoco.doc/docroot/doc/faq.html @@ -99,22 +99,22 @@

Why does a class show as not covered although it has been executed?

ids for a detailed discussion.

-

Why are Java interface types not shown in the coverage reports?

+

Why are abstract methods not shown in coverage reports?

- Java interface methods do not contain code, therefore code coverage cannot - be evaluated. Indeed code coverage is recorded for the implementation classes. - The same applies to abstract methods in abstract classes. + Abstract methods do not contain code, therefore code coverage cannot be + evaluated. Indeed code coverage is recorded for subclasses implementing these + methods. The same applies to non-default methods in interfaces.

Can I collect coverage information without stopping the JVM?

- Yes, there are two possible ways: The JaCoCo agent + Yes, there are three possible ways: The JaCoCo agent can be configured for remote control via TCP/IP sockets. This allows to collect execution data at any point in time from a running JVM. The - dump Ant task or the - dump Maven goal can be used to - request dumps. The remote control feature also allows you to reset execution - data. + dump Ant task, the + dump Maven goal and the + command line interface can be used to request dumps. + The remote control feature also allows you to reset execution data.

Alternatively the JaCoCo agent can be configured to @@ -122,6 +122,10 @@

Can I collect coverage information without stopping the JVM?

org.jacoco:type=Runtime provides operations to dump and reset execution data at any point in time.

+

+ In addition JaCoCo provides a Java API + to directly access the runtime within the JVM executing the tests. +

My code uses reflection. Why does it fail when I execute it with JaCoCo?