DDT+yaml实现数据驱动接口自动化

news2024/11/23 19:13:10

前言

在之前的文章中我们知道了yaml文件可以进行接口自动化。除了yaml文件,Excel文档也可以用来编写自动化测试用例。

一定很想知道这两者有什么区别吧?

1、Excel使用简单,维护难,多种数据类型转换起来比较复杂

2、yaml学习稍微更难一些(实际学习起来并不难),使用简单、更方便,适用性更强,流行的接口自动化框架都是基于yaml(推荐使用yaml文件方式)

下面详细介绍ddt是如何数据驱动yaml文件进行自动化测试的?

1、上篇已经学习了yaml文件的基本语法,创建testcase.yaml文件,我们把需要测试的请求接口按照请求URL、请求头、请求参数转化成yaml语法格式,用例数组可复制粘贴多个即可批量读取测试用例

在这里插入图片描述
2、在使用DDT数据驱动前,我们得了解一下基本的知识

ddt主要以装饰器的形式来调用

①@ddt.ddt()——用来装饰类,表示当前类使用ddt框架

②@ddt.data()——用来装饰函数用例,给测试用例传数据

③@ddt.unpack()——对传入的数据进行解包

④@ddt.file_data()——装饰函数用例,直接读取yaml文件

[重点]3、创建test_api.py文件创建类进行ddt数据读取接口用例,进行接口自动化测试请求
在这里插入图片描述

学习安排上

如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

在这里插入图片描述

视频文档获取方式:

这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片进群即可自行领取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/46141.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AVS3中的intra string copy(ISC)

AVS3是AVS系列的最新标准,其中新增了一些SCC工具,intra string copy(ISC)就是其中之一。下图1是AVS3的编码框架,其中橙色部分是ISC,可见ISC分为两个子模式FPSP和EUSP。 图1 AVS3编码框架 ISP是AVS3中新增的技术,它作用…

科技对金融业的告白信,有百融云创的落款

“当一家龙头企业失去了创新能力,或者其科技升级到达天花板之后,便会成为巴菲特老爷子的潜在重仓股选项。”这是笔者在近日巴菲特买进价值超过41亿美元的台积电ADR新闻之下,刷到的一条评论。 没错,当摩尔定律放缓,晶圆…

Linux之 rsyslog、日志轮转

1.rsyslog 1.1rsyslog介绍 Rsyslog的全称是 rocket-fast system for log,它提供了高性能,高安全功能和模块化设计。rsyslog能够接受从各种各样的来源,将其输入,输出的结果到不同的目的地。rsyslog可以提供超过每秒一百万条消息给…

如何做项目的权限控制?

(1)项目背景和问题 现有一个后台管理系统,共存在三种类型的人员: 普通用户:拥有查看、审核和下架商品的权限 管理员:普通用户权限 修改、删除商品的权限 超级管理员:管理员权限 添加、删除用户…

基于多领导者智能体的Olfati算法matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 人们通过群体行为的研究可以揭示群体智能的产生,群体智能是自组织的过程,将简单的个体通过交互作用或协作表现出来整体智能行为的特性称为“群体智能”。 “群体智能”应…

win10系统怎样分区,win10固态硬盘怎么分区

Windows10简称win10,是微软公司研发的跨平台操作系统,应用于计算机和平板电脑等设备。许多用户在购买一台新电脑后,开机后发现:电脑只有一个C盘,且C盘存储空间很大,为了更加合理地使用磁盘分区,…

Linux文件搜索命令find、which和whereis应用

记录:349 场景:在CentOS 7.9操作系统上,使用find命令在指定目录搜索文件,支持精确搜索和模糊搜索;使用which命令搜索一个命令所在的目录和别名信息。使用whereis命令搜索命令所在的目录和man帮助手册等相关的文件路径…

NR CSI(四) PMI

微信同步更新欢迎关注同名modem协议笔记 如38.214 5.1.1.1中所述,NR PDSCH 38214只有一种传输模式Transmission scheme 1,gNB将data(di)和DMRS一同预编码,之后通过无线信道,发送给UE,如下图。DMRS是用于信道估计,服务…

一键获取主图设计模板的工具平台

想设计一个好看又简介的电商商品模板?不懂如何设计排版电商商品主图?今天小编分享给你这个主图设计工具和设计教程,乔拓云不仅能快速上手设计,还有海量的主图设计素材能直接使用!只需要跟着小编下面的工具使用教程&…

C语言IO操作fread/fwrite/fflush

参考 1 2 IO操作 fread/fwrite/fflush: c语言标准规定的io流操作,建立在read/write/fsync之上;在用户层, 又增加了一层缓冲机制,用于减少内核调用次数,但是增加了一次内存拷贝; read/write/…

[附源码]SSM计算机毕业设计学生量化考核管理系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

mysql相关基础知识篇(五)

1.MySQL 事务的四大特性说一下? 原子性:事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。一致性:指在事务开始之前和事务结束以后,数据不会被破坏,假如 A 账户…

maven的pom.xml文件爆红,并且刷新maven无法下载依赖的解决方案

平时使用idea时,对于新手有时候会遇到一些比较尴尬的事情——依赖无法下载 分析一下,maven依赖无法下载有以下原因 (1)maven在项目中是否安装且环境变量是否配置成功 (2)maven依赖下载慢,考虑是…

Dubbo3入门实践,SpringBoot+Dubbo+Nacos+DubboAdmin

前言 学习Dubbo的过程中发现官网文章太过简单,而且没有提供完整的项目整合,导致入门门槛比较高,初学者不知从何下手。本文将在SpringBoot的基础上整合Dubbo,注册中心使用当下流行的Nacos,还将使用Dubbo-Admin来管理服务…

RationalDMIS 2020 叶片检测 -快速定义叶片截面线方法

1.快速定义叶片截面线方法 用多平面切割叶片CAD定义曲线的方法,用来快速定义叶片截面曲线;自定义多个平面,使用这些平面切割CAD,生成多个叶片曲线(BladeCurve):再将生成的叶片曲线(BladeCurve)自动打断为两个子曲线(Curve);上述所有生成的曲线(Curve)都会添加到元…

[附源码]Python计算机毕业设计Django常见Web漏洞对应POC应用系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

使用 Rainbond 搭建本地开发环境

在开发之前,你需要在本地安装各种开发工具和服务,比如:Mysql、Redis、Nacos 等等,我们都知道在个人电脑上安装这些服务相当的繁琐,可能会遇到很多问题,环境问题、依赖问题等等。 在需要团队协作业务联调的…

第十三章《集合》第5节:Map集合

List、Set和Queue都是Collection接口的子接口,因此从更高层次来说它们属于统一类型的集合。Map接口也代表一种集合,但它不是Collection子接口,因此它属于另一种类型的集合。Map用于保存具有映射关系的数据。映射关系的数据分为两部分,就好比电话本一样,如图13-20所示。 图…

运筹说 第82期 | 算法介绍之图与网络分析(二)

本期我们继续进行运筹学之图与网络分析算法的讲解,我们将对图与网络分析的基础知识进行一个简单的回顾,并介绍求解最大流问题和最小费用最大流的MATLAB和Python相关代码,以帮助大家利用工具快速求解最大流问题和最小费用最大流问题&#xff0…

Spring的Bean意义

一、Spring概述 1. Spring家族 官网:https://spring.ioSpring发展到今天已经形成了一种开发的生态圈,Spring提供了若干个项目,每个项目用于完成特定的功能。 2. Spring体系结构 ⑴. Spring Framework系统架构图 Spring Framework是Spri…