RobotFramework 接口自动化

论坛 期权论坛 脚本     
已经匿名di用户   2022-4-16 00:32   2166   0

RobotFramework 接口自动化

接口自动化需要用到 Requests 和 RequestLibrary 两个第三方库:

Requests 官方下载地址:
https://pypi.python.org/pypi/requests#downloads
RequestLibrary 下载地址:
https://pypi.python.org/pypi/robotframework-requests/

安装方法:
解压文件到文件夹
打开 cmd 命令行
进入到解压的文件夹
执行  setup.py install
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

接口测试需要导入一下几个库:

其中Collections 和 Json 是自带的库
TestLibrary 是自己编写的测试库
DatabaseLibrary 是验证数据库是需要用到的

requestsLibrary 常用的关键字有以下几个:
Create Session: 创建一个 session, 连接某个服务器
Create Ntlm Session: 也是创建一个 session , 只不过加上了域名、用户名、密码用于 NTLM 认证
Get Request: 通过get 方式发起请求
Post Request: 通过 Post 方式发起请求
Head Request: 发送一个 Head 请求
To Json : 将文本转换成json 对象


步骤讲解:
把要请求的URL设置成变量${url}
用${data}获取request.get ${url} 的结果
打印${data.cookies} #主要看一下有哪些cookie 非必须
判断一下${data.header['Content-Encoding']}的值是否是 gzip
打印${data.header}
判断响应码${data.stats_code}是否是200
正则匹配响应内容,结果存放到 ${response}
${response[0]}转成json 对象,存放到${res}
把${res}的内容,获取到${final}变量中
输出${final[5][0]['st']['q']} 这个变量中的值
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

    我们再看一个POST的例子:

    ${data}    set Variable    { "version": "1.0"}     
    ${uri} set variable    /xxxx/xxxx/query            
    ${dict}    create Dictionary   Host=xxx    Content-Type=application/json       
    create session  query   http://api.xxxx.com ${dict}        
    ${response} post request query ${uri}  ${data} headers=${dict}
    ${res} To Json ${response.content}         
    log ${res["result_msg"]}               
    
      
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    步骤讲解:
    请求数据设置成变量${data}
    ${uri} 参数设置
    构造请求头字典${dict}
    创建一个query session
    ${response} 接收请求变量
    ${response.content} 转成json 对象
    打印请求结果中的内容

    分享到 :
    0 人收藏
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    积分:81
    帖子:4969
    精华:0
    期权论坛 期权论坛
    发布
    内容

    下载期权论坛手机APP