第二十九天&pytest

前提:需要安装pytest和pytest-html(生成html测试报告)
在pycharm中安装两个插件pip install pytest 和 pip install pytest-html
pytest中命名规则
类名和方法名都必须以test开头,执行只能找以tset开头的
与unittest一样有四个公共方法setup /setupclass  /teardown /teardownclass
额外的:-x 出现一条测试用例失败就退出测试
-s:显示print内容
跳过某一条用例(函数)
@pytest.mark.skip
运行方式 .代表用例通过
F代表失败   E代表存在异常

需要下载html模板生成报告
1.在指定的模块下,运行test开头的类和测试用例
 pytest.main(["--html=./report.html","模块.py"])
2.指定模块中的指定用例(用冒号分割)
pytest.main(["--html=../report.html","模块.py"])
3.直接执行pytest.main() 【自动查找当前目录下,以test_开头的文件或者以_test结尾的py文件】
pytest.main([‘--html=./report.html’])

allure

下载allure,找到下载路径,将路径配置到path中
在pycharm中安装allure
pip install allure-pytest
allure常用特性
@allure.feature         # 用于描述被测试产品需求
@allure.story             # 用于描述feature的用户场景,即测试需求
with allure.step():   # 用于描述测试步骤,将会输出到报告中
allure.attach             # 用于向测试报告中输入一些附加的信息,通常是一些测试数据,截图等

pytest中的数据驱动

parametrized为pytest中自带的数据驱动装饰器
pytest.mark.parametrize
数据驱动的数据源可以是函数外的数据集合、CSV 文件、Excel 表格、TXT 文件,以及数据库等多种形式。
@pytest.mark.parametrize() 装饰器接收两个参数:
第一个参数以字符串的形式存在,表示用例函数的参数,假如测试函数函数有多个参数,则以逗号分开。
第二个参数用于保存测试数据。
假如只有一组数据,则以列表的形式存在如[0,1],如果有多组数据,以列表嵌套元组的形式存在(如[(0,1), (1,2)])
多组数据用多个变量去接受

 

unittest和pytest的区别

unittest和pytest的区别
uniitest是python自带的模块,只需要import unittest
pytest需要下载pytest才能使用,pip install pytest >>import pytest
都有公共方法:setup /setupclass  /teardown /teardownclass    
命名规则:unittest中类需要继承unittest.TestCase   测试用例必须是test开头
    pyetst中类名和用例名都必须是test开头
生成测试报告
    unittest需要下载htmltestrunner.py模块 才能生成测试报告
    pytest需要下载pytest-html 可以生成测试报告  也可以结合allure生成测试报告
调用
    unittest中 unittest.main()调用
    pytest中pytest.main()调用   可以加参数:-s 可以打印数据   -x   如果有错直接退出, 模块名执行该模块,模块名:test_开头或者_test结尾,不加模块执行全部    
都可以读取csv/xml数据进行。传入测试用例中进行操作
数据驱动
    unittest中数据驱动ddt >>pip install ddt  >>>from ddt import ddt,data,unpack,file_data    
    @ddt修饰器修饰类   @data  传递数据   @unpack 拆包    
    pytest中数据驱动parametrize    
    @pytst.mark.parametrize()

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值