pytest基础学习第一课

本文介绍了pytest这个Python测试框架,包括其主要特点、测试用例编写规则、参数化、运行控制、测试报告生成、多进程运行以及失败案例重试。详细讲解了如何通过pytest进行单元测试和功能测试,以及如何利用插件如pytest-selenium、pytest-html等增强测试能力。
摘要由CSDN通过智能技术生成

什么是pytest

pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点:

1、简单灵活,容易上手,文档丰富;

注:看到下面实例确实容易上手,简单灵活和文档丰富目前还未能体会

2、支持参数化,可以细粒度地控制要测试的测试用例;

注:怎么细粒度控制测试用例和怎么参数化还不理解

3、能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests);

注:selenium/appnium,pytest+requests这些词代表什么含义还不清楚

4、pytest具有很多第三方插件,并且可以自定义扩展

  • 如pytest-selenium(集成selenium)、
  • pytest-html(完美html测试报告生成)、
  • pytest-rerunfailures(失败case重复执行)、
  • pytest-xdist(多CPU分发)、
  • pytest--ordering(控制测试运行的顺序)

注:这个NB的插件怎么用没有体会

5、测试用例的skip和xfail处理;

注:代表什么含义不清楚

6、可以很好的和CI工具结合,例如jenkins

注:怎么和Jenkins结合很值得研究

测试case编写规则

  • 测试文件以test_开头(以_test结尾也可以)
  • 测试类以Test开头,并且不能带有 init 方法
  • 测试函数以test_开头

运行pytest的前提是已经安装了pytest module,如果未安装可直接使用pip install pytest进行安装

快速示例

test_pytest_demo.py

import pytest

class TestClass:
    def test_one(self):
      x = "this"
      assert 'h' in x

    def test_two(self):
      x = "hello"
      assert hasattr(x, 'check')

    def test_three(self):
      a = "hello"
      b = "hello world"
      a
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值