Robotframework之接口自动化测试总结

目录

  • 1.1 requestsLibrary,requests安装
  • 1.2 requestsLibrary关键字
  • 1.3 测试案例
    • 1.3.1 get request json
    • 1.3.2 get request xml
    • 1.3.3 增加登录态
    • 1.3.4 post request
1.1 requestsLibrary,requests安装

requests的官方下载地址:https://pypi.python.org/pypi/requests
requestsLibrary的官方下载地址: https://pypi.python.org/pypi/robotframework-requests
下载tar.gz解压安装即可。

1.2 requestsLibrary关键字
关键字 释义
Create Session 创建一个session连接某个服务器
Create Ntlm Session 创建一个session连接某个服务器,加上了域,用户名,密码用于NTLM认证
Get Request 通过Get方式发送请求
Post Request 通过Post方式发送请求
Head Request 发送一个head请求
To Json 将文本转化成json对象
1.3 测试案例
1.3.1 get request json
备注(非正式内容)
Creat Session api 发送请求的网址 首先通过Creat Session创建一个连接到服务器的host
${addr} Get Request api users/1 发起请求,请求的返回是个Request对象${addr}
Should Be Equal As String ${addr.status_code} 200 断言 ${addr}这个对象的状态属性值
LOG ${addr.content} 获取${addr}这个对象的content
${responsedata} To Json ${addr.content} 将content格式化成Json串,方便用Dictionary方法获取其中的值
${Keys} Get Dictionary Keys ${responsedata} Dictionary方法获取Keys,返回的是Keys组成的列表
${Values} Get Dictionary Values ${responsedata} Dictionary方法获取Values,返回的是Values组成的列表
${Items} Get Dictionary Items ${responsedata} Dictionary方法获取Items,返回的是Items组成的列表
${Str} Get From Dictionary ${responsedata} Value对应的Key值 通过Key获取Value
1.3.2 get request xml
备注(非正式内容)
${dict} Creat Dictionary accept=application/xml 在Request的header添加accept=application/xml,表示接收的返回是xml格式
${addr} Get Request api users/1 ${dict} 发起请求,请求的返回是个Request对象${addr}
LOG ${addr.content} 获取${addr}这个对象的content
${responsedata} Set Variable ${addr.content}
${Body} Get Element Text ${responsedata} [ source /xpath=. ] 调取xml库的关键字来获取xml节点的文本
${hello} Get Element ${responsedata} [ source /xpath=. ] 返回元素
LOG ${hello.text} 输出元素属性
${responsedata} Add Element ${responsedata} test 在xml文件中添加内容
${new_id} Add Element Attribute ${responsedata} id 获取属性id
LOG ${new_id}
${a} Element To String ${responsedata} 将获取的element转换成string
Delete All Session
1.3.3 增加登录态

有些接口需要输入用户名,密码登录后才能访问的。因此在Create Session的时候加上用户名,密码就可以了。

备注(非正式内容)
${auth} Creat List 用户名 密码
Creat Session api 发送请求的网址 auth= ${auth} 首先通过Creat Session创建一个连接到服务器的host
${addr} Get Request api users/1 发起请求,请求的返回是个Request对象${addr}
LOG ${addr.content} 获取${addr}这个对象的content
${responsedata} To Json ${addr.content} 将content格式化成Json串,方便用Dictionary方法获取其中的值
${Keys} Get Dictionary Keys ${responsedata} Dictionary方法获取Keys,返回的是Keys组成的列表
${Values} Get Dictionary Values ${responsedata} Dictionary方法获取Values,返回的是Values组成的列表
${Items} Get Dictionary Items ${responsedata} Dictionary方法获取Items,返回的是Items组成的列表
${Str} Get From Dictionary ${responsedata} Value对应的Key值 通过Key获取Value
1.3.4 post request

post提交数据的方式是在header中添加一项“Content-Type=application/x-www-froom-urlencode”或者是“Content-Type=application/json"。Content-Type=application/x-www-froom-urlencode,POST请求时将data序列化,提交的数据会按照 key1=val1&key2=val2 的方式进行编码,key 和 val 都进行了 URL 转码。

备注(非正式内容)
${dict} Creat Dictionary Content-Type=application/x-www-froom-urlencode
Creat Session api 发送请求的网址 ${dict} 首先通过Creat Session创建一个连接到服务器的host
${data} Creat Dictionary username=aaaa password=bbb
${addr} Post Request api post data=${data}
LOG ${addr.content} 获取${addr}这个对象的content
${responsedata} To Json ${addr.content} 将content格式化成Json串,方便用Dictionary方法获取其中的值
${Keys} Get Dictionary Keys ${responsedata} Dictionary方法获取Keys,返回的是Keys组成的列表
${Values} Get Dictionary Values ${responsedata} Dictionary方法获取Values,返回的是Values组成的列表
${Items} Get Dictionary Items ${responsedata} Dictionary方法获取Items,返回的是Items组成的列表
${Str} Get From Dictionary ${responsedata} Value对应的Key值 通过Key获取Value

你可能感兴趣的:(robotframework)