簡體   English   中英

如何使用Maven進行兩次測試?

[英]How to run tests with maven twice?

我想運行兩次Maven測試,第二次運行必須在第一次運行之后進行。 有什么命令可以觸發兩次mvn測試嗎?

這是一個簡單的方法

public class RepeatTests extends TestCase {

public static Test suite() {
    TestSuite suite = new TestSuite(RepeatTests.class.getName());

    for (int i = 0; i < 10; i++) {              
    suite.addTestSuite(YourTest.class);             
    }

    return suite;
}
}

這樣,您可以運行任意多次所需的測試用例。

編輯:

正如解釋在這里 ,如果你有測試用例之間的任何公共的命名,這個工程

import org.junit.extensions.cpsuite.ClasspathSuite;
import org.junit.runner.RunWith;

@RunWith(ClasspathSuite.class)
@ClassnameFilters({".*UnitTest"})
public class MySuite {
}

為什么要運行兩次?

您可以做的是聲明surefire插件的第二次執行。 當心修改配置(例如:更改reportsDirectory ),否則maven將跳過第二次執行:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.17</version>
            <executions>
                <execution>
                    <id>test-second-run</id>
                    <goals>
                        <goal>test</goal>
                    </goals>
                    <phase>test</phase>
                    <configuration>
                        <reportsDirectory>${project.build.directory}/surefire-reports-2</reportsDirectory>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM