[英]maven surefire plugin - run all tests sequentially
由於某種原因,我無法獲得Maven surefire插件來按順序運行測試。
我在測試中使用redis模擬( https://github.com/kstyrc/embedded-redis ),效果很好,但出現類似
Cannot run program "/tmp/1494421531552-0/redis-server-2.8.19" (in directory "/tmp/1494421531552-0"): error=26, Text file busy
我查了一下,發現它可能與並行運行的測試有關,並且此模擬程序存在問題。
當前我的行家看起來像這樣
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<trimStackTrace>false</trimStackTrace>
<useFile>false</useFile>
<reuseForks>false</reuseForks>
<forkCount>1</forkCount>
</configuration>
我想確保我所有的測試都按順序運行(一個接一個)-這意味着每個類的每個測試方法都單獨運行。
我該如何實現?
據我所知,確保單元測試順序的唯一方法是按字母順序進行:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<runOrder>alphabetical</runOrder>
</configuration>
</plugin>
話雖這么說,但我認為您需要在每個測試中定義一個@After方法來停止redis模擬(並實際上等待它停止),以便新測試可以在@Before方法中啟動redis模擬而無需沖突
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.