Pytest-parametrize实现测试用例与测试数据分离

Pytest自动化框架,实现自动化测试用例与测试数据分离方法:

1.测试用例数据准备,使用yaml文件编辑,如下述teladress.yaml

2.通过pytest框架装饰器@pytest.mark.parametrize实现测试数据传参

示例:

测试用例文件:test_mobile.py

    @pytest.mark.mobile@pytest.mark.parametrize("caseinfo",read_yaml_testcase(os.path.dirname(__file__)+'/teladress.yaml'))def test_teladress01(self,caseinfo):method = caseinfo['request']['method']url = caseinfo['request']['url']data=caseinfo['request']['data']re = requests.request(method,url=url,params=data)code = re.json()['code']write_yaml({'code': code})assert code == 200

测试数据文件:teladress.yaml

-feature: 电话测试模块story: 获取电话归属地接口title: 能成功获取任意电话号码归属地信息request:method: geturl: https://api.oioweb.cn/api/common/teladressdata:mobile: 1889090787validate: null
-feature: 电话测试模块story: 获取电话归属地接口title: 非常规电话号码归属地信息测试request:method: geturl: https://api.oioweb.cn/api/common/teladressdata:mobile: 00000validate: null

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

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

相关文章

Tomcat 架构

一、Http工作原理 HTTP协议是浏览器与服务器之间的数据传送协议。作为应用层协议,HTTP是基于TCP/IP协议来传递数据的(HTML文件、图片、查询结果等),HTTP协议不涉及数据包(Packet)传输,主要规定了…

c语言之字符串的输入和输出

c语言在输出字符串时&#xff0c;用格式符‘%s"&#xff0c;代码比较简洁 如果说数组长度大于字符串长度&#xff0c;也只输出\0前的内容 字符串默认后面有\0. 如果字符串有多个\0&#xff0c;会默认在第一个\0结束 #include<stdio.h> int main() {int i;char a…

GO数组切片

1. 数组 数组是一个由固定长度的特定类型元素组成的序列&#xff0c;一个数组可以由零个或多个元素组成。 因为数组的长度是固定的&#xff0c;所以在Go语言中很少直接使用数组。 Go语言数组的声明&#xff1a; var 数组变量名 [元素数量]Type 1 数组变量名&#xff1a;数…

本地快速部署谷歌开放模型Gemma教程(基于WasmEdge)

本地快速部署谷歌开放模型Gemma教程&#xff08;基于WasmEdge&#xff09; 一、介绍 Gemma二、部署 Gemma2.1 部署工具2.1 部署步骤 三、构建超轻量级 AI 代理四、总结 一、介绍 Gemma Gemma是一系列轻量级、最先进的开放式模型&#xff0c;采用与创建Gemini模型相同的研究和技…

持续集成(CICD)- Jenkins插件安装失败解决办法

解决办法&#xff1a;将插件安装更新源需要改成国内镜像源 具体步骤如下&#xff1a; 步骤一&#xff1a;修改Jenkins工作目录下的 hudson.model.UpdateCenter.xml 文件&#xff0c;将url 改为http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json 步骤二…

RuoYi-Vue-Plus功能分析-jackson配置

文章目录 前言一、配置文件二、配置类三、注解四、json工具类1. 工具内容2. 使用工具 前言 前端在给我发送请求的时候一般包含三个部分url&#xff0c;header&#xff0c;body。那么就会涉及我们后端如何接收这些请求参数并且我们处理完毕参数后前端又如何接收参数 通过url传…

代码随想录刷题笔记 DAY 37 | 动态规划理论基础 | 斐波那契数 No.509 | 爬楼梯 No.70 | 使用最小花费爬楼梯 No.746

文章目录 Day 3700. 动态规划理论基础01. 斐波那契数&#xff08;No. 509&#xff09;<1> 题目<2> 笔记<3> 代码 02. 爬楼梯&#xff08;No. 70&#xff09;<1> 题目<2> 笔记<3> 代码 03. 使用最小花费爬楼梯&#xff08;No. 746&#xff…

ECMAScript-262 @2023版本中的关键字和保留字

1、什么是标识符&#xff1f; 所谓标识符&#xff0c;就是javascript里的变量、函数、属性或函数参数的名称&#xff0c;可由一个或多个字符组成&#xff0c;当然标识符有命名规范 标识符第一个字符必须是 一个字母、下划线&#xff08;_&#xff09;或美元符号&#xff08;$…

