问题标签 [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 投票
2 回答
3942 浏览

maven - 如何让 Jenkins 在 Maven 2 构建中快速失败?

我正在尝试使用 Jenkins 构建一个多模块 Maven 项目。

当我使用与 Jenkins相同的环境(variables/settings.xml/user)在命令行上构建相同的项目时,测试失败会导致构建立即失败:

Jenkins中构建时:

该构建声明所有模块和父模块都是成功的,而实际上,这些应该是失败的。

如何让 Jenkins 在 Maven 构建中强制执行快速失败,就像 Maven 在命令行中所做的那样?

提前致谢。

0 投票
0 回答
984 浏览

maven - 如何让 maven surefire 产生增量控制台输出?

我的 maven surefire 测试在自己运行实际测试时不会产生任何控制台输出,即控制台显示下面的输出,然后在测试期间旋转。测试完成后,控制台输出可用,但直到那时才可用。所以问题是,我怎样才能禁用这个缓冲?

这是我的 pom 的相关部分:

它在(咳咳)Windows 上运行,如果这很重要的话。

0 投票
1 回答
2693 浏览

maven - Permission error in maven 3

I created a sample project with just a simple testng dependency. When i tried to compile it through terminal (via mvn compile), i got this error.

I am not using any surefire plugin. Here is my pom file.

Please help me resolve this issue.

EDIT: I have given 777 permission on the entire workspace

0 投票
1 回答
8134 浏览

java - 带有 TestNg 的 Maven-surefire-plugin:如何指定存储测试套件 xml 文件的目录?

我目前正在开发一个由 Maven 支持的项目。我选择了 TestNg 来实现我的单元测试。为了在每个 Maven 构建中运行我的单一测试,我已将 maven-surefire-plugin 添加到我的 pom.xml 中:

此外,我想使用 TestNg 的 TestSuiteXmlFile 指定要执行的测试。例如,在我的 pom.xml 中,我配置了 surefire 插件,以便它将执行名为“testsuite-persistence-layer.xml”的 xml 文件中定义的测试。

问题是,默认情况下,surefire 插件似乎在我的项目的根目录中寻找这个 xml 文件。如何指定 surefire 插件应在其中查找 TestSuite xml 文件的目录?

根据 TestNg 文档,这可以通过“maven.testng.suitexml.dir”属性指定,但 Surefire 插件似乎没有考虑到它。

0 投票
1 回答
611 浏览

maven-3 - 哪些版本的 cobertura 和 surefire 插件在 maven3 下可以协同工作?

哪些版本的coberturasurefire插件在maven3下可以协同工作?

切换到 maven3 后,我发现mvn cobertura:cobertura不再生成有关测试覆盖率的报告(显示的覆盖率为 0%)。它在maven2下工作......

然而,在发现其他项目之一的报告仍在工作后,我分析了有效的 pom.xml 文件。在发现我正在使用其他版本的插件后,我已经maven-surefire-plugin从 2.8 版本降级到 2.4.3 版本。我maven-cobertura-plugin在 2.5.1 版中使用。

这是一个可行的解决方案,但是我使用的插件版本已经很旧了,但是在找到有效的版本对之前,我不想进行试验。所以,我的问题是,是什么导致这两个插件之间不兼容?是错误还是插件的行为在版本之间发生了变化,导致它们不兼容?在哪里可以找到有关插件兼容性的信息,而不是插件本身?

0 投票
1 回答
1741 浏览

maven-3 - 在 Maven 3 下,surefire 的 forkMode 是否“从不”与 cobertura 一起使用?

从 maven 2 切换到 maven 3 后,我发现 cobertura 报告的测试覆盖率为 0%。我已经提出了关于使用哪些版本的 cobertura 和 surefire 的问题:哪些版本的 cobertura 和 surefire 插件在 maven3 下一起工作?

但是,我对问题进行了更深入的调查,发现配置片段不起作用:

将 forkMode 从更改neveronce测试覆盖率后开始生成。所以,问题不在于插件版本不兼容本身,而是cobertura在maven 3下对surefire的各种fork模式支持的问题。

所以,我的问题是,它是一个错误,还是 cobertura 插件是这样设计的,它不适用于一些forkMode=never

0 投票
1 回答
19685 浏览

maven - Maven 不会运行测试

运行mvn testmaven 时不会运行所有测试类。当我通过添加显式提供类时,-Dtest=PropertyTests将运行测试。

这是我的 pom.xml:

为什么maven不会自动运行测试?我错过了什么吗?

示例测试(类在 src/test/java/com/example/PropertyTests.java 中):

Maven 输出mvn test

0 投票
1 回答
869 浏览

java - 基于JUnit类别执行并行测试

我使用 Junit 4.8 和 maven 3,我有可以并行执行的测试,但其他测试不能,因为它可以访问 Oracle 数据库。我想使用 Junit 类别来指示可以“并行化”的测试和其他测试,并使用简单的“mvn 测试”启动测试。这有可能吗?我认为我的 Maven 配置会是这样的:

当然它不起作用,但它只是向你展示我想要做什么。如果有人有想法:)

0 投票
3 回答
20549 浏览

java - 如何参数化 Maven surefire 插件,以便我可以选择运行哪些 TestNG 套件

我在 TestNG 中有很多测试套件。这些是 XML 文件。从 maven 运行集成测试时,我希望能够选择多个 XML 套件。

目前我可以像这样将套件文件添加到 pom.xml:

此解决方案有一些限制。我只能更改我在 pom.xml 中定义的测试套件的路径。所以在我的例子中,它总是必须是两个文件。我无法运行,比如说,5 间套房或只有一间。

有没有办法以某种方式参数化 pom.xml 中的整个“suiteXmlFiles”部分?

运行与给定测试组匹配的所有内容对我来说不是一个选项:我不想加载我拥有的所有套件,然后使用 TestNG 套件中的组运行选定的测试。原因是在运行所有带有组过滤器的测试套件后生成的报告与仅运行选定的测试套件时生成的报告不同。

0 投票
1 回答
1397 浏览

java - Surefire 插件中的 Maven 多个测试套件

我正在使用带有 surefire 插件的 TestNg 和 Maven 来运行我的测试。我有几个不同的测试,我想在同一个 pom 中运行。目前要做到这一点,我定义了两个不同的 XML 文件,并且我定义了两个配置文件来运行不同的 xml 文件,但这一直抛出错误!

我不知道我应该如何解决这个问题。任何帮助将不胜感激!

想象配置文件 2 几乎相同,但 xml 套件文件不同

我收到一个解析错误:在 suiteXmlFile 中找不到测试类。但是,如果我只使用一个配置文件只有一个 xml 文件,这是可以接受的。失败的那个也有效。