线程并行如何在TestNg中为DataProvider工作?如何为DataProvider指定线程数?

问题描述 投票:0回答:1

我们在TestNg的@Test注释中使用了threadcount属性,但@DataProvider注释没有这样的属性,所以可以指定Dataprovider的线程数,如果是,那么如何?我在@DataProvider注释中指定了Parallel = true并尝试从Excel中读取数据,有19组测试数据,当执行时默认情况下我发现创建了10个线程。我使用Thread.currentThread()和每组测试数据来显示正在使用的线程,但我无法理解10个线程被创建的过程和原因.Output

multithreading testng dataprovider
1个回答
0
投票

这是因为在DataProvider上将parallel设置为true时,testng将使用10作为默认值。这可以由套件标记上的data-provider-thread-count属性覆盖。例:

<suite name="Sample Suite" data-provider-thread-count="20">
  <test name="Component Tests">
    <packages>
        <package name="com.something.tests" />
    </packages>
 </test>
</suite>

DataProvider上的testng文档有以下内容:http://testng.org/doc/documentation-main.html#parameters-dataproviders

© www.soinside.com 2019 - 2024. All rights reserved.