单元测试pytest

一、命名规则

类名和方法名必须以test开头

二、pytest生成自带的html测试报告

  1. 格式:pytest.main(["--html=./report.html","模块.py"])

  2. 格式:pytest.main([‘--html=./report.html’,‘模块.py::类::test_a_001']) 指明所调用的类和函数

  3. 格式:pytest.main([‘--html=./report.html’]) 无效的

  4. 格式:pytst.main(['-x','--html=./report.html','t12est000.py'])

    -x:出现一条测试用例失败就退出测试
    -v:丰富信息模式, 输出更详细的用例执行信息
    -s:显示print内容
    -q:简化结果信息,不会显示每个用例的文件名
     @pytest.mark.skip()
        def test001(self):
            assert 2==2
    

三、pytest的运行方式

. 点号,表示用例通过
F 表示失败 Failure
E 表示用例中存在异常 Error

四、文件读取

  1. 读取csv文件

    先创建文件,然后读取

    import csv   #导入csv模块
    class ReadCsv():
        def read_csv(self):
            item =[]    #定义一个空列表
            c = csv.reader(open("../commonDemo/test1.csv","r"))    #得到csv文件对象
            for csv_i in c:
                item.append(csv_i)      #将获取的数据添加到列表中
            return item
                
    r = ReadCsv()
    print(r.read_csv())
    
  2. 读取xml文件

    from xml.dom import minidom
    class Readxml():
        def read_xml(self,filename,onename,twoname):
            root =minidom.parse(filename)
            firstnode =root.getElementsByTagName(onename)[0]
            secondnode=firstnode.getElementsByTagName(twoname)[0].firstChild.data
            return secondnode
    

五、Allure

Allure是一款轻量级并且非常灵活的开源测试报告框架,它支持绝大多数测试框架

1.下载、配置环境变量、验证allure是否成功

2.安装allure:pip install allure-pytest

  1. Allure常用的几个特性
    @allure.feature # 用于描述被测试产品需求
    @allure.story # 用于描述feature的用户场景,即测试需求
    with allure.step(): # 用于描述测试步骤,将会输出到报告中
    allure.attach # 用于向测试报告中输入一些附加的信息,通常是一些测试数据,截图等
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容