我试图并行运行我的TestNG测试,但它们似乎只是运行单线程。我正在尝试使用带有默认内置gradle包装器和Java 1.8.0_45的IntelliJ 14.1.4 Community Edition来运行它们。
我也尝试过使用独立的gradle-2.5。
我当前的build.gradle文件的测试部分如下所示:
test {
systemProperties System.getProperties()
useTestNG() {
parallel 'tests'
threadCount 3
}
}
我也尝试过:
test {
systemProperties System.getProperties()
useTestNG {
options {
parallel = 'tests'
threadCount = 3
}
}
}
和
test {
systemProperties System.getProperties()
useTestNG {
options ->
options.parallel = 'tests'
options.threadCount = 3
}
}
答案 0 :(得分:0)
这取决于你所做的testng.xml。
请参阅以下链接: -
http://howtodoinjava.com/2014/12/02/testng-executing-parallel-tests/
http://testng.org/doc/documentation-main.html#parallel-tests
答案 1 :(得分:0)
我需要使用'methods'
而不是'tests'
,因为我只使用-Dtest.single=TestClassName
运行一个测试类,期望在其中运行所有@Test
方法平行。
相关文件:
parallel="methods"
:TestNG将在不同的线程中运行所有测试方法。依赖方法也将在单独的线程中运行,但它们将遵循您指定的顺序。
parallel="tests"
:TestNG将在同一个线程中的相同<test>
标记中运行所有方法,但每个<test>
标记将位于单独的线程中。这允许您在同一个<test>
中对所有非线程安全的类进行分组,并保证它们将在同一个线程中运行,同时利用TestNG尽可能多的线程来运行测试。来自:http://testng.org/doc/documentation-main.html#parallel-tests