最近项目在进行对标测试,顾名思义就是公司产品与竞品之间相同功能进行比较,我负责的是一个审批功能,对比点是“创建成功率”。
思考1:如何得到创建成功率?
一般公式:实验次数/成功次数=成功率 初步设想进行100次实验,成功的次数除以100,来得出成功率
思考2:如何进行100次实验,并且要查看成功次数?
发送100次创建审批的请求,查看成功的次数,由此想到可以先抓一个请求,循环100次
思考3:选择哪个工具?
我对Jmeter比较熟悉,选择了Jmeter这个工具。
由于对标测试的是APP,指定大致步骤: 抓包-->修改请求次数-->发送请求-->查看结果
步骤1:使用Jmeter抓包(该功能与fiddler类似)
cmd-ipconfig 查看ipv4 地址
启动Jmeter,“测试计划”中添加“XXX线程组”,“工作台”中添加“HTTP代理服务器”,
配置代理服务器:Global Settings下面的端口配置:8888,HTTPS Domains配置刚刚查看到的ipv4地址,目标控制器配置:测试计划>线程组
其中,
端口:随意设置;ip:电脑的ip,如下图设置
手机端连接WiFi-长按(Android)或点击感叹号(iOS)-修改网络
“代理”---选择“手动”;
“代理服务器主机名”---cmd-ipconfig查看到的ipv4地址,如“10.200.52.88”
“代理服务器端口”----“8888”
接下来就可以进行抓包了
HTTP代理服务器--点击“
启动”按钮,启动HTTP代理服务器;
启动手机上需要测试的APP,进行业务操作;这个时候可以看到线程组抓到app上发出的请求了
业务操作完毕,立即
停止jemter上的“HTTP代理服务器”,否则一直抓包,线程组中会有很多无用的请求;
在“线程组”删除无关的请求;
保存jmx脚本;
添加察看结果树;
回放
这里需要注意的是,我抓到的只是一个创建审批的请求,但是这个请求的前提是APP已登录,所以需要在请求头中加入cookie,该字段可以在其他请求中找到
步骤2:修改请求次数
点击线程组名称,将循环次数改成100
步骤3:发送请求
点击绿色按钮,开始发送请求
步骤4:查看结果
在发送请求过程中,点击“察看结果树”,可以看到发送的请求是否成功,请求显示为绿色,并且点击每个请求,响应数据显示为200,代表请求发送成功
最后,结果分析
终端查看到新增了100个审批,代表成功率为100%。当然一次实验并不够,可以多实验几次,再取平均值。