,,Python自动化测试框架pytest的详解安装与运行

,,Python自动化测试框架pytest的详解安装与运行

本文主要介绍Python自动化测试框架pytest的介绍、安装和操作。有需要的朋友可以借鉴一下,希望能有所帮助。祝你进步很大。

:

目录

1.pytest 2简介。pytest 1的安装。使用以下命令安装2。检查是否成功安装了正确的版本3。pytest鉴定条件4。运行pytest 4.1在pycharm 4.2中调用在Python代码中调用4.3用命令行调用常用参数表参数演示示例:

1. pytest的介绍

Py是一款非常成熟的全功能python测试工具,主要有以下几个特点:

简单、灵活、易用;

支持简单单元测试和复杂功能测试。

显示详细的断言失败信息。

能自动识别测试模块和测试功能。

在测试会话、测试模块、测试类和测试功能级别都有fixture。

它可以用于自动化测试,如selenium/Appium和接口自动化测试(pytest请求);

丰富的第三方插件和自定义扩展;

与Jenkins等可持续集成工具的良好集成。

2. pytest的安装

1. 使用以下命令进行安装

pip安装-U pytest

参数描述:

-U:将指定的软件包升级到最新的可用版本。

其他说明:

官网的安装说明有-U参数,但是没有-U参数也可以

2. 检查是否成功安装正确版本

$ pytest -版本

pytest 6.2.4

3. pytest识别测试的条件

1.如果没有指定参数,pytest将从testpath(如果已配置)或当前目录中递归查找与norecursedirs不匹配的目录。

2.在目录中查找所有匹配test_*的文件。py和* _ test.py。

3.从匹配的测试文件中,收集满足以下条件的测试用例:

类外的所有test_*方法

Test*类中包含的所有test_*方法(Test*类不能包含__init__()方法)

4. pytest的运行

Py以下列方式运行:

1.呼叫皮查姆。

2.用Python代码调用

3.使用命令行拨打电话

4.1 Pycharm中调用

Pycharm中默认的测试运行器是Unittest,用pytest编写的测试文件和测试用例无法识别。

进入首选项-工具-python集成工具,

在将测试中的默认测试运行程序修改为pytest之后,

可以直接使用Pycharm中的Run按钮调用pytest,不需要参数。

4.2 Python代码中调用

在代码中添加入口函数—pytest.main(),以便在Python代码中调用pytest。

pytest.main()的参数:

1.args:命令行指令列表集

样本代码样本1:

导入pytest

类别测试演示:

def test_demo1(自身):

打印('测试演示1 ')

def test_demo2(自身):

打印('测试演示2 ')

if __name__=='__main__ ':

pytest . main([' test _ sample . py:test demo:test _ demo 1 ','-v'])

test . main([' test _ sample . py:test _ demo 1 ','-v'])的参数说明:

test_sample.py:TestDemo:test_demo1 ' ':表示test _ sample . py中test demo类中名为test _ demo 1的测试方法。

-v:表示打印详细的运行日志信息。

运行结果:

2.插件:可以在初始化过程中自动注册的插件对象列表。

样本代码样本2:

导入pytest

导入系统

类别测试演示:

def test_demo1(自身):

打印('测试演示1 ')

def test_demo2(自身):

打印('测试演示2 ')

MyPlugin类:

def pytest_sessionfinish(self):

打印(“***测试运行报告完成”)

if __name__=='__main__ ':

sys.exit(pytest.main(['-v ',' test _ sample . py:test demo:test _ demo 1 '],plugins=[MyPlugin()]))

Test.main (['-v ',' test _ sample . py:test demo:test _ demo 1 '],plugins=[myplugin ()])参数描述:

Plugins=[MyPlugin()]):传入自定义的MyPlugin()函数。

运行结果:

4.3 使用命令行调用

1.使用python调用

当我们在代码中添加入口函数时,可以使用python来调用pytest。

