2014-09-22 54 views
0

我有两个测试类A和B.现在B依赖A来测试数据,我在B中测试的Web服务开始仅在5分钟后才反映A的结果。所以,我想等5分钟,并且想要进行几次完全不依赖于A或B的测试,如果它们完成了,仍然5分钟还没有结束,我准备等待,并且在5分钟后我才去对于B.有没有什么好的方法可以在testng中实现呢?在testng中处理依赖和测试之间的时间差

回答

0

并行测试执行可能是一种方式。

如果您正在使用Maven,您可以配置此作为参数Maven的万无一失,插件:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <version>2.17</version> 
    <configuration> 
     <parallel>methods</parallel> 
     <threadCount>10</threadCount> 
    </configuration> 
</plugin> 

https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html

不确定常春藤或摇篮,但它有可能也。

+0

但它是如何解决等待5分钟的问题。所以,我使用testng xml来运行我的测试,我可以要求并行执行测试。但是它仍然不能确保测试B在A 5分钟后得到执行,除非我在等待5分钟后从A触发b。这是你的建议吗? – Shamik 2014-09-22 10:14:40

+0

我虽然你的问题是所有其他的测试在长时间的B测试执行期间被阻塞。 – luboskrnac 2014-09-22 10:36:28

+0

你在DB中有没有触发器?您是否意识到,测试依赖于彼此以及数据库配置是不好的做法。理想情况下,每个集成测试都会在'@ BeforeClass'中准备其数据以进行测试。并在'@ AfterClass'中整理DB。当你打破这种依赖关系时,你的问题就消失了。 – luboskrnac 2014-09-22 10:39:39