一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就接着来谈谈关于软件测试中的“web_submit_data、web_custom_request”。
性能测试分为:GUI性能和接口性能测试。今天给大家详讲一下接口性能测试的内容。
关于接口我们这里主要介绍两种协议:HTTP协议和WSDL协议,主要使用到的函数为:web_submit_data、web_custom_request、web_service_call。
一、web_submit_data
web_submit_data函数的语法
int web_submit_data( const char *StepName, const char *Action,
Attributes>, ITEMDATA, , [ EXTRARES,
Attributes>,] LAST );
参数说明:
StepName:表示步骤名。
Action:表示本次测试需求测试的对象,"Action="
Method:表示提交请求的方法:post或get,默认为post
EncType:表示请求头中发送的编码格式,如果不确定编码格式,那可以通过抓包工具查看header中content-type的值即可。
--->"EncType=application/x–www–form–urlencoded"
--->"EncType=multipart/form–data"
RecContentType:表示服务器的响应断言,即response响应返回的数据格式,一般情况下为text/html
Referer:表示相关联的URL地址
Snapshot:表示快照信息
Mode:表示录制模式,HTTP表示是使用URL录制
ITEMDATA:表示我们需要提交的数据,提交数据的语法格式如下:
"Name=n1", "Value=v1", ENDITEM,
一般来说提交数据的格式通常会有两种:一是表单格式;二是json格式。
我们提交的数据,通常是我们说的数值,但还有一种情况我们会提交一个文件上传"Name=n1", "Value=path", "File=YES",ENDITEM,文件路径是双斜扛
例如:
"Name=goods_img", "Value=C:\\2.jpg", "File=Yes", ENDITEM,
二、web_custom_request
web_custom_request函数的语法:
int web_custom_request( const char *RequestName, ,
[EXTRARES, ,] LAST );
参数说明:
RequestName:表示请求名
URL:表示我们要测试的页面
Method:表示提交请求的方法:post或get,默认为post
Resource:表示是否是一个关键的URL地址,如果设置为1那么如果有相关的提示不会被显示,如果设置为0表示不受RTS设置影响
EncType:表示请求头中发送的编码格式,如果不确定编码格式,那可以通过抓包工具查看header中content-type的值即可。
--->"EncType=application/x–www–form–urlencoded"
--->"EncType=multipart/form–data"
RecContentType:表示服务器的响应断言,即response响应返回的数据格式,一般情况下为text/html
Referer:表示相关联的URL地址
Snapshot:表示快照信息
Mode:表示录制模式,HTTP表示是使用URL录制
Body:表示需要提交的数据
body提交数据的方式有三种:一是表单格式数据;二是json格式数据;三是二进制格式的数据表单格式数据的语法:
"Body=参数1=值1&参数2=值2&....&参数n=值n"
"Body=username=test&password=111111&act=act_login&back_act=http://192.168.40.134
:8091/ecshop3/&submit="
JSON数据的语法
"Body={\"参数1\":值1,\"参数2\":值2,....\"参数n\":值n}"
\:表示转译符
"Body=goods={\"quick\":1,\"spec\":
[],\"goods_id\":36,\"number\":\"1\",\"parent\":0}"
二进制格式传输数据的语法:
"BodyUnicode=REPRICE"
"BodyBinary=\\x08\\x00\\xCC\\x02\\x00\\x00"
"Body=.\r\n"
"–dxjjtbw/(.tp?eg:ch/6––\r\n",