IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> unittest和pytest的区别 -> 正文阅读

[开发测试]unittest和pytest的区别

pytest、unittest --测试用例 - 用代码写测试用例、执行测试用例、生成测试结果

写测试用例:用例:前置后置、步骤、断言

1、报告
2、用例收集
3、执行用例
4、断言
5、数据驱动
6、重新运行失败用例
7、筛选
8、前置和后置的处理
9、加载测试用例

pytest 和 unittest 的区别

1.表达用例:

unittest:定义一个测试类,继承unittest.TestCase
pytest: 类、函数

2.断言的表达:

unittest:self.assertXXX()
pytets: assert 表达式()

3.收集用例:

unittest:TestLoader类 + TestSuite类, discover收集用例
pytest:自动收集

4、前置后置:

unittest:setup、teardown   setupclass、teardownclass  固定名称
pytest:不固定名称(函数)、前置后置放在一个函数里,独立的 不与测试类放在一起

	1、怎么知道函数它是一个前置还是后置?
		@pytest.fixture
		def init():
		   pass

	2、怎么区分前置和后置
		@pytest.fixture
		def init():
		   driver = webdriver.Chrome()
		   driver.get("xxxx")
		   yield --后置
		   driver.quit()
			

	3、作用域是什么?测试函数、类、模块、会话 
	@pytest.fixture (scope="") 
	function(测试用例)- class(测试类)- module(模块 .py文件) - session(会话)
	

	4、如果返回数据	
		yield 后加返回值

共享:conftest.py -- 固定名称,专门存放fixture ,用例文件中不需要引入,直接调用fixture名称

调用:	5、测试用例中调用
	@pytest.mark.usefixtures("函数名 init") 
		
测试用例的参数:1)数据驱动  2)fixture的返回值

1)用例不需要使用fixture 返回值:一定要@pytest.mark.usefixtures
2)用例要使用fixture的返回值:
	方式一:@pytest.mark.usefixtures(“”)。fixture函数名称作为用例参数
	方式二:直接fixture函数名称作为用例参数
3)你需要的时候才调用
4)如果测试类下面,所有的测试用例都使用同一个函数级别的前置后置
那么可以直接在类名上声明调用:@pytest.mark.usefixtures(“函数级别的fixture”)

5、插件:

unittest:无
pytest:700+

筛选用例:

1) 给用例打标记 -- 一般冒烟或者回归使用
	先注册  创建pytest.ini 文件下 [pytest] marker = 
	在用例/类上面:@pytest.mark.标记名称

2) 运行的时候,只运行标记用例

收集机制:
1、目录:pytest命令转载那个目录下执行,那就默认从那个文件目录下开始搜索用例

2、文件:目录下所有的文件都需要去看是否有用例吗?
不需要
目录下,有文件、子包
符合以下标准的文件,才会去文件中确认是否有用例
标准:1).py 2)文件名以test_开头或者_test结尾

3、用例名称:以test_开头的函数,或者以Test开头的类的下面,以test_开头的方法

执行顺序:
1)文件名称 - ASCII排序 那个文件先识别,那个文件下的用例先执行
2)文件内部:代码的先后顺序从上到下执行

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-07-14 23:15:03  更:2021-07-14 23:15:16 
 
开发: 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年5日历 -2024/5/7 15:34:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码