python测试与数据分离

2024-09-02 12:38
文章标签 python 分离 数据 测试

本文主要是介绍python测试与数据分离,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据获取
json:

{"test": [{"case": "normal","data": {"score": 0,"tag": "qiniu","templateId": 126},"expected": true},{"case": "err","data": {"score": 10,"tag": "qiniuqiniuqiniuqiniuqiniuqiniuqiniuqiniuqiniuqiniuqiniuqiniuqiniuqiniu","templateId": 126},"expected": false},{"case": "err2","data": {"score": 10,"tag": "sdfsf","templateId": 0},"expected": false}]
}

获取数据

import os,json
def get_data_path(case_path):file_name=os.path.dirname(case_path)test_data=os.sep.join([file_name,'data',os.path.basename(case_path).replace('.py','.json')])return test_datadef get_test_data(test_data_path,field='test'):case=[]data=[]expected=[]with open(test_data_path,encoding='utf-8') as f:dat=json.loads(f.read())test=dat[field]for td in test:case.append(td['case'])data.append(td['data'])expected.append(td['expected'])list_param=list(zip(case,data,expected))return case,list_param

测试方法:

# !/usr/bin/python3
# -*-coding:utf-8-*-
# Author: ppx
# Github:
# CreatDate: 2019/12/31 下午6:22
# Description:import requests, json, time
import urls.TemplateServiceImpl as tmpl
import urls.HsfTemplateServiceImpl as hsftmpl
import urls.CardServiceImpl as card
import rest, util
from HTMLTestRunner import HTMLTestRunner
import urls.HsfCouponServiceImpl as cardhsf
import urls.HsfTemplateServiceImpl as hsftmp
import urls.HsfTagServiceImpl as hsftag
import urls.HsfCouponServiceImpl as couponimport logging, sys, pytest
from tools.get_data import get_data_path
from tools.get_data import get_test_datacase,params = get_test_data(get_data_path(__file__))class TestClass:type = 1templateId = 127@pytest.mark.parametrize("case,data,expected", params, ids=case)def test_tag(self, case, data, expected):templateid = 126post = rest.post(hsftag.TagServiceImpl.TAGSERVICEIMPL_ADDTAG,data, self.type)assert post['success'] == expected

这篇关于python测试与数据分离的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1129975

相关文章

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

Python中注释使用方法举例详解

《Python中注释使用方法举例详解》在Python编程语言中注释是必不可少的一部分,它有助于提高代码的可读性和维护性,:本文主要介绍Python中注释使用方法的相关资料,需要的朋友可以参考下... 目录一、前言二、什么是注释?示例:三、单行注释语法:以 China编程# 开头,后面的内容为注释内容示例:示例:四

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提

python常用的正则表达式及作用

《python常用的正则表达式及作用》正则表达式是处理字符串的强大工具,Python通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

MyBatisPlus如何优化千万级数据的CRUD

《MyBatisPlus如何优化千万级数据的CRUD》最近负责的一个项目,数据库表量级破千万,每次执行CRUD都像走钢丝,稍有不慎就引起数据库报警,本文就结合这个项目的实战经验,聊聊MyBatisPl... 目录背景一、MyBATis Plus 简介二、千万级数据的挑战三、优化 CRUD 的关键策略1. 查

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

mysql中的数据目录用法及说明

《mysql中的数据目录用法及说明》:本文主要介绍mysql中的数据目录用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、版本3、数据目录4、总结1、背景安装mysql之后,在安装目录下会有一个data目录,我们创建的数据库、创建的表、插入的

使用Python绘制3D堆叠条形图全解析

《使用Python绘制3D堆叠条形图全解析》在数据可视化的工具箱里,3D图表总能带来眼前一亮的效果,本文就来和大家聊聊如何使用Python实现绘制3D堆叠条形图,感兴趣的小伙伴可以了解下... 目录为什么选择 3D 堆叠条形图代码实现:从数据到 3D 世界的搭建核心代码逐行解析细节优化应用场景:3D 堆叠图