Maven test多线程陷阱

项目使用了maven-surefire-plugin运行Junit测试。
一段时间后发现一些运行失败的单元测试只能通过maven test重现。
后来了解到maven-surefire-plugin默认是多线程执行Junit test的,而一些单元测试共用了相同的资源,没有实现线程安全。
重构单元测试的同时将maven-surefire-plugin配置为单线程执行Junit,避免出现线程问题。

                <plugin>
                    <groupId>org.apache.maven.pluginsgroupId>
                    <artifactId>maven-surefire-pluginartifactId>
                    <version>2.9version>
                    <configuration>
                
                        <forkMode>onceforkMode>
                        
                        <argLine>-Xms512m -Xmx1600m ${surefireArgLine}argLine>
                    configuration>
                plugin>

你可能感兴趣的:(单元测试)