通过Har生成测试脚本 (LR 为例)
作者:网络转载 发布时间:[ 2016/9/7 14:53:39 ] 推荐标签:接口测试 脚本 测试用例
if '_charlesStatus' in rsp and rsp['_charlesStatus'] != 'Complete':
continue
lrsc['method'] = req['method']
lrsc['url'] = req['url']
headers = req['headers']
# http head
header_dic = list2dic(headers)
if 'SOAPAction' in header_dic:
lrsc['SOAPAction'] = header_dic['SOAPAction'].replace('"', '\"')
if 'Referer' in header_dic:
lrsc['Referer'] = header_dic['Referer']
if 'Content-Type' in header_dic:
lrsc['Content-Type'] = header_dic['Content-Type']
if lrsc['method'] == 'GET':
pass
elif lrsc['method'] == 'POST':
if 'postData' in req:
if 'text' in req['postData']:
lrsc['posttext'] = req['postData']['text']
if 'params' in req['postData']:
lrsc['postparams'] = req['postData']['params']
if 'mimeType' in req['postData']:
lrsc['postmime'] = req['postData']['mimeType']
else:
continue
res.append(dict2lr(lrsc))
return res
if __name__ == '__main__':
parse = OptionParser()
parse.add_option("-f", action="store", dest="harfile", help='harfile path')
parse.add_option("-o", action="store", dest="lrfile", help='action.c path')
(options, args) = parse.parse_args()
if options.harfile is None or options.lrfile is None:
parse.print_help()
quit()
if not os.path.exists(options.harfile):
print('Har file %s not exist' % options.harfile)
quit()
res = parhar(options.harfile)
file = open(options.lrfile, mode='w', encoding='utf-8')
for sc in res:
file.write(sc)
file.write(" ")
file.close()
print('Output to %s' % options.lrfile)
生成的脚本,可以直接copy到LR中使用,根据需要做参数化和关联,对于不支持通过lr录制的,如接口类,app类的,通过这种方式可以更快的生成脚本。
可能还存在部分未考虑到的问题,如请求并发,编码等问题。需要根据实际情况调整。
其他
对于其他工具,也可以自己解析har生成对应的测试案例、脚本等。
另外,在charles中,还支持web interface,开启后,可以远程管理charles,打开或关闭选项,下载har文件,有需要的可以自己写请求实时远程管理,做到进一步的自动化。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。
相关推荐
使用loadrunner进行压力测试遇到的问题总结LoadRunner检查点loadrunner11的移动端性能测试之脚本录制验证LoadRunner对Ajax内容的校验LoadRunner使用代理录制脚本LoadRunner运行乱码解决方法LoadRunner利用代理模式录制手机脚本loadrunner11中java vuser引用jar包使用LoadRunner监控Windows资源LoadRunner小技巧集锦LoadRunner提高篇:插入检查点与关联函数loadrunner怎么解决录制完成后脚本为空LoadRunner判断是否服务器连接池瓶颈LoadRunner中对Https证书的配置Loadrunner入门篇-Vuser发生器LoadRunner录制手机APP脚本
更新发布
功能测试和接口测试的区别
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 使用指南