问题标签 [emma]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
5765 浏览

android - 如何排除类被 maven-emma 插件检测?

我有一些单元测试(虽然它们是 Android 测试,但我使用的是Robolectric,所以它们在 上运行JVM)。他们在没有覆盖的情况下快乐地奔跑。

当我尝试覆盖时,我从 emma-maven 收到此错误:

重要的是class .... appears to be instrumented already

很难找到合适的文档,但这是我从各种来源拼凑起来的配置:

问题是,排除了它抱怨的那些包(我认为问题是这些是 Android 库项目无意中在某些路径列表上结束了两次),它现在抱怨我自己的包。


一位同事错误地建议上面的 <plugin> 部分应该放在 <project><build><pluginManagement> 中。

事实证明 <configuration> 应该直接在 <plugin> 并且应该删除剩余的 <executions> 位,请参阅答案。

0 投票
2 回答
4871 浏览

plugins - 我应该使用哪个 emma-maven-plugin?

  1. org.sonatype.maven.plugin :emma-maven-plugin:1.2
  2. org.codehaus.mojo :emma-maven-plugin:1.0-alpha-3
  3. org.apache.maven.plugins :maven-emma-plugin:0.5
0 投票
2 回答
1990 浏览

fork - 使用 Powermock 覆盖 Emma

我们在项目中配置了 emma,它会生成覆盖率报告。整个设置工作正常,直到我引入 PowerMock 来模拟一些静态方法。

当我用@RunWith(PowerMockRunner.class) 注释一个类时,emma 尝试再次启动覆盖过程并抛出地址绑定异常。我认为 maven surefire 正在为不同的跑步者分叉一个新的 JVM,而 emma 试图在新的 JVM 上再次启动。

我为surefire forkMode尝试了不同的选项,但没有帮助。 Running util.HttpClientFactoryTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.154 sec Running xxx.util.ServiceConnectorUtilTest EMMA: collecting runtime coverage data ... java.net.BindException: Address already in use: JVM_Bind at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:383)

关于如何解决这个问题的想法?任何帮助都非常感激。谢谢

0 投票
1 回答
1585 浏览

android - 使用 TeamCity 构建 android 项目 - 测试和代码覆盖问题

我正在开发一个由 .NET 代码和 android java 项目组成的项目。我们试图让这两种类型的项目在一个 TeamCity 环境中工作。

.NET 项目正在通过一些 NUnit 项目进行测试,我们使用 DotCover 生成覆盖率报告,一切看起来都很好。现在,android/java 项目正在使用 ant runners 构建,我们已经为生产和测试项目提供了一些构建脚本,问题似乎是 java 覆盖率报告的创建。

我们创建了一个包含以下 ant 目标的构建步骤:

构建步骤设置为启用“Emma coverage runner”(选中“在覆盖数据中包含源文件”选项)。

运行构建步骤时发生错误,在日志片段中说明以下内容(附加完整的日志文件)。另一个重要问题是 android/java 单元测试没有出现在构建的整体统计信息中。

这是日志片段:

有谁知道问题可能是什么?

顺便说一句,当我直接从命令行运行目标时,生成的报告没有任何问题。

问候,每

0 投票
1 回答
1249 浏览

junit - 艾玛给出编译错误

我正在尝试将 emma 与进行 junit 测试的 ant 构建集成。我当前的代码运行为:ant tests

我正在尝试离线仪器: http ://emma.sourceforge.net/userguide_single/userguide.html#N10291

所以我将目标行更改为: target name="run" depends="init, test" description="runs the examples"

所以我运行 ant emma run 但是我收到以下错误:

commonstest:[junit] 运行 com.fourhome.commons.AllTests [junit] 测试运行:24,失败:0,错误:0,经过时间:0.433 秒

跑:

BUILD FAILED C:\code\svn\core\core\trunk\build-targets.xml:929: 问题:未能创建任务或键入 emma 原因:名称未定义。行动:检查拼写。行动:检查是否已声明任何自定义任务/类型。行动:检查任何/声明已经发生。

失败行是:emma enabled="${emma.enabled}"

我猜 emma.enabled 没有定义。我应该如何定义它?

