AI接口测试03(操作数据库/管理文档/mock/自动化测试/定时任务/AI导师)

文章目录

说明

  • 课程链接:AI接口测试

  • 本篇文章对应的课程为:10-16节

一、apifox操作数据库

数据库操作:校验数据落地的终极手段"

深入数据库,验证数据完整性

1.1 介绍

通过apifox连接数据库,在数据库中直接获取指定的id,达到修改删除的目的

1.2 在Apifox中配置数据库连接实操

  • 步骤:
  • 实战截图:

    应用配置编写sql:
    在前置操作/后置操作里面,选择数据库操作:

1.2 案例实操

  • 需求:

  • 实操:

    接下来要获取id如何操作?

    首先:在后置操作里面:添加后置操作-选择数据库操作(新建,在这里新建数据库和去项目设置里面新建是一样的),进行对应的数据库配置

  • 然后进行对应的sql语句填写以及对应的json表达式的填写

1.3 小结

二、高效协作:在Apifox中管理你的接口文档

打造团队的接口协作中心

  • 最终要实现的效果:生成在线文档

2.1 为什么要在apifox里面做这件事?

2.2 实战:将PDF文档变成apifox接口

  • 步骤一:实战:根据api文档定义请求和响应:
  • 根据需求定义响应示例:定义完成点击保存
  • 比较快速的方式:定义响应

    先去发送请求,如果接口能跑通的话,直接发送请求,得到响应结果。这时候响应结果的右侧有个小按键:提取到响应定义(后续做mock用)和 提取到响应示例(现在做文档用)。

    查看位置:

    当然也可以手动添加(编辑)

  • 步骤二:分享文档

    第一种:在线文档列表:临时分享。适合团队内部快速使用

    第二种:发布文档站。比较推荐的方式。下面针对这种方式进行发布:

    如果我们要进行调试的话,那必须选择环境

    点击右上角的发布,选择合适的发布方式发布即可。

2.3 转swagger文档为apifox文档

apifox支持swagger文档导入:

打开项目设置--->导入数据--->openapi-swagger---导入即可

2.4 小结

三、Mock神器:前后端并行开发与测试的基石

3.1 介绍

造成这种现象的原因:前端和测试都太依赖于后端开发的进度,那有什么办法可以不依赖后端开发的进度呢?---MOCK

3.2 Apifox里面应用MOCK

apifox里面更推荐的是使用智能生成数据

3.2 实操

  • 如果接口已经完成,已经有响应内容,可以使用mock之前先将响应结果 提取到响应定义 和 响应示例
  • 切换到mock
    自动生成了一个了,可以直接快捷请求:(如果上一个步骤已完成,可以直接看到智能mock的结果)
  • 如果第一步没有完成(后端接口未完成),那么我们快捷请求的响应结果是空,这种情况下如何使用智能mock?
    (1)根据需求文档把响应的格式手动加入响应示例
    (2)上方编辑-下面的Body--根节点---通过json生成数据结构(响应定义)---确定
    (3)MOCK 页面快速请求,就能看到下方响应的内容了,每次请求的响应结果都不一样,随机的


    (mock的匹配规则自动生成:项目设置-MOCK设置-可以看到智能MOCK匹配规则)
    (4)如果想固定其中一个的数值不变,那么就在编辑部分把mock的值自定义一下 然后保存即可

    (5)如果想要返回的是自定义消息(也就是响应内容自定义),可以用mock期望--新建--自动生成---保存,然后可以根据自定义的进行快捷请求

    补充:apifox里面mock设置-基础设置里面有mock的优先级:默认的是:自定义期望>智能mock

3.3 小结

  • Mock 一句话理解
    Mock = 模拟接口,造假接口返回假数据。后端接口还没写完 / 不稳定,前端/测试可以先用Mock接口调试。
  • 核心用处
  1. 后端接口还没开发完成

    后端代码还在写,没有真实接口。测试/前端直接在Apifox建Mock,定义好返回JSON,提前写用例、联调,不用等后端。

  2. 真实接口不好造异常场景

    比如要测:500报错、超时、返回空数组、特殊错误码。真实业务很难触发,Mock可以一键配置返回这些异常响应。

  3. 隔离依赖,稳定跑自动化

    你写自动化脚本的时候,如果依赖的第三方接口不稳定、会删数据、有额度限制,换成Mock,永远返回固定数据,自动化不会因为外部环境挂掉。

  4. 演示、学习接口

    像petstore就是线上mock服务。你可以随便调用、新增删除数据,不用担心污染真实数据库。

  • 举个简单例子
    你要测试【查询宠物列表】接口,后端还没做好。
    Apifox新建Mock接口,配置返回:
