我有一个项目,部署在jboss 7.1.3上,并使用arquillian进行测试,并且我试图向其添加代码覆盖率度量。arquillian jboss as7管理和jacoco - jacoco.exec文件为空
即时通讯使用托管容器选项(jboss-as-arquillian-container-managed),现在我刚刚尝试向jquery用于启动jboss的jvm参数添加-javaagent参数,所以我的arquillian。 XML看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<arquillian xmlns="http://jboss.org/schema/arquillian"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jboss.org/schema/arquillian http://jboss.org/schema/arquillian/arquillian_1_0.xsd">
<defaultProtocol type="Servlet 3.0"/>
<engine>
<property name="deploymentExportPath">/tmp</property>
</engine>
<container qualifier="jboss" default="true">
<configuration>
<property name="outputToConsole">true</property>
<property name="jbossHome">[jboss home]</property>
<property name="javaHome">[java home]</property>
<property name="javaVmArguments">-Xmx2048m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Djboss.server.log.dir=logs -javaagent:[profile]\.m2\repository\org\jacoco\org.jacoco.agent\0.6.2.201302030002\org.jacoco.agent-0.6.2.201302030002-runtime.jar=destfile=C:\jacoco.exec,includes=*,excludes=,append=true,output=file,classdumpdir=classdumpdir,dumponexit=true</property>
<property name="startupTimeoutInSeconds">120</property>
<property name="allowConnectingToRunningServer">true</property>
</configuration>
</container>
</arquillian>
IM 100%肯定,这种说法是被拾起,因为两者的jacoco.exec文件和classdumpdir创建。
问题是jacoco.exec文件是空的。 jboss启动,测试运行并成功完成,jboss关闭,classdumpdir被填充(所以根据jacoco规范,它意味着它正确地找到我的类),但jacoco.exec保持完全空。
如果我提供确切的保存javaagent
参数到完全相同的jboss,我手动开始自己一切工作正常。
我在做什么错?
你配置了jacoco扩展吗?看到这里:https://github.com/arquillian/arquillian-extension-jacoco/blob/master/src/test/resources/arquillian.xml我至少会列出扩展名,不包括排除。 –
@JohnAment - 尝试在我的arquillian xml中添加 - 没有任何区别 –
radai