0 投票
2 回答
1392 浏览

java - 具有 throws 的块的代码覆盖率

我有一个片段如下

我正在对上面的代码片段进行单元测试

现在上面代码的问题是要测试的类的代码覆盖率显示为 100%,即方法 setTarget。它同时出现在 if 和 else 块中。但是没有覆盖测试类方法即testTargetSetting 的覆盖范围。它始终显示为红色。

我正在使用 Emma 进行代码覆盖。知道如何满足实际类方法和测试类方法的代码覆盖率。

注意:上面给出的代码仅用于说明。

0 投票
1 回答
1738 浏览

java - 如何将 emma 用于 jar 文件

如何运行使用 emma 和 jar 文件。我下载了 emma.jar 和另一个用于测试目的的 jar (MySQLConnector.jar)。我将两个罐子放在同一个文件夹中并试图给出这个命令

. 但我得到一个错误说

emmarun:无法从

[C:\Documetings\Administrator\Desktop\jars\mysql-connector-java-5.0.8-bin.jar]

我该如何解决这个问题!!.. 任何其他测试代码覆盖率的方法也是受欢迎的!!

提前致谢!!

0 投票
0 回答
172 浏览

maven - emma-maven-plugin 不遵守依赖项的顺序?

我有一个 Maven 项目,其中依赖项的顺序很重要。一切都很好。测试运行得很好。

不幸的是,由于我们配置了 emma-maven-plugin,一些单元测试会中断运行“mvn 站点”。运行“mvn emma:emma”时,相同的单元测试也会中断。

有什么方法可以控制 emma-maven-plugin 使用的类路径,或者强制它使用项目中指定的依赖顺序?

我使用的 emma-maven-plugin 是 org.codehaus.mojo:emma-maven-plugin:1.0-alpha-3。

谢谢,

PS。我知道 JaCoCo(jacoco-maven-plugin),并且会在适当的时候解决这个问题,但是现在,我被 Emma 困住了

0 投票
3 回答
3047 浏览

report - emma 代码覆盖率报告

我有一个遵循通用核心 web 包的 maven 项目。

我想运行 Emma 工具来进行代码覆盖。要求是我想对基于 maven 的项目运行 emma 代码覆盖率工具并生成报告。

我对这个工具完全陌生,并尝试了互联网中指定的命令。由于我的 maven 项目中没有任何主要方法(我们在 jboss 中获取并部署),我必须创建一个 pojo 文件来调用服务并通过包含 maven 项目 jar 来构建 pojo jar。

现在我的系统中只有 emma.jar,一个包含 main 方法和 maven 项目 jar 的 jar。正如我想要的基于报告的工具格式,我从批处理命令运行 emma 工具(在 emma.jar 所在的位置)->java emmarun -jar <jar containing the main method>

我得到的报告为

但是从这里我不明白哪些是在方法调用期间从捆绑在 jar 中的 pojo 文件中覆盖的类文件。

我不确定我的方法还是我缺少任何其他步骤来获取报告?


是否有任何指向单元测试的参考链接..我怎样才能编写一个简单的单元测试...使用步骤非常混乱。所以我想任何简单的步骤来使用命令提示符来测试 maven 项目的代码覆盖率...否则除了 emma 之外还有其他工具可以简化我的方法吗...我想使用一些代码覆盖工具从命令提示符下测试一个 maven 项目。这是我的主要要求

0 投票
1 回答
3466 浏览

ant - 在 ant build.xml 中使用 Emma for JUnit

我是使用 Emma 的新手。我正在尝试为 EAR 项目中的模块的 JUnit 测试用例添加 emma ant 任务。我这里没什么问题。

  • 我应该使用仪表类来打包我的 EAR 项目吗?
  • 为junit添加emma ant任务的好方法是什么?我应该使用 emmarun:on-th-fly 模式还是离线模式?对于 JUnit,我应该使用 fork 还是不使用 fork?

我正在使用 Emma 离线模式和带有 fork 的 Junit。这是我的 build.xml

当我运行它进行一项测试时,它没有生成任何报告。但是当我用 EclEmma 运行相同的单元测试时,它会给出正确的输出。