• robot framework 接口自动化之登录


    网络不便,好久没更了,颓废好久,惭愧

    目录

    1、安装必须的库

    2、固定格式介绍

    3、完成一个登录

    1、安装必须的库

    requestsLibrary、requests安装

    1、pip install requests

    2、pip install robotframework-requests

    2、固定格式介绍

    第一步:创建一个项目,File->New Project,文件格式选择Directory

    第二步:创建一个测试套件,文件格式选择File;然后导入库文件

    选中项目,然后右键创建测试套件

    导入库文件:

    requests、和RequestsLibrary是前面装好的

    Collections:是RobotFramework用来处理列表和字典的库

    Builtin:should be之类的关键字

    requests:提供了http所有的基本请求方式

    RequestsLibrary:Create Session、Get Request、Post Request、To Json 

    Collections、Builtin、requests、RequestsLibrary为常用的库文件,其中Builtin是默认自带,不用导入。点击library,然后填写库的名称,保持即可完成添加,name没有显示成红色,则导入成功,否则有误

     

    第三步:添加脚本

    由于是请求接口,所以我们要与服务器建立连接,首先要使用Create Session关键字创建连接

    Create Session    XXX   服务器地址

    然后再根据请求情况,传入header、body、url等

    3、完成一次登录

       登陆脚本如下,以下展示了2种json处理方式

        Create Session    api    http://localhost:8090/jpress
    
        ${headers}    Create Dictionary    Content-Type=application/x-www-form-urlencoded
    
        ${data}=    Create Dictionary    username=root    password=123456
    
        ${m}=    Post Request    api    /admin/login    headers=${headers}    data=${data}
    
        log    ${m.json()['message']} //方法1
    
        ${m}    To Json    ${m.content} //方法2
    
        ${a}    Get From Dictionary    ${m}    message
    
        log    ${a}
    

      

    注意:

    1、Project用Directory格式而不是File格式,是因为Directory是代表目录,可以继续添加下一层级目录或者File,但是File格式只能添加用例,不可以继续有下一个目录层级

    2、添加下一目录层级可以在项目上右键->New Directory,文件格式选择Directory,添加完成后再添加测试套件,完成用例的添加

    3、json格式的响应结果的提取可以用图上的2种方式,若是json有多层级,则继续用Get From Dictionary提取更深层级的内容:如m参数是data下一级

    4、传header时,要用Create Dictionary赋值,而且后面的格式类型需要用“=”号连接;body可以用Set Variable传值,也可以用Create Dictionary,但是用Create Dictionary时,必须要用等于号赋值。二者传值最终如下:

    5、https的请求,可以在Create Session时,在末尾加上verify=True,这样就不会出现警告

    https://blog.csdn.net/weixin_43639512/article/details/86539774运行报错

  • 相关阅读:
    (转) SpringBoot非官方教程 | 第一篇:构建第一个SpringBoot工程
    Swagger2 生成 Spring Boot API 文档
    tar命令解压时如何去除目录结构及其解压到指定目录 (--strip-components N)
    Alpine Linux配置使用技巧【一个只有5M的操作系统(转)】
    配置Tomcat直接显示目录结构和文件列表
    React package.json详解
    Ubuntu中的“资源管理器”System Monitor
    Ubuntu18.10下安装Qt5.12过程记录
    QT QTransform与QMatrix 有啥区别?
    QT运行出错:QObject::connect: Parentheses expected以及QObject::connect: No such slot ***
  • 原文地址:https://www.cnblogs.com/weizhideweilai/p/10947438.html
Copyright © 2020-2023  润新知