问题标签 [maven-surefire-plugin]

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 投票
1 回答
202 浏览

testing - Maven 测试与 ant 测试(现在更具体)

好的,关于这个的一点背景故事。我负责将项目从(糟糕的)ant 构建转换为 maven 构建。我的第一步是简单地重新制作最终的 EAR,使其与 Ant 的相似,以免给其他团队带来麻烦。

我做得很完美(感谢你们之前回答了几个问题)。

但是,现在我遇到了障碍。蚂蚁测试。

他们曾经直接从 Eclipse 运行 ant 测试。根据我从他们的 build.xml 中收集到的内容,他们创建了一个小 jar,将其部署(在 Jetty 上)、测试并取消部署。

我一直在尝试用 maven 进行相同的测试(想法不同),但无法重现它。但是,我认为我以错误的方式接近它。我只是用surefire插件对已经部署在我的JBoss上的EJB运行测试。

我为什么要这样做?因为我希望通过测试成为在 JBoss 上成功部署的条件。如果它没有通过测试,我不想部署它。制作一个 jar 并在之后进行部署不会事先进行测试,就在之后(因为我将针对已编译和部署的 ear 对其进行测试)。有什么提示吗?

我应该遵循他们(其他团队)过去遵循的相同模式吗?或者我可以用其他方式吗?

感谢您的任何回复!

André Cardoso PS.:对不起,我的英语不好,这不是我的第一语言!

0 投票
1 回答
13301 浏览

maven - 如何配置 Maven 以将 JUnit 断言失败消息打印到控制台

我正在使用 surefire maven 插件来运行单元测试。我的测试类如下所示:

当测试失败时,我希望看到与 AssertionError 相关联的消息“false is never true”,但它不会打印到控制台。相反,我被指示在安全报告目录中挖掘并找到它(这很糟糕)。

浏览到上述目录后,我找到了 .txt 文件,其中包含来自我的 JUnit 测试的错误消息,包括堆栈跟踪。我希望在构建期间看到相同的消息和堆栈跟踪打印到控制台(如果它也被添加到报告文件中,那就太好了)。有任何想法吗?

0 投票
2 回答
407 浏览

command-line - Maven 3:覆盖 POM 中的命令行

我们可以使用命令行覆盖 POM 中定义的属性。

我们能以某种方式产生相反的效果吗?要覆盖 POM 中的命令行参数?

我在命令行中有一个带有“-Dmaven.test.skip -DskipTests -DskipITs”的 Hudson,我无法更改它(管理员在一个月内响应请求),但我还是想运行我的测试..

谢谢)

0 投票
1 回答
6869 浏览

spring - 在 Spring LTW 环境中使用 Maven 运行单元测试

我正在使用 Spring LoadTimeWeaving 功能在 ddd 架构中开发应用程序。问题是我可以使用 Eclipse 运行我的 Junit 测试,但不能通过 Maven。我已经尝试了各种网站上提供的所有选项,但它根本不起作用。我得到以下异常:

原因:org.springframework.beans.factory.BeanCreationException:创建名为“loadTimeWeaver”的bean时出错:bean初始化失败;嵌套异常是 java.lang.IllegalStateException: ClassLoader [sun.misc.Launcher$AppClassLoader] 不提供“addTransformer(ClassFileTransformer)”方法。指定自定义 LoadTimeWeaver 或使用 Spring 代理启动 Java 虚拟机:-javaagent:org.springframework.instrument.jar

我已将仪器 jar 作为 argLine 的一部分添加到 surefire 插件中。以下是我的代码工件。请让我知道我哪里出错了,或者是否有其他解决方案。

我在 Mac OSX 上使用 Eclipse Indigo 进行开发,Maven 3.0

pom.xml(仅用于重要细节的缩写)

springContext.xml (它具有启用 LTW 功能的以下标记)

0 投票
2 回答
2414 浏览

maven - Maven:Surefire --dry-run?

有什么方法可以干运行万无一失吗?会列出哪些测试运行,而不运行它们的东西。

目标是了解哪些测试(将)在特定配置下的 JBoss AS7 测试套件中运行。

0 投票
2 回答
4913 浏览

java - 有没有一种简单的方法可以在surefire-plugin测试类路径上添加jar

有这个属性 additionalClasspathElements 但不幸的是它不处理带有 jar 的目录

这个问题真的很难处理......我想到的唯一方法是创建一个准备类路径的mojo,但我不知道接下来会发生什么

在我的 pom 定义中创建一个包含 175 个 jar 的列表看起来很有趣。这将是 additionalClasspathElements 中的 525 行

我需要启动一个不使用 maven 的大型项目。由于 175 个库的版本兼容性,几乎不可能声明它们。恕我直言,直接从项目的类路径加载它们是唯一的方法

0 投票
1 回答
1580 浏览

java - Netbeans maven-surefire-plugin 不生成 HTML

我怎样才能运行'mvn'。

我正在使用 Netbeans 7,当我运行单元测试时,我确实从我的项目 /target 文件夹中获取了生成的 XML 文件

/target/surefire-reports/TEST-package.name.ClassNameTest.xml

/target/surefire-reports/TEST-package.name.ClassNameTest.txt

但是从我的测试包中的所有 xml 和 txt 文件中,

我不知道如何生成 HTML 报告。

我目前正在使用 Maven Netbeans 项目。这是我的 pom.xml 文件:

我可以让我的测试顺利通过,我在 Netbeans 中使用内置的 Unit Runner 和 Junit4。

我到处搜索,我发现的只是记录不充分的示例,而不是关于如何使用我的测试结果生成报告 HTML 文件的完整演练。

不确定这是否相关,但我在 Windows XP 下开发。JDK 7。我使用的 Maven 直接来自 Netbeans 项目。

我通过以下方式看到了帖子和示例:

http://maven.apache.org/maven-1.x/plugins/junit-report/goals.html

junit-report:report 和 junit-report 但我似乎无法弄清楚这些东西。

只是寻找一个简单的生成的 HTML 文件。

0 投票
3 回答
30793 浏览

java - 使用 maven surefire 将失败的测试详细信息输出到标准输出

当我使用 maven 2 运行构建时

我的测试是由surefire插件运行的。如果测试失败,我会得到以下输出:

要获取有关问题的详细信息,我必须去检查 surefire 报告文件夹。每次我的测试失败时都这样做会变得很烦人。有什么方法可以在 stdout 上获取这些详细信息(断言消息 + 异常 + 堆栈跟踪)?

0 投票
3 回答
3740 浏览

java - Maven + Surefire:代理配置

我正在使用 httpunit 访问服务器。

我需要为此配置代理设置(http 和 https)。

我在settings.xml文件中设置了配置,但是surefire似乎忽略了它!?

我想尽可能避免重复配置。

在我尝试过的surefire插件配置中:

和其他几种组合。

我在单元测试中打印系统属性:

到目前为止唯一有效的是显式值,例如:

或者

但正如我所说,如果可能的话,我不想复制配置。

如何在单元测试中使用 settings.xml 文件中设置的代理设置?

0 投票
1 回答
3729 浏览

maven - Maven:如何配置测试以在集成测试阶段运行?

我正在使用 Maven 3.0.3。我想在我的测试阶段运行一些 Junit 测试,在我的集成测试阶段运行其他测试。问题是在集成测试阶段没有运行任何东西。我运行命令

开始一切。这是我配置我的surefire插件的方式......

我的“集成”目录中有两个 JUnit 测试。我正在使用 Maven Cargo 插件在集成阶段启动服务器。这是配置...

任何想法如何更改/增强我的配置以便我的集成测试能够运行?- 戴夫