[发明专利]单元性能测试方法及设备有效
申请号: | 201710118033.X | 申请日: | 2017-03-01 |
公开(公告)号: | CN107153601B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 周博 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 上海百一领御专利代理事务所(普通合伙) 31243 | 代理人: | 陈贞健;王路丰 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 单元 性能 测试 方法 设备 | ||
本发明的目的是提供一种单元性能测试方法及设备,本申请通过在单元测试框架中,根据所述属性并启动多线程对所述待测试单元进行测试得到性能测试结果,能够实现对未经部署的单元做性能测试,另外,通过在单元测试框架中,将性能测试结果与所述期望值进行比较,判断测试成功或失败,能够实现自动对性能测试结果进行评估,且本申请可回归执行,方便再次评估,无需人工介入。
技术领域
本发明涉及计算机领域,尤其涉及一种单元性能测试方法及设备。
背景技术
传统的单元测试框架如Junit等无法执行性能测试,其中Junit是一个Java语言的单元测试框架。而传统的性能测试工具如Jmeter、loadrunner等,一般都要求系统被部署成功才能进行测试,即有明确“入口”的系统,“入口”更多的是指可以被远程访问到的一种方式,比如http、rpc等,另外,传统性能测试工具在执行性能测试时,只返回性能测试结果,而无法对性能测试结果进行评估,需要人工对性能结果进行二次确认并编写性能测试报告,费时费力。
发明内容
本发明的一个目的是提供一种单元性能测试方法及设备,能够解决对未经部署的单元做性能测试和自动对性能测试结果进行评估的问题。
根据本发明的一个方面,提供了一种单元性能测试方法,该方法包括:
定义待测试单元的性能测试的属性和性能测试结果的期望值;
在单元测试框架中,根据所述属性并启动多线程对所述待测试单元进行测试得到性能测试结果;
在单元测试框架中,将性能测试结果与所述期望值进行比较,判断测试成功或失败。
进一步的,上述方法中,判断测试成功或失败之后,还包括:
根据判断的结果生成测试报告。
进一步的,上述方法中,所述属性包括:
待测试单元执行的次数、同时执行的线程数、增加线程的间隔时间、加载完毕所有线程的时间及有无集合点。
进一步的,上述方法中,所述属性包括:
在指定时间范围内一直执行测试、同时执行的线程数、增加线程的间隔时间、加载完毕所有线程的时间及有无集合点。
进一步的,上述方法中,定义待测试单元的性能测试的属性,包括:
以注解的方式在待测试单元内定义待测试单元的性能测试的属性和性能测试结果的期望值。
进一步的,上述方法中,所述性能测试结果包括:待测试单元的实际平均吞吐量和待测试单元的实际平均每一次的响应时间中的一种或任意组合。
进一步的,上述方法中,所述性能测试结果包括:待测试单元的所有执行次数中50%次的实际响应时间和待测试单元的所有执行次数中的最大实际响应时间中的一种或任意组合。
进一步的,上述方法中,根据所述属性并启动多线程对所述待测试单元进行测试得到性能测试结果,包括:
根据所述属性并启动多线程对所述待测试单元进行测试;
获取测试中待测试单元的采样响应时间;
根据所述采样响应时间计算待测试单元的所有执行次数中50%次的实际响应时间和待测试单元的所有执行次数中的最大实际响应时间中的一种或任意组合。
进一步的,上述方法中,所述响应时间包括测试中待测试单元每一次执行的时长和每1秒内待测试单元执行的次数。
进一步的,上述方法中,所述单元测试框架为基于Junit的框架。
根据本发明的另一方面,还提供了一种单元性能测试设备,该设备包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710118033.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:系统开机时记录系统日志的方法
- 下一篇:测试样本的生成方法及装置