软件工网站开发课程设计报告门网站建设
2025/12/26 9:09:41 网站建设 项目流程
软件工网站开发课程设计报告,门网站建设,网站怎么做付款平台,北京网站建设华网天下科技01 前言 这是一篇关于 Apifox 的接口自动化测试教程。相信你已经对 Apifox 有所了解#xff1a;“集 API 文档、API 调试、API Mock、API 自动化测试#xff0c;更先进的 API 设计/开发/测试工具”。 笔者是后端开发#xff0c;因此这篇教程关注的是 API 自动化测试#…01前言这是一篇关于 Apifox 的接口自动化测试教程。相信你已经对 Apifox 有所了解“集 API 文档、API 调试、API Mock、API 自动化测试更先进的 API 设计/开发/测试工具”。笔者是后端开发因此这篇教程关注的是API 自动化测试如果你也是后端开发正苦于没有好的方式测试接口对保证线上接口稳定性没有信心那么这篇文章就是为你准备的如果你学会了 Apifox 接口自动化测试它几乎是一个会陪伴你整个职业生涯中的一件称心应手的兵器。接口测试可不是简单的请求一两个接口再检查一下响应结果那么简单没有贴近业务场景的测试意义不大但完全模拟业务场景一比一真实的去还原用户操作流程的测试势必会很复杂如 接口需要登陆后才能操作怎么办一个接口依赖上一个接口请求返回的数据怎么办后端对请求有签名验证怎么办后端任务是异步处理的怎么办...不要担心既然是完全指南这些问题我们就都会讲到Apifox 强大的能力可以解决这些问题下面我们会用真实的案例逐步讲解覆盖到这些所有的场景。建议大家打开 autotest.apifox.cn 这个项目一边学习里面的公共脚本公共脚本、测试套件等都打包放在 百度网盘一边跟着练习。02接口自动鉴权知识点环境变量、公共脚本、pm.sendRequest脚本发送请求我们通过一个需要登录才能访问的后台新闻列表接口来演示接口自动登录鉴权。默认情况下访问该接口提示需要登录如果要正常访问该接口的数据需要在 header 中提供 AdminToken: token 头这是一个常见的需要 JWT 登录认证接口。很自然的我们想到如果自动请求登录接口获取 token 值然后在每次请求前自动带上这个 AdminToken 头不就行了吗没错就是这样简单伪代码如下完整的代码见 「公共脚本」admin: login and Auth这里我们从登录接口获取 token 后将其缓存到本地的环境变量中这样就不必每次都请求登录了。现在我们已经完成了 请求登录接口获取 token并设置到 请求头中的功能然后我们再把此 公共脚本 应用到 新闻列表的接口上实现在 请求新闻列表接口 前自动完成 “登录”。后台有很多接口访问都需要登录如果一个个地去设置 前置脚本 就太麻烦了所以这里我们直接在 admin 后端接口的分组目录上设置 前置操作 公共脚本admin: login and Auth这样整个 admin 下的全部接口都能自动登录了我们来验证一下可以看到返回了数据说明自动登录成功了我们在 控制台输出 中可以看到请求了登录接口在实际请求中 可以看到 AdminToken: token 头。在这个例子中我们是将 用于后台登录的 用户名 和 密码 提前配置到了 环境变量中然后利用脚本 pm.sendRequest 请求登录接口获取 token并设置 请求头这样就实现了接口的自动登录。关于变量的优先级 和 脚本的执行时机如图所示03接口自动加签知识点参数注入、内置类库有一些对安全性要求较高的接口可能会有对接口请求进行验签的机制具体是 接口请求的数据 会额外多一个 sign 字段它的值是可以是 md5(k1v1k2v2...)这样就确保了请求数据不会被篡改但是这给我们测试带来了麻烦我们如何每次自动生成 sign 参数呢不用担心这对 Apifox 来说不在话下利用 Apifox 强大的脚本功能我们甚至能够调用外部任何语言的脚本。知道了请求加签的原理那么实现就很容易了无非是 在请求前 自动算出 sign 并注入到请求参数中去下面是伪代码完整的代码见 「公共脚本」parkinglot:client: request sign and common params然后 把 自动加签的公共脚本设置到 client 停车场设备端 分组 的前置脚本中这样其下所有接口请求时都有 sign 参数了。注这里简化了签名算法 md5(k1v1k2v2... key) 其实签名算法还有一个关键的 key参数 不过删减这部分内容并不影响我们这里对接口自动加签的讲解。为了力求简洁只关注最核心的东西文章都是使用伪代码的形式完整代码请读者自行查看项目中的公共脚本。04测试用例知识点接口用例顺序、流程控制条件、循环、等待、测试数据、断言在掌握了 Apifox 的强大脚本能力后你几乎能够解决任何鉴权、加签等问题了接下来我们开始搭建完整的测试流程以便真实完整的模拟正常使用时的业务测试场景。我假定你已经熟悉 Apifox 中 接口用例、环境变量、变量提取、断言 等基础概念我们先看一个简单的场景测试我们运行测试看一下我们在后台看一下新闻分类和新闻确实创建成功了。再看看一个稍微复杂一点的测试场景一个异步任务处理的场景测试相信看到这里已经不需要我解释什么了如你所见Apifox 的测试用例的流程编排功能非常强大你能 DIY 出任何复杂的场景。更多用法见文档测试流程控制 | Apifox 帮助文档05Apifox CLI知识点命令行如果每次测试都需要我们手动点击 运行按钮 就太不方便了没错Apifox 当然也考虑到了这点Apifox CLI 就可以帮助我们实现自动化的测试。点击持续集成的按钮就能够生成 命令行代码将这行 shell 命令复制到任意地方执行即可实时运行测试用例/套件。06持续集成知识点自动化测试我们先在服务器上安装 apifox-cli然后在发布工具中集成 测试命令即可为了通用性我们使用 php 脚本 将 apifox run ... 命令进行了封装你理解成执行的是 apifox run ... 命令即可。这里我们用的是 Spug 发布工具类似 Jenkins请根据实际情况配置。07测试报告知识点报告解析、钉钉通知我们在 Apifox.php 脚本执行测试命令并解析测试生成的 json 文件然后将结果拼装发送到钉钉群如果有失败会 at 相应的开发人员感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询