1 of 1 people found this helpful
That would be a correct conclusion. The Jacoco extension can only collect data when incontainer tests are executed (That's what activates the infrastructure to call e.g. createRuntime)
But i would say this is a valid use case and we should support it some how..
You mind creating a Feature Request at https://issues.jboss.org/browse/ARQ and add it to the "Extension Jacoco" component.. ?
I've logged a new feature request ARQ-560.
On the topic of bringing in support, I'd like to know if Arquillian supports execution of any lifecycle methods (BeforeSuite, AfterSuite etc.) in the container, for locally run tests. I beleive, this feature can be implemented if such support exists; I have a few spare developer cycles, and I could take a look at this if I find it easy to understand how the Arquillian framework works.
When inside Arquillian Core, all Before|After Suite|Class|Test exists and are executed. If they are executed on your TestClass depends on certain rules..
The problem currently is that the Jacoco Extension rely on Arquillian Core for creating/stopping and sending the Collected data. So in this case, we want the same to happen, but without a running Arquillian Core.
In your case, since you only use @RunAsClient, Arquillian Core is still deployed to the server even tho never really used. If you used @Deployment.testable=false, Arq Core (nor Jacoco) would be part of the deployment.
The source can be found here: https://github.com/arquillian/arquillian-extension-jacoco