• 基于SaaS平台的iHRM管理系统测试学习


    目录

    目录

    1、登录模块

    2、员工管理模块

    3、Postman+newman软件的安装,学习

    1、Postman的使用

    2、Postman断言

    3、全局变量和环境变量

    4、请求时间戳

    5、Postman关联

    6、批量执行测试用例

    7、Postman生成测试报告

    8、Postman读取外部数据文件(参数化)

    1、CSV

    2、Json

    3、参数的使用

    4、参数化案例-用手机号找运营商​​​​​​​ 



    1、登录模块

    • 登录成功
    • 登录失败
    1. 用户名为空
    2. 用户名错误
    3. 用户名有特殊字符
    4. 用户名太长
    5. 用户名太短
    6. 密码错误
    7. 密码为空
    8. 密码过长
    9. 密码过短
    10. 密码有特殊字符
    11. 含有用户名和密码俩参数
    12. 少参
    13. 多参
    14. 参数错误
    15. 无参

    2、员工管理模块

    • 员工的增加
    • 员工的删除
    • 员工的修改
    • 员工查询
    • 员工列表的显示

    3、Postman+newman软件的安装,学习

    Postman+newman

    1、Postman的使用

    新增测试用例集,新增功能模块,新增请求(1,2中的内容,包括请求方法,请求url,请求行,请求头,请求体),测试用例集的导出,测试用例集的导入

    2、Postman断言

    1、断言状态码(重要)

    2、断言包含某个字符串(contains string)

    3、断言等于某个字符串(equal string)

    4、断言Json数据(重要)

    1. /* 举例:response.json();
    2. {
    3. "success": true,
    4. "code": 10000,
    5. "message": "操作成功!",
    6. "data": "95c78d75-721c-40fb-b2d5-742fea42cbd5"
    7. }
    8. */

    5、断言响应头 header

    6、Postman断言原理

    3、全局变量和环境变量

    1. #全局变量设置
    2. pm.globals.set("glb_age", 100)
    3. #全局变量获取
    4. var ret = pm.globals.get("glb_age") // ret 的值为 100
    5. #环境变量设置
    6. pm.environment.set("env_age", 99)
    7. #环境变量获取
    8. var ret = pm.environment.get("env_age") // ret 的值为 99
    9. 请求参数获取(postman界面获取)
    10. {{env_age}}

    4、请求时间戳

    1)获得时间戳,传递给变量

    2)将变量设为全局变量

    3)查看全局变量是否设置成功(点击send ,查看右上角眼睛)

    4)在请求参数(界面)中使用全局变量

    5)在 postman的 控制台,查看 发送的 http请求 view->show Postman Console

    5、Postman关联

    应用于多个http请求之间,有数据关联和依赖关系时,将前一个接口获取的数据传递给下一个接口。

    A,B接口依赖数据(登录接口与添加员工接口)登录接口->获得令牌->添加员工信息

    1)B发送http请求,获得数据

    2)将数据设为全局变量

    3)A接口获得全局变量的值,进行http请求

    6、批量执行测试用例

    7、Postman生成测试报告

     1)批量执行测试文件(确认无误)

    2)批量导出测试文件(得到 xxxx.json文件)

    3)利用Newman代码在终端中执行命令,生成测试报告

    1. ```shell
    2. # 现在 终端中,测试一下。
    3. newman run xxxx.json
    4. # 完整的命令
    5. newman run xxxx.json -e 环境变量文件 -d 外部数据文件 -r html
    6. --reporter-html-export 测试报告名.html
    7. # 示例:
    8. newman run 批量执行测试用例.postman_collection.json -r html
    9. --reporter-html-export 我的第一个测试报告.html
    10. # 如果添加 -r html 就报错!说明: newman-reporter-html 安装失败!
    11. ```

    8、Postman读取外部数据文件(参数化)

    注意:文件读取时会逐行读取!!!

    应用:当http请求,使用的数据有较高相似度,相同的请求时,考虑使用参数化

    1、CSV

    1)创建 xxx.csv 文件。

    2)将数据写入到 csv文件中(保存时右下角编码类型设置为utf-8)。

    •  第一行 写入 的是 数据对应的 “字段名”
    • 从第二行向后依次是对应的数值,数据间用 英文逗号隔分。

    3)在 Postman 中,选中使用数据文件的 用例集,导入数据文件。

    2、Json

    1)创建 xxx.json 数据文件

    2)在 数据文件中,按json 语法写入json数据。postman要求,json格式的数据文件,数据内容的最外层,必须是 [ ] 。内部所有的数据用 {} 存储。( 建议:使用 json.cn 在线网站编写。)
    3)在 Postman 中,选中使用数据文件的 用例集,导入数据文件。

    • 同CSV

    3、参数的使用

    - 第一种:**请求参数**(请求行、请求头、请求体)中
         **使用 {{}}** 包裹 csv 文件 字段名 或 json 文件中的  key 
            - 如:
    {{username}}  或 {{password}}
    - 第二种:**代码**(断言、请求前置脚本)中
        - 需要借助 postman 提供的 **关键字data** 点 csv 文件的字段名 或 json文件的 key
            - 如:
    data.username  或  data.password


    4、参数化案例-用手机号找运营商 

    1)创建用例集->创建查找手机号的http请求->点击run collection

    2)导入.csv文件或者.json文件

    3)在断言界面3.2格式,在请求参数界面使用3.1格式,点击run 参数化用例集,完成用手机号找运营商

    9、Postman参数化-生成测试报告

    1.  批量执行测试用例(借助数据文件)(8中内容)

    2.  导出 测试用例集 (建议与 数据文件 放在一起)

    3.  执行生成测试报告的命令(cmd)

    1. newman run 用例集名称.json -d 数据文件名.csv/.json -r html --reporter-html-export
    2. 报告名称.html

  • 相关阅读:
    生信教程|最大似然系统发育推断
    10架构管理之公司整体技术架构
    Kubernetes云原生实战03 搭建高可用负载均衡器(Keepalived 和 HAproxy)
    不是所有数据增强都可以提升精度
    SpringCloud nacos1.x.x版本升级到2.2.3版本并开启鉴权踩坑
    kubernetes数据持久化PV-PVC详解(一)
    潜艇来袭(Qt官方案例-2维动画游戏)
    聚N-乙烯基乙酰胺接枝丙烯腈/苯乙烯聚合物微球PNVA-g-PAN/PSt的制备与表征过程
    C#WPF相对好看的登录界面
    Python程序员好像就没有遇到过听不了的歌~
  • 原文地址:https://blog.csdn.net/qq_45884215/article/details/139938349