json 复制代码
[
  {"id":1,"name":"小狗"}
]

你调用Mock地址,就拿到上面这段数据,可以写JSONPath提取id、写断言,提前做接口测试,不需要后端提供真实服务。

  • 区分两个容易混淆的

  • 真实接口:访问后端服务,查真实数据库,数据会保存变化

  • Mock接口 :返回你预先写死的假JSON,不会操作真实数据库

  • 缺点

    Mock只是模拟,不能替代真实接口测试。最后上线前,必须切回后端真实接口验证。

四、测试场景:组织与管理你的测试用例(自动化操作)

4.1 Apifox里面实战

五、Runner与定时任务:搭建企业级自动化测试流水线

实现无人值守的自动化回归测试

5.1 Apifox里面的实战

前置操作:

  1. 安装虚拟机(安装、下载导入镜像文件、配置)可以参考的安装教程文档: 虚拟机安装教程
  2. 在虚拟机里面安装docker
  3. 将虚拟机里面的docker和apifox结合:1和2成功的基础上,打开apifox里面的部署Runner,复制到虚拟机里面运行即可
  4. apifox中Runner使用说明:Apifox 自托管Runner准备工作
  • 注意:最新版的apifox不可以直接新建定时任务,前置条件是有场景用例(设置好接口的执行顺序),然后在测试套件里面选择场景用例,上方切换到定时任务进行设置才可以
  1. 操作步骤(照着提示来)
  2. 在【自动化测试】左侧菜单,点 测试套件
  3. 点 + 新建,创建一个测试套件(命名例如:课程管理回归套件)
  4. 进入这个新建好的测试套件内部
  5. 在套件里面,切换标签页到【定时任务】
  6. 这时 +添加 按钮就会点亮,可以新建定时任务,设置好对应的条件


    设置条件,比如:

5.2 优点以及总结

六、AI导师:用AI快速解读文档与设计测试点

提示词:请扮演一名资深测试工程师,帮我分析以下JSON响应结构。请逐一说明每个字段的含义,并指出哪些字段可能为空(null),哪些是核心业务字段。

提示词:基于登录接口API描述,现在请为'登录'这个接口设计全面的测试点。请包括:

正常业务流程、边界值、正向、逆向、异常场景安全、性能。输出:将测试点汇总表格输出

提示词:一个接口参数叫'uuid',描述是'生成验证码接口'。请为我设计针对这个参数的测试点。

七、AI脚本工程师:用AI生成Apifox测试脚本

7.1 理论

Apifox 可执行脚本(.apifox.json)作用总结:

它是 Apifox 专用的接口用例 JSON 文件,用来保存 / 迁移接口测试用例 。

实战理论:

7.2 Apifox实战:

练习使用示例:

提示词:将附件图片 api 信息,编写 postman 脚本,以代码块的格式给出。输出的格式:json 文件

将自己电脑桌面的json文件导入到postman:

导入成功之后,回左侧接口管理,可以看到我们刚刚导入成功的内容:如果接口没有跑通,可以看一下是不是有后置操作没有成功添加这个原因

7.3 小结

相关推荐
Wokoo76 小时前
自动化测试入门:核心场景、回归测试与 Web 自动化环境搭建
java·开发语言·测试工具
zuozewei6 小时前
第00篇-为什么是-k6-AI-时代的工具选型
软件测试·jmeter·性能测试·ai测试·k6
德思特7 小时前
德思特混频器参数详解:5MHz–40GHz 宽频段与低噪声 LO 设计
测试工具·自动化·射频工程
wuyk55516 小时前
《WiFi 嵌入式物联网开发全套实战》| 第 33 章 Wireshark 无线抓包环境搭建、802.11 帧过滤规则
物联网·测试工具·wireshark
我的xiaodoujiao3 天前
Django 基础知识详细图文教程 13-Django 模型定义与使用 3
数据库·后端·python·测试工具·oracle·django
Felven5 天前
stress-ng 与 fio 性能测试工具使用指南
linux·测试工具·fio·stress-ng
H_unique5 天前
Chat2Excel:接口自动化测试
python·测试工具·自动化
Sarapines Programmer6 天前
【Wireshark】安装与使用指南
网络·测试工具·wireshark