说明:
1.所有接口测试前,需要导入requests库、RequestsLibrary库、DateTime库
2.测试所用demo请参考:接口demo地址
1.普通get接口,不带参数请求
测试套件配置了请求url,常量{url}=http://xx.com
请求:{url}/xx/xx
get:/pinter/com/getSku
返回数据格式:
rf编写
text edit:
${
response_data}= requests.get ${
url}/pinter/com/getSku
Should Be Equal As Strings ${
response_data.status_code} 200
#查看返回数据
log ${
response_data.content}
#断言结果
Should Be Equal As Strings ${
response_data.json()['message']} skuId不能为空
log界面
2.普通get接口,带参数请求
测试套件配置了请求url,常量{url}=http://xx.com
get请求:{url}/pinter/com/getSku?id=123
返回数据格式:
rf编写
创建session服务器链接
get请求把url和数据传入
判断响应状态码是否为200
断言返回数据结果是否正确
text edit:
create session api ${
url}
${
response_data} get request api /pinter/com/getSku?id=${
skuid}
log ${
response_data}
Should Be Equal As Strings ${
response_data.status_code} 200
#查看返回数据
log ${
response_data.content}
#断言结果
Should Be Equal As Strings ${
response_data.json()['message']} success
Should Be Equal As Strings ${
response_data.json()['data']['skuId']} ${
skuid}
Should Be Equal As Strings ${
response_data.json()['data']['skuName']} ptest-${
skuid}
log界面:
3.post接口,参数为k=v格式
post:/pinter/bank/api/login
参数:userName=admin&password=1234
rf编写:
第一步将参数存入${params},在第三步post请求的时候传入参数;
最后,获取返回的cookie存入全局变量,供其他需要该cookie的接口使用;
text edit:
${
params} create_dictionary userName=${
username} password=${
password}
create session api ${
url}
${
response_data} post request api