zoukankan      html  css  js  c++  java
  • 【Robot Framework】发送GET与POST请求

    做接口自动化时,经常要使用GET与POST请求,那么如何使用RF发送对应的请求呢。

    一、安装RequestsLibrary

    pip install robotframework-requests

    安装以后,导入到对应的测试套件或测试用例中.

    本次主要介绍通过RequestsLibrary来实现接口自动化。

    二、创建会话

    使用create session关键词去创建一个会话,即访问一个URL地址。

    使用格式:

    create session    会话名-可自定义  会话的地址即请求URL

    示例:

    create session    apitest    https://www.baidu.com/
    #创建会话apitest,去访问百度地址

    三、创建GET请求

    格式:

    创建会话

    ${响应结果变量}    get request    请求会话名    /路径?参数名=值 

    示例:

    create session    apitest    http://www.weather.com.cn #创建会话
    ${response}    get request    apitest    /data/cityinfo/101010100.html  #发送GET请求,101010100为城市编码,可使用参数化获取不同城市的天气信息

    如果存在多个参数

    create session    apitest    URL #创建会话
    ${params}    create dictionary    参数1=值1   参数2=值2
    ${response}    get request    apitest    Path   params=${params} #发送GET请求,params关键字不能丢失

    四、创建POST请求

    格式:

    创建会话

    创建请求体

    创建请求头

    创建Post请求:${响应结果变量}    post request    请求会话名    /路径   请求体data=     请求头headers=

    示例:

    create session    apitest    URL #创建会话
    ${data}    create dictionary    参数1=值1   参数2=值2  #请求体,以字典形式传入
    ${heads}  create dictionary    Content-Type=     Cookie=   Authorization=  #请求头内容
    ${response}    post request    apitest    Path   data=${params}   headers=${heads}   #发送post请求,data、headers关键字不能缺失,无请求头的话可以不传headers

    当然脚本也可以做很多优化

    eg:将请求URL、传参、请求头等数据进行参数化,以此来提升自动化脚本的健壮性与可读性。

    也可以添加对响应结果进行断言设置、转存变量并应用与其它接口等,这块内容后续再具体罗列。

  • 相关阅读:
    How Do I Enable Remote Access To MySQL Database Server?
    超越MySQL:三个流行MySQL分支的对比
    自动杀死UNIX僵死的进程 红联Linux门户 中国领先的Linux技术网站 网站导航 Linux企业应用 UniX技术文章
    公司简介_关于我们_知阅网——免费借阅,送还上门
    超越MySQL:三个流行MySQL分支的对比
    reviewboard升级
    Implementing Regular Expressions
    乐维UP IT领域的社交问答
    Price Comparison Script
    Kill the undesired UNIX processes in one go
  • 原文地址:https://www.cnblogs.com/panda-sweets/p/14075729.html
Copyright © 2011-2022 走看看