Loading

摘要: 前言 在进行自动化测试的过程中,我们一定会有这样的需求:希望失败的用例可以自动重跑 在pytest中,提供了pytest-rerunfailures插件可以实现自动重跑的效果 插件安装 pip命令安装 pip install pytest-rerunfailures 使用实例 重新运行所有失败的用例 阅读全文
posted @ 2021-07-03 22:44 RockChe 阅读(736) 评论(0) 推荐(0) 编辑
摘要: 前言 我们在实际自动化测试中,某些测试用例是无法通过一组测试数据来达到验证效果的,所以需要通过参数化来传递多组数据 在unittest中,我们可以使用第三方库parameterized来对数据进行参数化,从而实现数据驱动测试 而在pytest中,也提供了功能强大的@pytest.mark.param 阅读全文
posted @ 2021-07-02 00:01 RockChe 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 前言 在实际的测试中,我们经常会遇到需要跳过某些测试用例的情况,pytest提供了skip和ifskip来跳过测试 下面我们就来通过一些例子看看skip和ifskip具体如何使用吧 skip的用法 使用示例:@pytest.mark.skip(reason="跳过的原因,会在执行结果中打印") 标记 阅读全文
posted @ 2021-06-30 15:26 RockChe 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 前言 在pytest中,我们可以使用mark进行用例的自定义标记,通过不同的标记实现不同的运行策略 比如我们可以标记哪些用例是生产环境执行的,哪些用例是测试环境执行的,在运行代码的时候指定对应的mark即可 实例说明 举个🌰 # test_demo.py import pytest @pytest 阅读全文
posted @ 2021-06-29 23:28 RockChe 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 前言 在之前介绍fixture的文章中,我们使用到了conftest.py文件,那么conftest.py文件到底该如何使用呢,下面我们就来详细了解一下conftest.py文件的特点和使用方法吧 什么是conftest.py 我们之前了解了fixture,fixture可以直接定义在测试脚本中,但 阅读全文
posted @ 2021-06-27 12:03 RockChe 阅读(1268) 评论(0) 推荐(0) 编辑
摘要: 前言 pytest作为单元测试框架,自然少不了断言功能,用过unittest的人都知道,在unittest中有丰富的断言方法,比如assertEqual()、assertIn()、assertTrue()、assertIs()等等,而在pytest中,并没有提供特殊的断言方法,而是直接使用pytho 阅读全文
posted @ 2021-06-24 16:13 RockChe 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 前言 个人认为,fixture是pytest最精髓的地方,也是学习pytest必会的知识点。 fixture用途 用于执行测试前后的初始化操作,比如打开浏览器、准备测试数据、清除之前的测试数据等等 用于测试用例的前置条件,比如UI自动化的登录操作,读取config参数等 用于测试用例之间的参数和数据 阅读全文
posted @ 2021-06-23 16:04 RockChe 阅读(371) 评论(0) 推荐(2) 编辑
摘要: 前言 我们在做自动化的时候,常常有这样的需求: 执行每一条用例时,都重新启动一次浏览器 每一条用例执行结束时,都清除测试数据 在unittest中,我们可以使用 setUp() 和 tearDown() 两个方法来实现以上需求,其中 setUp() 方法用于初始化测试固件;而 tearDown() 阅读全文
posted @ 2021-06-21 23:50 RockChe 阅读(296) 评论(0) 推荐(1) 编辑
摘要: 什么是Pipenv Pipenv是python官方推荐的虚拟环境管理工具,可以把它当作是virtualenv,pip,pyenv三者的集合工具,类似于npm和composer。 它能够自动为项目创建和管理虚拟环境,从 Pipfile 文件中添加或者删除包,同时生成 Pipfile.lock 文件来锁 阅读全文
posted @ 2021-06-18 11:52 RockChe 阅读(722) 评论(0) 推荐(0) 编辑
摘要: Pytest特点 Pytest是Python的一个第三方单元测试库。它的目的是让单元测试变得更容易,并且也能扩展到支持应用层面复杂的功能测试。 Pytest的特点有: 入门简单,易上手,文档丰富 支持用简单的assert语句实现丰富的断言,无需复杂的self.assert*函数 支持参数化 自动识别 阅读全文
posted @ 2021-06-17 23:19 RockChe 阅读(374) 评论(0) 推荐(0) 编辑