从0到1构建美团压测工具
作者:网络转载 发布时间:[ 2016/3/3 13:49:41 ] 推荐标签:软件测试
压测逻辑实现
压测工具采用Groovy来进行编写。对每个应用来说,只需要实现runner接口可以实现对应用的打压。
interface Runner {
def init(Test app)
def run(Test app, String log)
def destroy(Test app)
}
以Thrift服务为例:
class TestServiceRunner implements Runner {
RPCService.Client _client
TTransport _transport;
@Override
def init(Test app) {
def conf = app.config // 读取应用配置
_transport = new TFramedTransport(new TSocket(conf.get("thrift_service_host") as String, conf.get("thrift_service_port") as int))
TProtocol protocol = new TBinaryProtocol(_transport)
_client = new RPCService.Client(protocol)
_transport.open()
}
@Override
def run(Test app, String log) {
TestRequest req = Vcr.deSerialize(log, TestRequest.class) // 将拷贝流量反序列化
_client.echo(req) // 发送请求
}
@Override
def destroy(Test app) {
_transport.close() // 关闭服务
}
}
创建应用
实现以上接口后,可以对应用进行打压了。
用户可以通过Web界面创建应用,除了必填配置以外,用户可以按照应用灵活配置。
性能指标
用户可以通过直观的图表来查看应用的各种性能指标。
结束语
压测工具上线以来,已经接入了20多个应用,完成数百次打压实验,现在应用的接入时间仅需要15~30分钟。保证了美团服务的稳定和节省了开发同学的时间,使大家告别了以往繁琐冗长的打压测试。
欢迎对这方面有兴趣的同学一起讨论。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。
相关推荐
软件测试常用的工具都有哪些?国内外软件测试工具都在这里了2017年常用软件测试工具学习教程大全AutoRunner自动化软件测试工具2016年1月8日V4.0版本已正式发布!软件测试工具TestDirector规范软件测试工具WinRunner的问题整理软件测试工具WinRunner的规则软件测试工具Winrunner TSL命令简介软件测试工具WinRunner脚本测试标准格式使用软件测试工具WinRunner的几点建议软件测试工具WinRunner的工作流程对软件测试工具的认识常用软件测试工具的分析VectorCAST-自动化软件测试工具浅谈软件测试工具在工作中的作用软件测试工具的比较和选择软件测试工具速查手册
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11热门文章
常见的移动App Bug??崩溃的测试用例设计如何用Jmeter做压力测试QC使用说明APP压力测试入门教程移动app测试中的主要问题jenkins+testng+ant+webdriver持续集成测试使用JMeter进行HTTP负载测试Selenium 2.0 WebDriver 使用指南