Pytest这些功能你必须要掌握 自动化脚本如何切换环境 (pytest框架)

本文目录导航:

自动化脚本如何切换环境?Pytest这些功能你必须要掌握

自由切换环境在自动化测试中至关重要。

作为测试人员,我们经常需要在不同的环境中执行测试用例,如线上环境、测试环境和预上线环境等。

为了使 Python 编写的测试用例具备灵活的环境切换能力,本文将重点介绍如何利用 pytest 框架实现这一功能。

Pytest这些功能你必须要掌握 自动化脚本如何切换环境 (pytest框架)

为了便于理解,我们将从三种方法入手,逐一探讨如何通过 pytest 实现环境切换。

方法一:pytest-base-url

pytest 提供了 `pytest-base-url` 插件,专为管理 base_url 设计。

此插件可通过命令行参数或配置文件方式使用。

方法二:自定义命令行参数

利用 pytest 的 hooks 函数,如 `pytest_addoption`,可自定义命令行参数,灵活管理多个 URL 地址。

在 `` 文件中定义函数,为不同的环境(如数据库 URL)提供命令行参数。

方法三:yml 和 fixture 配合使用

创建 `` 文件用于配置当前执行环境,同时在 `` 文件中定义两个 fixture 函数,分别读取配置文件内容并配置具体的环境信息(如 QA 或 Release 环境)。

通过配置文件中的信息动态调整 `project_url` 和 `mysql_url`。

总结,灵活运用以上方法,自动化测试人员可以轻松实现测试用例在不同环境间的自由切换。

其中,使用 yml 和 fixture 的方法在灵活性上更胜一筹,可根据项目特点进行选择。

希望本文提供的内容能够帮助您在实际工作中解决环境切换难题。

自动化测试 - 重复执行测试

安装插件

全局安装:即安装在全局环境中,新创建的工程导入全局环境时会将该包导入,cmd 输入:pip install pytest-repeat。

局部安装:即安装在当前项目的环境下,新创建的工程不会同步该包,在 PyCharm→File→setting,搜索 pytest intrepreter,点击 “+” 号,如下图所示:

注意:pytest-repeat不能与测试类一起使用。

无论--count设置多少,这些测试始终仅运行一次,并显示警告。

注: 在测试用例前添加注解(value),value 表示重复的次数,来实现单条用例的重复执行。

执行效果如下:

在终端输入:

注: -s:表示输出用例中的调式信息,比如 print 的打印信息等。

-v:表示输出用例更加详细的执行信息,比如用例所在的文件及用例名称等。

执行效果如下:

作用:可以覆盖默认的测试用例执行顺序,类似fixture的scope参数

在终端输入:

命令行参数 function:默认,范围针对每个用例重复执行,再执行下一个用例 class:以class为用例集合单位,重复执行class里面的用例,再执行下一个 module:以模块为单位,重复执行模块里面的用例,再执行下一个 session:重复整个测试会话,即所有测试用例的执行一次,然后再执行第二次

执行效果如下:

方法一:通过注解的形式实现失败重运行

注: reruns: 表示重运行的次数 reruns_delay: 表示重运行次数之间的延迟时间,单位:秒

执行结果如下:

方法二:通过使用命令行参数,实现失败重运行

在终端输入:

执行结果如下:

将 pytest 的 -x 选项与 pytest-repeat 结合使用,可以实现在重复运行测试用例的过程中,测试用例第一次失败时就停止运行,具体实现方法如下:

在终端输入:

执行结果如下:

最完整的Pytest自动化用例管理参数命令整合

在Pytest的自动化测试用例管理中,通过命令行参数可以精细控制测试执行过程和输出模式。以下是一些关键的参数整合:

通过这些命令,你可以根据项目需求灵活定制Pytest的测试执行策略,提高测试效率并获取清晰的测试报告。

你可能想看:
« 上一篇
下一篇 »

相关推荐

FreeBasic:强大免费开源的64位basic编译器及应用优势

2025年05月10日

82阅读

脊柱侧弯矫正方法大盘点:运动康复、支具矫正等多种方式

2025年05月09日

85阅读

如何在winForm标题栏去掉标题文字且任务栏图标正常显示

2025年05月09日

85阅读

十一黄金周促销广告词大全,国庆购物狂欢等你来

2025年05月09日

77阅读

关闭快速编辑模式及插入模式,设置控制台指定文字颜色举例

2025年05月09日

63阅读

黄金搭档低糖高钙饮品包装及成分功效全解析,适合人群要知晓

2025年05月09日

91阅读