Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
强制Eclipse以与Maven相同的顺序运行JUnit测试_Junit_Maven 3_Eclipse Juno_Maven Surefire Plugin - Fatal编程技术网

强制Eclipse以与Maven相同的顺序运行JUnit测试

强制Eclipse以与Maven相同的顺序运行JUnit测试,junit,maven-3,eclipse-juno,maven-surefire-plugin,Junit,Maven 3,Eclipse Juno,Maven Surefire Plugin,我在Mac10.9.5上使用Maven 3.2.3、SureFire 2.17、JUnit 4.11和EclipseJuno。我注意到,当我通过命令行运行JUnit测试时 mvn test -Dtest=MyTest 文件“MyTest.java”中的各个测试的运行顺序不同于我在Eclipse中运行它们时的顺序,方法是右键单击类名并选择“RunAs->JUnit Test”。如何让Eclipse以命令行上运行测试的相同顺序运行测试 谢谢,-DaveJUnit测试运行的顺序不受设计的保证,如中所

我在Mac10.9.5上使用Maven 3.2.3、SureFire 2.17、JUnit 4.11和EclipseJuno。我注意到,当我通过命令行运行JUnit测试时

mvn test -Dtest=MyTest
文件“MyTest.java”中的各个测试的运行顺序不同于我在Eclipse中运行它们时的顺序,方法是右键单击类名并选择“RunAs->JUnit Test”。如何让Eclipse以命令行上运行测试的相同顺序运行测试


谢谢,-Dave

JUnit测试运行的顺序不受设计的保证,如中所述。这样做是为了促进测试独立性的概念,这将确保测试将清晰、独立地测试其用例,并简化可维护性


这意味着,当您在Eclipse中运行测试时,顺序是不能保证的,并且会不断变化。本节介绍了如何修复顺序,尽管这不是一个好的做法。

如果测试运行的顺序影响结果,则表明测试之间存在依赖关系,这是一种代码味道。如果是这样的话,重构是明智的。我感谢你的建议。但这不是我的问题。为什么你关心测试的运行顺序?可能是重复的