轻量级接口性能测试工具ContiPerf
上一篇 / 下一篇 2016-02-25 11:04:48 / 个人分类:性能测试
1、ContiPerf介绍
可以指定在线程数量和执行次数,通过限制最大时间和平均执行时间来进行效率测试,一个简单的例子如下:
1 2 3 4 5 6 7 8 9 10 11 | public class ContiPerfTest { @Rule public ContiPerfRule i = new ContiPerfRule(); @Test @PerfTest (invocations = 1000 , threads = 40 ) @Required (max = 1200 , average = 250 , totalTime = 60000 ) public void test1() throws Exception { Thread.sleep( 200 ); } } |
也可以通过对类指定@PerfTest和@Required,表示类中方法的默认设置,如下:
配置方式如下:
三个属性可以组合使用,其中Threads必须和其他两个属性组合才能生效。当Invocations和Duration都有指定时,以执行次数多的为准。
例,@PerfTest(invocations = 300, threads = 2, duration = 100),如果执行方法300次的时候执行时间还没到100ms,则继续执行到满足执行时间等于100ms,如果执行到50次的时候已经100ms了,则会继续执行之100次。
如果你不想让测试连续不间断的跑完,可以通过注释设置等待时间,例,@PerfTest(invocations = 1000, threads = 10, timer = RandomTimer.class, timerParams = { 30, 80 }) ,每执行完一次会等待30~80ms然后才会执行下一次调用。
在开多线程进行并发压测的时候,如果一下子达到最大进程数有些系统可能会受不了,ContiPerf还提供了“预热”功能,例,@PerfTest(threads = 10, duration = 60000, rampUp = 1000) ,启动时会先起一个线程,然后每个1000ms起一线程,到9000ms时10个线程同时执行,那么这个测试实际执行了69s,如果只想衡量全力压测的结果,那么可以在注释中加入warmUp,即@PerfTest(threads = 10, duration = 60000, rampUp = 1000, warmUp = 9000) ,那么统计结果的时候会去掉预热的9s。
相关阅读:
- web服务器测试工具Gulu——HTTP接口测试工具 (cecilialili, 2016-6-08)
- RF 接口自动化实现[0:'准备启程'] (manyanyanmo, 2016-6-09)
- 使用Jmeter进行http接口测试 (sll101010, 2016-6-17)
- Webdriver 利用java接口实现页面元素与脚本分离 (lp20105203344, 2016-6-18)
- 如何设计接口用例 (赖上习惯, 2016-6-23)
- 转-WEB自动化测试中的接口测试 (大尾巴羊, 2016-7-07)
- 接口测试要点 (ice1016, 2016-7-27)
- 接口测试 (songdongqin, 2016-8-09)
- (转载)LoadRunner接口测试的例子 (babyfeir, 2016-8-19)
TAG: 接口
标题搜索
日历
|
|||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
1 | 2 | 3 | 4 | 5 | 6 | ||||
7 | 8 | 9 | 10 | 11 | 12 | 13 | |||
14 | 15 | 16 | 17 | 18 | 19 | 20 | |||
21 | 22 | 23 | 24 | 25 | 26 | 27 | |||
28 | 29 | 30 |
我的存档
数据统计
- 访问量: 168192
- 日志数: 43
- 建立时间: 2013-07-30
- 更新时间: 2016-04-13
清空Cookie - 联系我们 - 51Testing软件测试网 - 交流论坛 - 空间列表 - 站点存档 - 升级自己的空间
Powered by 51Testing
© 2003-2021
沪ICP备05003035号