问题标签 [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.
maven - Jenkins + selenium 使用故障安全插件进行测试
我有一个 Jenkins 平台,它调用 maven 来进行单元测试(使用 surefire 插件)和集成测试(使用故障安全插件)。当集成测试出现错误时,Jenkins 认为构建成功。这种行为正常吗?我希望它认为构建不稳定。更一般地说,您知道 Jenkins 如何读取和解释构建结果以将构建视为成功或不稳定吗?我在网上某处读到故障安全报告必须重定向到万无一失的报告路径。我做了id,但问题仍然存在。
pom.xml:
詹金斯的输出:
html - Jenkins 中的故障安全 html 报告
我有一些使用故障安全 maven 插件运行的集成测试(使用 Selenium)。Failsafe 仅生成 XML 报告文件。
1) 我想生成 HTML 报告
2) 我想在 Jenkins 中有一个指向 html 报告的链接
对于 1) 我安装了“maven-surefire-report-plugin”来使用 failsafe-report-only 目标。
但在标准输出中,似乎没有生成任何内容:
在我的故障安全报告目录中,我只有 XML 报告文件,但没有 HTML 报告文件。
它是为故障安全生成 html 报告的好插件吗?
对于 2),我安装了 Jenkins 插件“Selenium HTML 报告”并添加了构建后操作“发布 Selenium HTML 报告”并为“Selenium 测试结果位置”参数配置了“target/failsafe-reports”值,但没有显示在 Jenkins 界面中(肯定是因为我的 html 报告文件没有生成...)。
你能帮我解决这2点吗?
java - Maven故障安全不执行测试
我梳理了 StackOverflow 和许多其他网站,找到了许多其他相关的帖子,并遵循了所有所说的建议,但最后,故障安全正在跳过我的测试。
我的 JUnit 测试位于此处:
myModule/src/main/test/java/ClientAccessIT.java
我跳过了surefire,因为这个模块中没有单元测试:
我正在尝试使用failsafe运行集成测试:
但是,当我运行时,mvn verify
我看到:
我花了最后的 4 1/2 小时进行搜索,任何帮助将不胜感激。唯一值得一提的是,我设置了Cargo并拆除了一个 Tomcat 容器。有人看到明显的问题吗?
maven - 使用 Maven 进行客户端-服务器集成测试
我有一个简单的游戏,它由两个项目组成:客户端和服务器。现在我想测试它们是否正确交互。设置是:一个 Maven 父项目,服务器/客户端/集成测试作为子模块。
我尝试遵循本指南http://docs.codehaus.org/display/MAVENUSER/Maven+and+Integration+Testing,这是使用 maven-failsafe-plugin 的集成测试。唉,它只是描述了如何启动 jetty-server,它可以作为插件使用。
在此配置(或有更好的配置)中,我如何以及在哪里启动我自己的客户端和服务器进行测试?我想做这样的事情:首先我希望在测试之前启动客户端和服务器。在 jUnittest 中,我想要一个 Socket 和一个 Serversocket,一个连接到服务器,一个连接到客户端。然后我想通过这个设置管道客户端/服务器交互并在两者之间验证它,或者单独向它们发送特定消息,验证答案。
这样的事情可能吗,还是有更好的方法?
maven - Maven 故障安全插件不会运行使用 JUnit 类别注释的测试类
我有一个这样的界面:
我像这样配置故障安全插件:
如果我然后创建这样的集成测试
此测试将不会运行。
但是,如果我根据测试的包含和排除来命名该类
像这样:
测试运行良好。为什么我在使用组标签时必须为测试命名并带有注释?我错过了什么吗?使用 JUnit的文档指出您可以在类级别使用 Category 注释。
maven - maven-failsafe-plugin 错误和构建成功?
我的问题与这个问题非常相似:maven-failsafe-plugin Failures and BUILD SUCCESS?
如果测试失败,我设法设置故障安全插件以失败。
但是如果测试进入错误状态,故障安全插件仍然不会破坏构建。
为简单起见,IntegrationTierFunctionalTestCase 仅包含此代码
如果我取消注释 fail() 整个构建正确失败,构建失败。但如果我只是抛出一个异常,它会如上所示失败。
我们的插件配置看起来像这样
我错过了什么?不,我不想将它包装在 try-catch 块中并手动失败测试。
maven - 如何在 Maven 安装目标中跳过测试,同时在 Maven 测试目标中运行它们?
我在同一个文件夹(src/test/java)中有一个包含集成和单元测试的多模块 maven 项目。集成测试用 标记@Category(IntegrationTest.class)
。我想结束以下设置:
- 如果我运行
mvn install
,我希望编译所有测试,但我不想执行任何测试。 - 如果我运行
mvn test
,我希望编译所有测试,但只执行单元测试。 - 如果我运行
mvn integration-test
,我想编译并执行所有测试。
重要的一点是,我希望在pom.xml
没有任何额外命令行参数的情况下对其进行配置。
目前我在我的父 pom.xml 中提出了以下设置,唯一的问题是 #1,所有测试都在其中执行:
所有子模块的 pom.xml 中都有以下插件配置,我认为应该从父 pom 继承:
我尝试使用<skipTests>true</skipTests>
,但它禁用了所有目标的测试执行,这不是我想要的(违反 #2 和 #3)。这也很奇怪,它mvn test
尊重skipTests=true
选项......我为什么要首先运行它?
经过数小时的谷歌搜索和尝试不同的组合,我犹豫是否可以不运行测试mvn install
,同时运行它们mvn test
。我希望有人证明这是错误的。;)
我也愿意接受一个mvn install
只执行单元测试的解决方案,但我认为它没有太大区别。
junit - maven肯定火插件不尊重标签
我想借助 junit 中的 @category 来区分我的单元测试和集成测试。我创建了两个名为 UnitTest 和 IntegrationTests 的接口。我正在使用@Category(UnitTest.class) 和@Category(IntegrationTest.class) 注释我的测试类和测试方法。
我为我的模块配置了一个 maven sure fire 和 maven fail safe 插件。
pom 文件看起来像这样
当我运行 mvn clean install (我希望单独运行单元测试(maven sure fire plugin)并跳过集成测试(maven fail safe))时,这似乎很好。
但是,奇怪的是 maven sure fire 插件不尊重标签,我最终将运行测试将 @Category(UnitTest) 和没有任何类别的测试。但是,使用 @IntegrationTest 的测试将被跳过。
我认为除了@unitTests 类别之外的所有测试都将被跳过。
我尝试从安全的插件配置中删除 com.myproject.IntegrationTest 并且使用@category (IntegrationTest.class) 的测试也开始运行。
这是surefire插件中的错误吗,根据文档,只应运行具有指定类别的测试。
我在这里错过了什么吗?
maven - 运行 mvn clean install 时不要运行集成测试
我希望发生以下情况:
- 当我运行时
mvn clean install
,我希望单独运行单元测试(没有集成测试) - 当我这样做时
mvn integration test
,我希望单独运行集成测试(没有单元测试) - 当我
mvn test
单独进行单元测试时应该运行。
Maven Surefire
我用插件和插件尝试了一些东西,Maven failsafe
但无法做到这一点。我尝试过的是:添加了 Surefire 和 Failsafe 插件,尝试使用注释分离单元测试,以及在包级别分离单元测试和集成测试,并保持单元和集成测试的特定命名约定。
我能够实现的是单独运行单元测试mvn clean install
,但是当我运行 Maven 集成测试时,我无法阻止单元测试运行。知道我应该怎么做吗?