问题标签 [maven-failsafe-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 回答
1354 浏览

maven - mvn 故障安全:集成测试

我正在使用 maven 2,集成测试在 *IT.java 文件中。当我运行命令mvn failsafe:integration-test集成测试运行罚款。但是当我运行mvn integration-test它时,它不会运行我的集成测试。如何删除前缀failsafe:

在 pom.xml 我使用:

更新
我也尝试了以下pom.xml设置,然后mvn clean verify。我只得到了JUnit测试的可靠报告。控制台输出上仍然缺少JUnit集成测试。

现在我通过插件设置绑定禁用单元测试:

文我运行mvn clean verify我的故障安全集成测试运行!但是为什么它不能与 surefire 单元测试一起使用呢?任何想法?

0 投票
3 回答
1405 浏览

maven-2 - 使用 maven2 故障安全和嵌入式 glassfish 进行集成测试

我创建了一个新项目,它只会运行集成测试

  • maven-ear-插件
  • maven-failsafe-插件
  • maven 嵌入式 glassfish 插件

当我将包装设置为 ear 时,ear 文件被创建,glassfish 运行但测试被忽略,我收到以下消息

[failsafe:integration-test] 没有要运行的测试。

并且 glassfish 取消部署失败

[嵌入式玻璃鱼:取消部署]
2012 年 8 月 17 日上午 10:08:17 PluginUtil doUndeploy
信息:部署者 = com.sun.enterprise.admin.cli.embeddable.DeployerImpl@105f0f87 2012 年
8 月 17 日上午 10:08:17 com.sun.enterprise.loader.ASURLClassLoader$SentinelInputStream
报告
警告:输入流已被最终确定或强制关闭,但未明确
关闭; 在 com.sun.enterprise.loader.ASURLClassLoader$SentinelInputStream的以下堆栈跟踪
java.lang.Throwable 中报告了流实例化。(ASURLClassLoader.java:1230)

当我将包装设置为罐子时,我得到

运行 packageName.MyServiceTest
17/08/2012 10:09:34 AM com.sun.enterprise.v3.server.CommonClassLoaderServiceImpl
findDerbyClient 信息:找不到 javadb 客户端 jar 文件,derby jdbc 驱动程序默认
不可用。org.omg.CORBA.COMM_FAILURE:FINE:IOP00410001:连接失败:socketType:IIOP_CLEAR_TEXT;主机名:本地主机;端口:3700 vmcid:OMG 次要代码:1 已完成: 在 sun.reflect.GeneratedConstructorAccessor27.newInstance 处没有(未知来源)




并且 glassfish 没有启动

我知道它与 Maven 生命周期有关,它不允许我创建 ear 文件、启动 glassfish 嵌入式服务器并在同一个项目中运行集成测试。

有人可以建议我一个解决方案吗?我正在尝试仅使用 EJB 和业务实体项目创建 ear 文件并将其部署到嵌入式 glassfish 服务器以使用 maven-failsafe-plugin 运行集成测试,而不是部署由父 pom.xml 创建的 ear 文件,它添加UI等项目放入ear文件。

这是我的 pom.xml 文件

http://maven.apache.org/xsd/maven-4.0.0.xsd">4.0.0

0 投票
1 回答
1029 浏览

junit - 如何将万无一失的报告分为 2 个或更多类别?

我想将测试分为 3 个不同的类别:

  • 单元
  • 组件
  • 系统

然后我想在不同的阶段分别运行它们,并将这些测试的执行结果显示为 3 个不同的肯定报告,或者可能是一个,但测试结果分为 3 个不同的类别。

如何用maven实现它?

我知道我可以使用故障安全 Maven 插件单独运行测试。所以这不是问题。

唯一的问题是我可以将报告分为 3 类。

0 投票
1 回答
6440 浏览

maven - maven-failsafe-plugin 没有执行我的集成测试

咆哮我实际pom的一部分。集成测试的 Testng 测试已在 @Test 注释中分配了一个“集成”组。为了做小测试,我没有在测试阶段排除“集成”组。

当使用例如 mvn verify 或 mvn install 构建时,集成测试在测试阶段执行,而不是在验证或集成测试阶段执行。运行的测试数仍然为 0。不知何故,它们没有被拾取。有人知道可能出了什么问题吗?

更新:将 TestNG 添加为故障安全插件的依赖项无济于事

0 投票
1 回答
2247 浏览

java - mvn 集成测试与 mvn 故障安全:集成测试

我在使用 maven 故障安全插件运行集成测试时遇到了问题。我有两个类,一个是 TestUnitTest.java,另一个是 TestIntegrationIT.java。在 pom.xml 中,我配置如下:

当我运行 mvn:integration-test 时,将执行两个测试,当我运行 mvn failsafe:integration-test 时,只运行“TestIntegrationIT”。为什么输出不同的结果?

0 投票
1 回答
3501 浏览

java - 如何设置系统变量以用于 Maven 故障安全测试?

我正在尝试在没有设置我需要的环境变量的构建服务器上运行测试。

在 spring 上下文 xml 文件中使用该变量来解析属性文件的位置。

例如类路径:config/${EnvironmentType}/myfile.properties

我正在使用故障安全插件并尝试各种记录在案的方法(甚至不推荐使用的方法)来设置变量。没有任何区别,变量永远不会被解决。

我的配置如下:

如何在不实际设置机器上的情况下为我的测试设置这个 env var?

注意:使用 mvn verify -DEnvironmentType="DevelopmentIntegration" 运行它是有效的。我希望它只与 mvn verify 一起工作。

干杯,彼得

0 投票
3 回答
12746 浏览

maven - maven-failsafe-plugin 失败和构建成功?

我想使用 maven-failsafe-plugin 来运行一些集成测试。如果任何测试失败,我希望 Maven 使构建失败而不是 BUILD SUCCESS。


我该如何配置它,构建不成功是什么?

我的故障保护插件配置为:

0 投票
0 回答
605 浏览

maven - Netbeans 使用依赖项构建我的集成测试两次

我有一个父模块,它有以下子模块

我正在使用故障安全插件来运行集成测试。有没有办法告诉 maven 在 Netbeans 中运行集成测试之前编译它的依赖项,即实体、实用程序和 ejb?

在命令行中执行上述操作很容易。我可以去父 pom.xml 并使用以下内容

mvn --projects util,entities,ejb,integration-tests install

但是在 Netbeans 中,当我选择集成测试项目并检查“使用依赖项构建”以执行操作,然后右键单击集成测试项目并选择构建时,Netbeans 会构建所有子项目,然后构建“集成测试”。

问题是:netbeans 似乎也在将集成测试添加到子项目列表中,这使得集成测试构建了两次,我的测试运行了两次。


0 投票
1 回答
3591 浏览

maven - Maven 故障安全插件不运行 testNG XML 套件

我正在使用 maven 运行我在 TestNG 套件中的集成测试。在eclipse下运行套件时-我的测试套件运行成功。当运行“mvn verify”来运行我的集成测试时,我看到故障安全插件配置调试打印,包括 suite.xml 文件和我编译的类的正确路径,但它不执行我的测试(构建过程成功完成)。

我尝试运行相同的 pom 配置,但使用surefire插件而不是故障安全插件,并且我的测试成功执行。

这是相关的控制台输出:

[DEBUG] 排除:org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1 [DEBUG] 排除:junit:junit:jar:3.8.1 [DEBUG] 排除:org.apache .maven:maven-core:jar:2.0.9 [DEBUG] 排除:org.apache.maven:maven-plugin-parameter-documenter:jar:2.0.9 [DEBUG]
排除:org.apache.maven:maven-repository -metadata:jar:2.0.9 [DEBUG] 排除:org.apache.maven:maven-error-diagnostics:jar:2.0.9 [DEBUG]
排除:org.apache.maven:maven-plugin-descriptor:jar:2.0 .9 [调试]
排除:org.apache.maven:maven-monitor:jar:2.0.9 [DEBUG] 排除:classworlds:classworlds:jar:1.1 [DEBUG] 排除:org.apache.maven:maven-toolchain:jar:2.0.9 [调试] 配置 mojo org.apache.maven.plugins:maven-failsafe-plugin:2.12.3:integration-test 从插件领域 ClassRealm[plugin>org.apache.maven.plugins:maven-failsafe-plugin:2.12.3,父:sun.misc.Launcher$AppClassLoader@121ab80] [DEBUG] 使用基本配置器配置 mojo 'org.apache.maven.plugins:maven-failsafe-plugin:2.12.3:integration-test' -->[DEBUG] (s) argLine = -Xmx1024m [DEBUG] (s) basedir = PathToMyDir\MyProject [DEBUG] (s) childDelegation = false [DEBUG] (s) classesDirectory = PathToMyDir\MyProject\target\classes [DEBUG] (s ) disableXmlReport = false [DEBUG] (s) enableAssertions = true [DEBUG] (s) forkMode = once [DEBUG] (s) junitArtifactName = junit:junit [DEBUG] (s) localRepository = id: local url: file:// /..../.m2/repository/ 布局:无

[DEBUG] (f) parallelMavenExecution = false [DEBUG] (s) perCoreThreadCount = true [DEBUG] (s) pluginArtifactMap = {org.apache.maven.plugins:maven-failsafe-plugin=org.apache.maven.plugins:maven -failsafe-plugin:maven-plugin:2.12.3:, org.apache.maven.surefire:surefire-booter=org.apache.maven.surefire:surefire-booter:jar:2.12.3:compile, org.apache。 maven.surefire:surefire-api=org.apache.maven.surefire:surefire-api:jar:2.12.3:compile, org.apache.maven.surefire:maven-surefire-common=org.apache.maven.surefire: maven-surefire-common:jar:2.12.3:compile, org.apache.commons:commons-lang3=org.apache.commons:commons-lang3:jar:3.1:compile, org.apache.maven.shared:maven- common-artifact-filters=org.apache.maven.shared:maven-common-artifact-filters:jar:1.3:compile, org.codehaus.plexus:plexus-utils=org.codehaus.plexus:plexus-utils:jar: 3.0.5:编译,org.apache.maven.reporting:maven-reporting-api=org.apache.maven.reporting:maven-reporting-api:jar:2.0.9:compile, org.apache.maven.plugin-tools:maven- plugin-annotations=org.apache.maven.plugin-tools:maven-plugin-annotations:jar:3.1:compile} [DEBUG] (f) pluginDescriptor = Component Descriptor: role: 'org.apache.maven.plugin.Mojo' ,实现:'org.apache.maven.plugin.failsafe.HelpMojo',角色提示:'org.apache.maven.plugins:maven-failsafe-plugin:2.12.3:help' 角色:'org.apache.maven. plugin.Mojo',实现:'org.apache.maven.plugin.failsafe.IntegrationTestMojo',角色提示:'org.apache.maven.plugins:maven-failsafe-plugin:2.12.3:integration-test' 角色:' org.apache.maven.plugin.Mojo',实现:'org.apache.maven.plugin.failsafe.VerifyMojo',角色提示:'org.apache.maven.plugins:maven-failsafe-plugin:2.12.3:verify' --- [DEBUG] (s) printSummary = true [DEBUG] (s) projectArtifactMap = {All Artifacts Here} [ DEBUG] (s) redirectTestOutputToFile = false [DEBUG] (s) remoteRepositories = [ id: central url:http://repo1.maven.org/maven2 布局:默认快照:[启用 => 假,更新 => 每日] 发布:[启用 => 真,更新 => 从不]] [调试] (s) 报告格式 = 简短[DEBUG] (s) reportsDirectory = PathToMyDir\MyProject\target\failsafe-reports [DEBUG] (s) runOrder = 文件系统 [DEBUG] (s) skip = false [DEBUG] (s) skipTests = false [DEBUG] (s) suiteXmlFiles = [PathToMyDir\MyProject\src\test\resources\MyTestNgSuiteFile.xml] [DEBUG] (s) summaryFile = PathToMyDir\MyProject\target\failsafe-reports\failsafe-summary.xml [DEBUG] (s) testClassesDirectory = PathToMyDir\ MyProject\target\test-classes [DEBUG] (s) testNGArtifactName = org.testng:testng [DEBUG] (s) testSourceDirectory = PathToMyDir\MyProject\src\test\java [DEBUG]
(s) trimStackTrace = true [DEBUG] (s) useFile = true [DEBUG] (s) useManifestOnlyJar = true [DEBUG] (s) useSystemClassLoader = true [DEBUG] (s) useUnlimitedThreads = false [DEBUG] (s) workingDirectory = PathToMyDir\MyProject [DEBUG] (s) project = MavenProject: MyParentProject:MyProject:0.0.1-SNAPSHOT @ PathToMyDir\MyProject\pom.xml [DEBUG]
(s) session = org.apache.maven.execution.MavenSession@bffe59 [DEBUG] -- 结束配置 -- [WARNING] 文件编码尚未设置,使用平台编码Cp1255,即构建依赖于平台![INFO] [INFO] --- maven-failsafe-plugin:2.12.3:verify (verify) @MyProject --- [DEBUG] 配置 mojo org.apache.maven.plugins:maven-failsafe-plugin:2.12.3 :verify from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-failsafe-plugin:2.12.3, parent: sun.misc.Launcher$AppClassLoader@121ab80] [DEBUG] 配置 mojo 'org.apache.maven .plugins:maven-failsafe-plugin:2.12.3:verify' 带有基本配置器 -->

看起来“分叉命令行:cmd.exe /X /C”C:\

0 投票
1 回答
884 浏览

maven - 当集成测试执行时,“mvn install”是否应该失败?

我有一个 Maven 项目,它有一个名为“BlahITCase”的集成测试。此测试当前失败,进而导致“mvn install”失败。这是预期的行为吗?我的理解是单元测试(surefire)失败会导致构建失败,但集成测试(使用故障保护)失败不会。

我的 pom 的构建插件部分有以下内容:

注释掉验证目标似乎给了我想要的行为。