pytest篇3-断言详解

前言

  • 1、上一篇pytest篇博客我们介绍了pytest的运行和用例的运行规则,今天准备分享一下pytest的断言。
  • 2、断言是用例中必不可少的一步骤,不然就缺失了自动化的意义。

1、pytest断言

在unitest单元测试框架中提供了丰富的断言方法,如assertEqual()、assertIn()、assertTrue()、assertIs()等。unittest断言详解可见我另外博客(链接)。pytest单元测试框架并没有提供专门的断言方法,而是直接使用Python的assert进行断言。

方法描述
assert a==ba、b是否相等
assert a!=ba、b是否不相等
assert a<=ba是否小于等于b
assert a>=ba是否大于等于b
assert a in bb是否包含a
assert a not in bb是否不包含a
assert a判断a是否为True
assert a is True判断a是否为True
assert not a判断a是否不为True
assert a is not True判断是否不为True
assert a is Flase判断是否为Flase

2、实例

# time :2021/2/7 15:18
# Author :Maynard


# 1、a是否等于b
def test_assert_01():
    a = 1
    b = 2
    assert a == b

# 2、a是否不等于b
def test_assert_02():
    a = 1
    b = 2
    assert a != b

# 3、a是否小于等于b
def test_assert_03():
    a = 1
    b = 2
    assert a <= b

# 4、a是否大于等于b
def test_assert_04():
    a = 1
    b = 2
    assert a >= b
# 5、b 是否包含a
def test_assert_05():
    a = 1
    b = (1,2)
    assert a in b

# 6、b是否不包含a
def test_assert_06():
    a = 1
    b = (1,2)
    assert a not in b

# 7、判断a是否为True
def test_assert_07():
    a = 1
    assert a

# 8、判断a是否为True
def test_assert_08():
    a = 1
    assert a is True

# 9、判断a是否不为True
def test_assert_09():
    a = 1
    assert not a

# 10、判断a是否不为True
def test_assert_10():
    a = 1
    assert a is not True

# 11、判断是否为Flase
def test_assert_11():
    a =1
    assert a is False

3、结果

运行命令

pytest test_04assert.py

在这里插入图片描述
总共11条case,六条不通过,五条通过

4、加断言注释

可以在assert断言后面,加一个说明注释。报错是会同样打印出来

def test_assert_01():
    a = 1
    b = 2
    assert a == b ,'a是否等于b'

5、总结

  • 1、pytest断言使用的是python自带的断言库;
  • 2、pytest断言借助python的运算符号和关键字即可轻松实现不同数据类型的断言;
  • 3、unittest断言和pytest的断言不能混用。unittest的断言只能适用于框架本身之内;

ps :

1、后续内容继续深入pytest的学习;
2、有什么问题,欢迎大家评论区评论交流!谢谢大家!
3、如果觉得博主这篇博客对大家有用,麻烦评论区留下自己的‘脚印’ !

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值