ONLYOFFICE文档8.0全新发布:私有部署、卓越安全的协同办公解决方案

ONLYOFFICE文档8.0全新发布&#xff1a;私有部署、卓越安全的协同办公解决方案 文章目录 ONLYOFFICE文档8.0全新发布&#xff1a;私有部署、卓越安全的协同办公解决方案摘要&#x1f4d1;引言 &#x1f31f;正文&#x1f4da;一、ONLYOFFICE文档概述 &#x1f4ca;二、ONLYOFFI…

【新书推荐】10.2 分支程序设计

稍微复杂一些的程序通常需要做某种条件判断&#xff0c;然后再决定程序的执行流程。当然也可以无条件跳转到程序的另一处地址开始执行。本节我们将详细介绍分支结构的程序设计方法。 针对功能较为复杂的程序&#xff0c;程序开发有一套标准的流程&#xff0c;我们将10.1节中的五…

计算机网络【网络安全】

计算机网络——网络安全 一、网络安全问题概述 网络安全威胁 网络安全面临两大类威胁&#xff0c;被动攻击和主动攻击 被动攻击 指攻击者从网络上窃听他人的通信内容&#xff0c;通常把这类攻击称为截获。 主动攻击 篡改 攻击者故意篡改网络上传送的报文 恶意程序 拒绝服…

InnoDB索引与优化篇(5)-InnoDB中的查询优化策略

InnoDB是MySQL数据库中一种常用的存储引擎&#xff0c;它具有高性能和可靠性。查询优化是数据库开发中非常重要的一环&#xff0c;它能够帮助我们提高数据库查询的效率和性能。在本篇博客中&#xff0c;我们将介绍一些在使用InnoDB存储引擎时进行查询优化的常用策略&#xff0c…

贪心 Leetcode 455 分发饼干

分发饼干 Leetcode 455 学习记录自代码随想录 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i&#xff0c;都有一个胃口值 g[i]&#xff0c;这是能让孩子们满足胃口的饼干的最小尺寸&#xff1…

神经网络算法:卷积神经网络

神经网络算法&#xff0c;也称为人工神经网络算法&#xff0c;是一种模仿人脑神经网络结构和功能的计算模型。它由多个神经元相互连接而成的网络组成&#xff0c;每个神经元都有输入和输出&#xff0c;并通过学习算法来调整连接权重&#xff0c;从而实现对输入数据的模式识别和…

JavaScript Web Socket 详解

Web Socket ​ Web Socket&#xff08;套接字&#xff09;的目标是通过一个长时连接实现与服务器全双工、双向的通信。在 JavaScript 中创建 Web Socket 时&#xff0c;一个 HTTP 请求会发送到服务器以初始化连接。服务器响应后&#xff0c;连接使用 HTTP 的 Upgrade 头部从 H…

12、窗口看门狗

目录 1、窗口看门狗概述 2、常用寄存器和库函数配置 3、窗口看门狗实验 1、窗口看门狗概述 之所以称为窗口就是因为其喂狗时间是一个有上下限的范围内&#xff08;窗口&#xff09;&#xff0c;你可以通过设定相关寄存器&#xff0c;设定其上限时间&#xff08;下限固定&…

数据结构 栈和队列 力扣例题AC——代码以及思路记录

20. 有效的括号 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应…

mysql使用连接池

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、mysql连接池&#xff1f;二、使用步骤1.引入库 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff1a; 提示&#xff1a…

深入理解Flutter中的StreamSubscription和StreamController

在Flutter中&#xff0c;StreamSubscription和StreamController是处理异步数据流的重要工具。它们提供了一种方便的方式来处理来自异步事件源的数据。本文将深入探讨它们的区别以及在实际应用中的使用场景。 StreamSubscription StreamSubscription代表了对数据流的订阅&…

代码随想录算法训练营番外 刷题日记0301 || 29、两数相除,31、下一个排列

29、两数相除 思路&#xff1a;不断相减就是求解的最直接方法&#xff0c;我这样计算时间复杂度有点高 // 时间复杂度O(count*divisor) // 空间复杂度O(1)class Solution {int res 0;public int divide(int dividend, int divisor) {// dividend 是被除数if(dividend 0) …