软件测试(接口测试&业务场景测试)

2023-12-14 10:13:24

软件测试

手动测试

测试用例8大要素

  • 编号
  • 用例名称(标题)
  • 模块
  • 优先级
  • 预制条件
  • 测试数据
  • 操作步骤
  • 预期结果

接口测试(模拟http请求)

接口用例设计

  1. 防止漏测
  2. 方便分配工具,评估工作量和时间
  3. 接口测试测试点
    • 功能
      • 单接口
      • 业务场景
    • 性能
      • 响应生成
      • 兼容性
      • 并发性
      • 服务器资料利用率
    • 安全性
      • 攻击安全
      • 业务安全
接口测试用例文档10要素
  • 编号
  • 用例名称(标题)
  • 模块
  • 优先级
  • 预制条件
  • 请求方法
  • url
  • 请求头
  • 请求体(请求数据)
  • 预期结果

1. 单接口测试

  1. 数值
    • 正向
    • 反向
  2. 参数
    • 正向
      • 必选
      • 可选
      • 全部
    • 反向
      • 多参数
      • 少参
      • 无参
      • 错误参数

2 业务场景测试

用户怎样用怎样测试,分析接口文档编写测试用例,使用postman工具查看响应数据

使用postman管理,执行测试用例,生成测试报告

测试点:先登录>>>>添加员工>>>>查询员工>>>>修改>>>>在查询>>>>删除>>>>查询是否删除成功

测试用例编写

postman工具

1. 工具使用
  1. 简介
  2. 安装
  3. 案例:get,post请求,用接口文档,开发者工具,fiddler获取http数据
2. 使用postmanpostman管理,执行测试用例,生成测试报告
  1. 导入,到处用例集合

  2. postman的断言,实现自动化测试

    1. 断言响应状态码

      //断言响应状态码是否为200
      //pm:postman的实例
      //test():postman的方法,两个参数
      //			参数1:" "断言结束后的文字提示
      //			参数2:一个匿名函数(功能:pm的响应结果中应该包含状态码200),pm.response.to.have.status(200);函数体
      pm.test("status code is 200",function(){
          pm.response.to.have.status(200);
      });
      
    2. 断言响应体是否包含莫格字符串

    3. 断言响应体是否等一莫格字符串(对象)

    4. 断言json数据

    5. 断言响应头

  3. 全局变量与局部变量

    //全局变量
    pm.globals.set("var_name",value);
    //环境变量
    pm.environment.set("var_name",value);
    

postman请求前置脚本

点击send后第一时间被执行。postman内部再http请求之之前发送。

  1. 设置时间戳
//拿到时间戳代码,设置到全局变量中
var timestamp = new Date().getTime();

//发送请求时携带过去
pm.globals.set("glb_timestamp",timestamp)
  1. 使用时间全局变量
  2. 原理图:

在这里插入图片描述

postman关联

  1. 用途:应用于多个http请求之间,有数据关联,或依赖关系时
  2. 实现步骤(A接口依赖于B接口的值):
    • B接口发送http请求,获取数据
    • 将数据设置到全局变量(环境变量)
    • A接口获取全局(环境)变量中的数据值进行使用
//获取全部响应结果中
var jsonData = pm.response.json()
//从响应结果中获取城市名
var city = jsonData.weatherinfo.city
//将城市名写到全局变量中
pm.globals.set("glb_city",city)

文章来源:https://blog.csdn.net/weixin_52154534/article/details/134917482
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。