节流测试

时间:2013-12-19 00:16:16

标签: java testng

我使用@DataProvider在多线程模式下运行testng(name =“blah”,parallel = true)

我的测试是调用生产服务,我想限制每秒的请求数。有没有办法限制testng?

3 个答案:

答案 0 :(得分:2)

如果您不介意导入番石榴或者您已经使用它,您可以简单地介绍a RateLimiter。换句话说,in your test,而不是:

@Test public void test() { runYourTest(); }
你这样做:

//10 tests per second, for example:
private static final RateLimiter rateLimiter = RateLimiter.create(10.0);

@Test(dataProvider="blah")
public void test() { rateLimiter.acquire(); runYourTest(); }

答案 1 :(得分:0)

我会说测试线程的测试次数 http://testng.org/doc/documentation-main.html#parallel-running
有关如何在XML和@Annotation

中执行此操作的说明,请参阅此文档

答案 2 :(得分:0)

大多数人使用Browsermob Proxy来执行此操作,使用PUT /proxy/[port]/limit API命令,但@assylias建议的解决方案看起来也非常棒。