亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在運行junit4集成測試之前通過maven部署war?

如何在運行junit4集成測試之前通過maven部署war?

慕標5832272 2024-01-17 17:04:48
我希望 Maven 在運行 jUnit 測試之前部署 war。我已經添加了故障安全插件和配置,但測試后部署仍然完成。測試不是由故障安全插件運行嗎?<build>    <finalName>testWar</finalName>    <plugins>    <plugin>        <groupId>org.apache.maven.plugins</groupId>        <artifactId>maven-failsafe-plugin</artifactId>        <version>2.16</version>        <configuration>            <systemPropertyVariables>                <wildfly.remote.port>10090</wildfly.remote.port>            </systemPropertyVariables>        </configuration>        <executions>            <execution>                <goals>                    <goal>integration-test</goal>                    <goal>verify</goal>                </goals>            </execution>        </executions>    </plugin>    <plugin>        <groupId>org.wildfly.plugins</groupId>        <artifactId>wildfly-maven-plugin</artifactId>        <version>1.2.1.Final</version>        <configuration>            <hostname>host</hostname>            <port>10090</port>            <username>user</username>            <password>pw</password>        </configuration>        <executions>            <execution>                <id>wildfly-run</id>                <phase>pre-integration-test</phase>                <goals>                    <goal>deploy</goal>                </goals>            </execution>        </executions>    </plugin></plugins></build>
查看完整描述

1 回答

?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

您報告的行為表明您的測試是在test階段而不是integration-test階段中運行的。這是因為默認情況下 Maven Surefire 和 Maven Failsafe 插件都使用類名約定來區分這兩種類型的測試,如下所述:

默認單元測試行為

Maven Surefire 插件在該階段運行單元test測試。默認情況下,它根據測試的類名選擇要執行的測試,如Maven Surefire Plugin |中所述。測試的包含和排除:

  • “**/Test*.java” - 包括其所有子目錄以及以“Test”開頭的所有 Java 文件名。

  • “**/*Test.java” - 包括其所有子目錄以及所有以“Test”結尾的 Java 文件名。

  • “**/*Tests.java” - 包括其所有子目錄以及所有以“Tests”結尾的 Java 文件名。

  • “**/*TestCase.java” - 包括其所有子目錄以及以“TestCase”結尾的所有 Java 文件名。

默認集成測試行為

Maven Failsafe 插件在該階段運行集成測試integration-test。默認情況下,它還會根據測試的類名選擇要執行的測試,如[Maven Failsafe Plugin | Maven Failsafe Plugin]中所述。測試的包含和排除](?https://maven.apache.org/surefire/maven-failsafe-plugin/examples/inclusion-exclusion.html

  • “**/IT*.java” - 包括其所有子目錄以及所有以“IT”開頭的 Java 文件名。

  • “**/*IT.java” - 包括其所有子目錄以及所有以“IT”結尾的 Java 文件名。

  • “**/*ITCase.java” - 包括其所有子目錄以及所有以“ITCase”結尾的 Java 文件名。

因此,您可能只需要重命名集成測試類以符合上面顯示的三個約定之一。


查看完整回答
反對 回復 2024-01-17
  • 1 回答
  • 0 關注
  • 142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號