maven-surefire-plugin的forkMode分析


Maven運行測試用例時,是通過調用maven的surefire插件並fork一個子進程來執行用例的。forkmode屬性中指明是要為每個測試創建一個進程,還是所有測試在同一個進程中完成。

       <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <forkMode>once</forkMode>
                    <argLine>-Dfile.encoding=UTF-8</argLine>
                </configuration>
            </plugin>

forkMode 可設置值有 “never”, “once”, “always” 和 “pertest”。

pretest: 每一個測試創建一個新進程,為每個測試創建新的JVM是單獨測試的最徹底方式,但也是最慢的,不適合hudson上持續回歸。
once:在一個進程中進行所有測試。once為默認設置,在Hudson上持續回歸時建議使用默認設置。
always:在一個進程中並行的運行腳本,Junit4.7以上版本才可以使用,surefire的版本要在2.6以上提供這個功能,

其中 threadCount:執行時,指定可分配的線程數量。只和參數parallel配合使用有效。默認:5。

 

 

附上maven常見的插件:http://maven.apache.org/plugins/index.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM