成功测试
成功测试

您现在的位置: 成功测试简介_成功测试分数 > 成功测试规则 > 单元测试界的高富帅Pytest框架,手把

单元测试界的高富帅Pytest框架,手把

发布时间:2023/10/8 11:02:32   点击数:

本文主要介绍pytest的入门级使用。稍后,将为pytest中的每个函数提供详细的教程。

一、准备:环境安装

pytest是python中的第三方库,使用之前需要先安装,在命令行中运行以下安装命令:

pipinsatllpytest

检查安装是否成功以及安装的版本,命令行命令如下:

pytest--version

执行上述命令,能够输出版本信息,那就说明安装成功啦。

二、用例编写

当我们通过pytest执行用例时,pytest会自动递归遍历执行路径下所有的目录,根据pytest中默认用例的识别的规则,自动收集测试用例。所有在使用pytest编写测试用例之前,我们首先需要了解一下pytest收集用例时默认的用例识别规则。

1、默认的用例识别的规则

1、用例文件:所有文件名为test_开头或者_test开头的文件会被识别为用例文件。

2:用例类,测试文件中Test开头的类就是一个测试用例类。

3、测试用例:测试类中每个test开头的方法就是一条测试用例,测试文件中每个test开头的函数也是一条测试用例,

备注:上述默认的用例查找规则,可在pytest的配置文件进行修改(后续章节会详细介绍配置文件的使用)

另外pytest兼容unittest,以unittest的用例编写规范写的用例,pytest都能够识别出来

通过了解上述pytest中用例识别的规则,可以知道pytest用例编写,能使用函数的形式,也能使用类的形式,那么接下来就分别给大家介绍一下这两种方式编写用例。

2、函数形式编写用例

规则:用例方法名以test开头即可

#\testcases\test_demo1.pydeftest_demo():assert==

使用命令pytest就可以执行测试函数,输出结果如下:

C:\testcasespytest======================testsessionstarts======================platformwin32--Python3.7.3,pytest-5.4.2,py-1.8.0,pluggy-0.13.0rootdir:C:\testcasesplugins:testreport-1.1.2collected1itemtest_demo1.py.[%]======================1passedin0.26s======================3、以类的形式编写用例

规则:测试类命名以Test开头,用例方法以test开头

#test_demo2.pyclassTestDome:deftest_demo1(self):assert11==11deftest_demo(self):assert22==21

命令pytest运行上述用例,结果如下:

======================testsessionstarts======================platformwin32--Python3.7.3,pytest-5.4.2,py-1.8.0,pluggy-0.13.0rootdir:C:\testcasesplugins:testreport-1.1.2collected2itemstest_demo1.py.F[%]======================FAILURES======================___________TestDome.test_demo____________self=test_demo1.TestDomeobjectat0xFdeftest_demo(self):assert22==21Eassert22==21test_demo1.py:25:AssertionError======================shorttestsummaryinfo=======================FAILEDtest_demo1.py::TestDome::test_demo-assert22==21======================1failed,1passedin0.53s======================

上面的运行结果可以看出来,一条用例执行通过,一条执行失败

三、执行测试

在上面我们使用的是pytest这个命令去执行测试用例。关于pytest执行测试,有两种方式,一种是命令行通过pytest这个命令执行,另外在代码中通过pytest.main()这个方法来执行测试。接下来就和大家详细介绍一下pytest执行测试的方式和常用的参数

1、执行参数

测试用例

#测试用例classTestDome:deftest_demo1(self):print(----测试用例执行-----------)assert11==11

参数-v:显示测试的详细参数信息

C:\testcasespytest-s===========================testsessionstarts===========================platformwin32--Python3.7.3,pytest-5.4.2,py-1.8.0,pluggy-0.13.0rootdir:C:\testcasesplugins:testreport-1.1.2collected1itemtest_demo1.py::TestDome::test_demo1----测试用例执行---输出1------------测试用例执行---输出2--------PASSED===========================1passedin0.28s===========================2、pytest.main执行的参数传递

pytest.main执行测试参数传递方式:

参数放在列表中,每个参数就是列表中的一个元素

pytest.main([-v,-s])

详细的参数可以使用命令pytest-h查看

3、指定执行的测试目录

命令pytest测试目录路径

pytesttestcase/

pytest会执行指定目录路径下所有的测试用例

4、指定执行的测试文件

命令pytest测试文件路径

pytesttestcase/test_demo1.py

pytest会执行指定测试文件所有的测试用例

5、指定执行的测试类

命令pytest测试文件::测试类

pytesttestcase/test_demo1.py::TestClass

pytest会执行指定测试类里面所有的测试用例

6、指定执行的测试用例

命令pytest测试文件::测试类::测试方法

pytesttestcase/test_demo1.py::TestClass::test_method

pytest会执行指定的测试方法

基本的入门就给大家介绍到这里



转载请注明:http://www.81guangchang.com/cggz/18294.html

网站简介 | 发布优势 | 服务条款 | 隐私保护 | 广告合作 | 合作伙伴 | 版权申明 | 网站地图

当前时间:


冀ICP备20001468号-10