工作中需要接口测试,报文编辑器一条条手工发费时费力,因此考虑利用web_submit_data函数POST方法进行报文编辑。在报文编辑中主要遇到了三个问题,其中一个问题耗时两天查到问题所在,在这里与大家一块分享。
问题1:我们支持报文头报文体分开的报文和只有一个xml格式的报文并行。因此对只有一个xml格式的报文编辑完后,在LR执行成功,但在系统中没查到相关日志。排查问题时多次编写了报文,并对web_submit_data函数的配置进行更改、对参数化的变量进行多次检查.......,就在今天早上,早早的来到公司,打开LR,重新写了两个脚本排查问题,当我把"Name=xml","Value=......."改为"Name=xmldata"后,执行脚本,LR控制台提示成功,系统前台成功展示日志。随后又试了"Name=xml1"、"Name=xmlqaz"、"Name=xmlaaa".......系统前台都不能出现日志,现在思索:只有一个xml格式的脚本,Name只能等于xmldata才能成功?
问题2:编辑完报文头、报文体分开的脚本后,执行LR后,系统前台没有展示日志。重新编辑脚本,依次点击Insert-->New Step-->Add Step-->Submit Data后,Record mode、Encoding Type、Encode "at" sign as ASCII选项不打勾,配置完后,再次执行脚本,系统前台查询界面查到日志。思考:HTML/HTTP模式下,如果不选择,LR脚本优先选择HTML模式,难道包含多个xml格式的脚本更适用于HTML模式?
问题3:问题2解决完后,前台查询界面出现的日志号与LR控制台打印的日志号不一致。最后,进入参数化Parameter type界面,Update value选项由Each iteration改为Once,再次执行脚本,系统前台日志号与LR控制台打印日志号一致。然后,又把Once改回原来的Each iteration,系统前台日志号与LR控制台打印日志号一致。
至此,编写LR接口测试脚本遇到的问题全部解决,解决所有问题花费了将近3天。希望分享的东西对正在奋斗路上的伙伴们有所帮助。