03 测试框架之接口diff实现及运行

简介: 03 测试框架之接口diff实现及运行

前言

前两篇文章简要说明了接口diff的来龙去脉,如下



今天我们介绍一下接口diff的框架实现和项目中实际的运行效果!


框架思路

接口Diff测试和接口自动化用的就是同一套框架。区别在于,Diff测试需要同时向两套环境发相同的接口请求,拿到返回后进行比较(上图中的“主要函数:接口diff模块”就是实现比较功能的),最后以Alluer报告的形式展示结果。


实现细节

项目的目录结构

  • 结构图
common—基础类(Base)
config—文件路径配置信息
data–接口请求数据(接口返回数据存放 – 目前存放在json文件中)
logs--项目日志文件
testCase—pytest组织的接口CASE
report—测试报告存放
utils—工具、公用方法存放


测试报告展示


测试用例组织


测试用例说明

  1. 建议每个场景页单独一个.py文件,这样根据特定场景方便维护代码
  2. 用例区分了小说前端和小说后端,所有的接口返回数据都存放在:
  • interfaceDiffTest\data\apiResonse.json(前端接口返回数据)
  • interfaceDiffTest\data\backgroundMsg.json(后端接口返回数据)

「后期全部迁移到本地mysql数据库中维护(方便查阅)」


  1. Diff测试有一项重要的工作就是两个接口返回值的比对,现在多数http接口数据格式都采用json。

项目经验

  • diff的关键问题,在于接口的覆盖度。因而应用diff进行测试时,最好由QA来控制接口的录入,减少接口遗漏的可能性。
  • diff与传统的接口测试方法(手工检查接口/专门写自动机脚本检查)相辅相成,补充了传统方法的不足。
  • diff测试对“读”接口可以很好的回归测试,但对“写”接口可能仍然需要传统的测试方法辅助。

持续集成

「当开发提测时,可以根据接口diff筛选出相关联自动化用例,与CI相结合,达到精简用例,减少执行时间,同时减少不必要的用例执行,进而提升CI稳定性,减少CI维护排查代价。」

1.  浏览器打开网址:http://xxxxx.com:8080/job/api_diff

  • 如果需要登录,账户名和密码都是 admin
  1. 点击立即构建:

  1. 跑完后,点击Alluer 查看最终报告

下集预告

  • 接口diff模块核心代码解析
相关文章
|
4天前
|
XML Java 测试技术
Spring5入门到实战------17、Spring5新功能 --Nullable注解和函数式注册对象。整合JUnit5单元测试框架
这篇文章介绍了Spring5框架的三个新特性:支持@Nullable注解以明确方法返回、参数和属性值可以为空;引入函数式风格的GenericApplicationContext进行对象注册和管理;以及如何整合JUnit5进行单元测试,同时讨论了JUnit4与JUnit5的整合方法,并提出了关于配置文件加载的疑问。
Spring5入门到实战------17、Spring5新功能 --Nullable注解和函数式注册对象。整合JUnit5单元测试框架
|
5天前
|
Cloud Native 数据处理
项目环境测试问题之当异步任务在运行过程中抛出非预期的异常会导致后果如何解决
项目环境测试问题之当异步任务在运行过程中抛出非预期的异常会导致后果如何解决
|
8天前
|
IDE 测试技术 持续交付
Python自动化测试与单元测试框架:提升代码质量与效率
随着软件行业的发展,代码质量和效率变得至关重要。自动化测试与单元测试是保证质量、提升效率的关键。Python凭借其简洁强大及丰富的测试框架(如Selenium、Appium、pytest和unittest等),成为了实施自动化测试的理想选择。本文将深入探讨这些框架的应用,帮助读者掌握编写高质量测试用例的方法,并通过持续集成等策略提升开发流程的效率与质量。
27 4
|
8天前
|
Web App开发 IDE 测试技术
天呐!当揭开 Selenium 自动化测试框架的神秘面纱,设计与实现令人瞠目!
【8月更文挑战第12天】Selenium 是一强大自动化测试框架,用于Web应用测试。它含WebDriver、IDE和Grid等工具,支持Chrome、Firefox等浏览器。可通过编程模拟用户交互验证应用功能。例如使用Python结合Selenium WebDriver编写自动化测试脚本,实现打开网页、操作元素及断言等功能。还可结合测试框架和Selenium Grid提升测试效率和并行执行能力。
20 1
|
12天前
|
SQL 安全 测试技术
[go 面试] 接口测试的方法与技巧
[go 面试] 接口测试的方法与技巧
|
14天前
|
人工智能 测试技术 持续交付
探索自动化测试框架的演进与实践
【8月更文挑战第6天】 随着软件行业的快速发展,自动化测试已经成为保障软件质量的关键手段。本文将深入分析自动化测试框架的发展脉络,从早期的线性脚本到现代的模块化、数据驱动和关键字驱动的框架,再到最新的基于AI的智能测试工具。文章还将探讨如何在实际工作中有效实施这些框架,以及在面对新技术时如何保持测试策略的灵活性和前瞻性。
|
17天前
|
存储 数据管理 jenkins
自动化测试框架的搭建与实践
【8月更文挑战第3天】随着软件行业的迅猛发展,自动化测试已成为保证软件质量的重要手段。本文将介绍如何搭建一个高效的自动化测试框架,并通过实际代码示例展示其应用。我们将探讨框架设计的核心原则、工具选择和脚本编写的最佳实践,以及如何通过持续集成实现自动化测试流程的优化。
|
10天前
|
JavaScript 前端开发 测试技术
一周下载量突破 500 万次!为什么说它是下一代测试框架?
一周下载量突破 500 万次!为什么说它是下一代测试框架?
|
1月前
|
JSON JavaScript 测试技术
Postman接口测试工具详解
Postman接口测试工具详解
66 1
|
23天前
|
存储
Postman 接口测试配置 Pre-request Script
Postman 接口测试配置 Pre-request Script
66 5
Postman 接口测试配置 Pre-request Script