当前位置 博文首页 > 个人微信:xiaobotester,添加进行学习交流请备注。 个人微信公

    个人微信:xiaobotester,添加进行学习交流请备注。 个人微信公

    作者:[db:作者] 时间:2021-07-03 16:02

    前置条件:

    一个可供练习的项目:部署教程

    搭建好RF基础环境:RF环境搭建教程

    本次练习使用的项目地址:http://8.129.162.225:8082/swagger-ui.html

    操作步骤:

    • 使用pip命令安装RF发送接口请求所需的python插件

    pip install -U requests
    pip install -U robotframework-requests
    
    • 打开后端swagger接口文档地址,挑选接口用来练习

    • 用例设计

    logincase:

    其中用例中用到的Get From Dictionary关键字来自于Collections,因此注意需要导入该Library之后方可使用。

    可复制版本的用例如下,方便大家复制下去练习:

    *** Settings ***
    Library           RequestsLibrary
    Library           Collections
    
    
    *** Test Cases ***
    login
        Create Session    api    http://8.129.162.225:8082
        ${params}    Create Dictionary    username=demo    password=demo
        ${res}    Post Request    api    /account/login    params=${params}
        Should Be Equal As Strings    ${res.status_code}    200    #判断返回结果是不是200
        ${res}    To Json    ${res.content}    #将相应结果转换为json格式
        ${resdata}    Get From Dictionary    ${res}    data
        ${token}    Get From Dictionary    ${resdata}    token
        log    ${res}
        log    ${token}
        Set Suite Variable    ${token}
    
    
    info
        Create Session    api    http://8.129.162.225:8082
        ${headers}    Create Dictionary    Authorization=${token}
        ${res}    Get Request    api    /account/info    headers=${headers}
        Should Be Equal As Strings    ${res.status_code}    200    #判断返回结果是不是200
        ${res}    To Json    ${res.content}    #将相应结果转换为json格式
        log    ${res}
    
    
    

    以上2个case实现了 调用登录接口,并从登录接口中获取返回值中的token,传入info接口获取当前登录用户的相关信息。

    用到的关键字说明:

    • Create Session????创建一个会话

    • Create Dictionary????创建一个字典

    • Post Request????发送post请求

    • Get Request????发送get请求

    • Set Suite Variable????设置套件级别的变量,作用域在套件内

    • Get From Dictionary????从字典中取值

    • To Json????将结果转换为json

    • Should Be Equal As Strings????用来对比2个字符串是否相等

    总结:

    从以上的案例中,对RF框架进行http协议的接口请求发送有了一定的了解,掌握了上面用到的一些关键字之后,已经可以完成大部分接口的操作,接下来可以从以下几个方面去着手深入的学习:

    1、对于目前响应结果中的token提取操作比较麻烦,思考如何简化操作

    2、https协议以及其他的协议如何利用RF框架去完成

    3、结合其他未使用过的关键字,以及如何自定义关键字,优化现有脚本结构

    对以上内容有疑问的,可以关注小编公众号,在公众号后台聊天窗口直接留言,小编看到后为大家解惑。如果文章对您有帮助,也请帮忙点赞转发,让更多的同行可以看到。

    往期推荐

    RobotFramework实战篇-PC端web自动化demo及持续集成

    RobotFramework基础篇-环境搭建

    接口自动化测试练习网站搭建

    cs