Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.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
Java 如何找到影响其他测试执行的测试?_Java_Gradle_Junit - Fatal编程技术网

Java 如何找到影响其他测试执行的测试?

Java 如何找到影响其他测试执行的测试?,java,gradle,junit,Java,Gradle,Junit,我目前正在努力解决一个相当棘手的问题:我正在从事一个项目,该项目有大约8000个单元测试(在非常强大的机器上执行需要15分钟),并且当前失败的测试在它们或自己的机器上运行时不会失败(或者与其他失败的测试一起运行时),所以我猜有些测试通过了,但留下了一些混乱 我目前正在尝试使用gradle从特定软件包运行这些测试: test { filter { includeTestsMatching 'some.package.*' includeTestsMatchi

我目前正在努力解决一个相当棘手的问题:我正在从事一个项目,该项目有大约8000个单元测试(在非常强大的机器上执行需要15分钟),并且当前失败的测试在它们或自己的机器上运行时不会失败(或者与其他失败的测试一起运行时),所以我猜有些测试通过了,但留下了一些混乱

我目前正在尝试使用gradle从特定软件包运行这些测试:

test {
    filter {
        includeTestsMatching 'some.package.*'
        includeTestsMatching '*Test1'
        includeTestsMatching '*Test2'
    }
}
然而,有些事情我不知道如何控制,比如测试类的执行顺序(如果有人知道如何改变顺序,这也会对我有所帮助)


也许有人已经知道了一些发现影响其他测试的测试的好方法?

假设使用junit测试,那么:

  • 定义指定测试类顺序的
  • 确保您正在使用JUnit4.11或更高版本来获取
  • 仅从gradle(或直接从ide)运行测试套件
  • 通过编辑套件调整顺序,直到重现问题

  • 假设junit测试,那么:

  • 定义指定测试类顺序的
  • 确保您正在使用JUnit4.11或更高版本来获取
  • 仅从gradle(或直接从ide)运行测试套件
  • 通过编辑套件调整顺序,直到重现问题

  • 单元测试不应影响其他单元的功能或结果test@Stultuske当然:)但如果我找不到它,恐怕我就修不好:/Use。如果整个测试总是失败,那么每次测试的执行顺序可能都是相同的。或者,如果您可以跟踪测试开始失败的时间点,这可能是解决此问题的关键。。。我如何才能确保顺序保持不变?也许测试过滤器会影响顺序,因为到目前为止,我无法在较小的样本上重现问题…“我如何确保顺序保持不变”。。。基本上,你不能。一个单元测试不应该影响另一个单元的功能或结果test@Stultuske当然:)但如果我找不到它,恐怕我就修不好:/Use。如果整个测试总是失败,那么每次测试的执行顺序可能都是相同的。或者,如果您可以跟踪测试开始失败的时间点,这可能是解决此问题的关键。。。我如何才能确保顺序保持不变?也许测试过滤器会影响顺序,因为到目前为止,我无法在较小的样本上重现问题…“我如何确保顺序保持不变”。。。基本上,你不能。