• 【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
    r e s p o n s e g e t r e q u e s t a p i t e s t P a t h p a r a m s = {response} get request apitest Path params=responsegetrequestapitestPathparams={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=
    #请求头内容
    r e s p o n s e p o s t r e q u e s t a p i t e s t P a t h d a t a = {response} post request apitest Path data=responsepostrequestapitestPathdata={params} headers=${heads} #发送post请求,data、headers关键字不能缺失,无请求头的话可以不传headers

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

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

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

    最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

    文档获取方式:

    这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

    以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

  • 相关阅读:
    leetcode题中的非常见方法归纳
    CityJSON
    软著申请需要提供什么
    Maven在开发中的使用及理解
    lnmp环境部署
    混合云和多云:差异和相似之处
    基于Python医学院校二手书管理毕业设计-附源码201704
    【附源码】Python计算机毕业设计天气预报APP
    摄像头工程师说 Camera-如何控制摄像头的输出尺寸(分辨率)
    架构设计的五个核心要素
  • 原文地址:https://blog.csdn.net/2301_79535733/article/details/133623006