以示例2的代码为例,在终端输入命令:

python测试_样本. py

运行结果:

2.用pytest调用

常用参数列表

以下是pytest的一些常用执行参数。使用pytest - help可以查看其他参数。

参数

解释

Pytest目录路径

运行可以在指定目录中收集的测试。如果为空,默认情况下将执行当前目录中收集的测试。

文件名. Py

执行单个pytest模块。

Pytest filename.py:类名

在模块中运行类。

Pytest文件名。py:类名:方法名

在模块中运行类的方法。

pytest -v

打印详细的操作日志信息。

Test-v-s文件名. py

通过控制台输出结果,它还输出详细的运行日志信息。

Pytest -x文件名. py

一旦运行出错,它就停止运行。

Test-k '类名而不是方法名'

执行关键字的用例

pytest-m[标记名]

@pytest.mark.[ tagname]将运行该标记的测试用例。

pytestmax fail=[num]

当运行误差达到num时停止运行

pytest仅收集

只收集测试用例。

pytestjunitxml=。/result.xml

生成执行结果文件

pytest设置-显示

回到fixture的执行过程

参数演示示例:

演示目录如下

1.pytest目录路径:运行可以在指定目录中收集的测试。

2.pytest文件名。py:执行单个pytest模块。

3.pytest文件名。py: class name:在模块中运行一个类。

4.pytest文件名。py: class name: method name:运行模块中某个类的方法。

5.pytest -v:打印详细的运行日志信息

6.pytest -v -s文件名。py:带有控制台输出结果和操作的详细日志信息。

7.pytest -x文件名。py:一旦运行出错,就停止运行。

8.pytest -k“类名而非方法名”:执行关键字的用例

注意:在这个例子中,所有带有“test_c”和“test_d”的测试用例都将被执行。

9 . py test-m[标记名]:@ py test . mark .[标记名]将运行这个标记的测试用例。

用@pytest.mark.[ mark]标记这两个测试方法。

运行结果:

只运行了标记的两个测试方法。

10.pytest-maxfail=[num]:运行错误达到num时停止运行。

修改代码以模拟两个失败的测试案例。

运行结果:

1.pytest-correlation-only:只收集测试用例。

12.pytest-JUnit XML=。/result.xml:生成执行结果文件。

执行后,会在相应的目录下生成一个结果文件。

13.13.pytest - setup-show:跟踪fixture的执行过程。

修改原代码。添加fixture修饰函数并修改test_demo1测试方法。

运行结果:

结束注释:

以上内容是我看了pytest官方文档后根据个人理解整理的。内容上可能有一些误解。请留言指正。谢谢你

以上是Python自动化测试框架pytest的安装和运行细节。更多关于Python自动化测试框架pytest的信息,请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • android自动化测试框架有哪些,ios手机自动化测试工具,Android和iOS 测试五个最好的开源自动化工具
  • ,,如何使用IOS自动化测试工具UIAutomation
  • android自动化测试框架有哪些,ios手机自动化测试工具
  • ,,python自动化测试之DDT数据驱动的实现代码
  • selenium+java自动化测试框架,selenium自动化测试pdf
  • java自动化测试框架,java 自动化测试工具
  • 接口自动化测试面试问题,关于接口测试面试题
  • 自动化测试工具可以用在哪种测试过程中,测试自动化工具有哪些
  • airtest和appium自动化测试,airtest全自动脚本
  • 测试自动化面试问题及答案,自动化测试面试题及答案大全(3)
  • 自动化测试框架是什么,什么叫自动化测试框架
  • python+selenium自动化测试框架搭建,selenium自动化测试环境搭建
  • 接口测试与接口自动化测试,接口自动化测试项目实战
  • appium自动化测试环境搭建,python appium自动化测试框架
  • pytest+request自动化测试框架搭建,pytest测试框架常用功能
  • 留言与评论(共有 条评论)
       
    验证码: