| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> unittest+参数化测试+fixture -> 正文阅读 |
|
[开发测试]unittest+参数化测试+fixture |
unittest:组件: Testcose:定义测试用例 Testsuite:测试套件,用于管理测试列(实例化) Testrunner:运行加载用例 Testloader:加在测试用例 fixture: 相当于勾子,用户测试用例执行前后进行执行 1.作用:用来测试写的模块,类,对象对不对 2:使用: 1:导报, 2:创建测试用例 例子: class Bdtest(unittest.TestCase): 使用unittest测试用例的时候 写用例的时候 需要加上 unittest.TestCase ? ? @parameterized.expand(baidu()) ? def test_1(self,x,y,exp): ? ? ? ret=add_a(x,y) ? ? ? self.assertEqual(exp,ret,msg='不相同') 3:加载用例 4:实例化一个测试套件,均加在用例 5:加载用例的三种方法: addtest(模块名.类名(方法名)) 测试一个方法 # addtest(unittest.makesuite(模块名.类名))#测试一个类 # suite=unittest.Testloader().discover("路径","文件名") 测试一整个文件或多个文件 6:执行测试用例 ? ? 借助TextTestRunner对象运行 # ? ? ? ? runner对象调用urn方法 参数化测试:首先需要安转 pip install parameterized 使用时候需要导 from parameterized import parameterized 例子: def add_a(a,b): ? return a+b # 获取要测的数据 def baidu(): ? with open("./data.json","r",encoding="utf-8")as f: ? ? ? a=f.read() ? ? ? lista=json.loads(a) ? ? ? list=[] ? ? ? # for i in lista: ? ? ? # ? ? b=i['x'],i['y'],i['exp'] ? ? ? # ? ? list.append(b) ? ? ? d=[(i['x'],i['y'],i['exp']) for i in json.loads(a)] ? ? ? print(d) ? ? ? return d ? class Bdtest(unittest.TestCase): ? @parameterized.expand(baidu()) 这需要用parameterized 可以将要测试的参数都放在这里面调用 ? ? def test_1(self,x,y,exp): ? ? ? ret=add_a(x,y) ? ? ? self.assertEqual(exp,ret,msg='不相同') Fixture判断了解fixture是一个概述,对一个测试用例环境的初始化和销毁是一个fixture,以开发的角都去理解,fixture就像是flask框架中的钩子,特定的方法,在测试用例执行前后进行 fixture三种级别: 方法级别: 类级别: 模块级别: 开始基本都是 def setup 结尾基本都是0def tear 方法级别(判断一个方法):前置处理 def setup(self) 后置处理 def teardown(self) 类级别(判断一个类,或者多个类):开始:@classmethod def setUpclass(cls) 结尾:@classmethod def tearDownclass(cls) |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/18 3:01:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |