PlayWright(十六)- Pytest断言

2023-10-17 10:00:12 浏览数 (1)

我们在写自动化测试的时候,得到测试结果之后,现在要开始拿实际结果与期望结果做对比了

那如果是测试1个结果,我们可以用肉眼比对,如果是百十来个用例结果,我们肉眼就看不过来了,所以我们需要断言,而在Pytest中也有断言,而且Pytest的断言使用的是Python自带的,所以使用起来很方便

使用的断言关键字是assert,当然assert直译就是断言,所以很清晰

那我们怎么使用他呢?

语法:assert 表达式

下边有几个常用的断言

判断是否为真

assert xx

判断不为真

assert not xx

判断a是否包含b

assert a in b

判断a不包含b

assert a not in b

判断两值相等

assert a == b

判断两值不相等

assert a != b

好了,又到了我们的实战环节了

1、判断是否为真或为假,我们直接使用True 和 False

代码语言:javascript复制
1 def test_01():
2     assert True
3 def test_02():
4     assert not False

我们看一下结果

2、判断是否包含或是否不包含,我们直接使用in 和 not in

代码语言:javascript复制
# hello 在 hello world里就断言成功,否则断言失败
def test_01():
    assert "hello" in "hello world"

# hi不在hello world 里就断言成功,否则断言失败
def test_02():
    assert "hi" not in "hello world"

可以运行看下结果

3、判断是否相等或不相等,我们直接使用==和 !=

代码语言:javascript复制
1 def test_01():
2     assert 2 == 1   1    # 后边的1 1是我们的预期结果,2是实际结果,两者如果相等代表断言成功,否则断言失败
3 
4 def test_02():
5     assert 3 != 1   1     # 后边的1 1就是我们的预期结果,3是实际结果,两者如果不相等代表断言成功,否则断言失败

上边我们都会断言成功,那断言失败的场景是什么呢?

我们来看下,把上边断言2的改成这个assert 3 == 1 1,我们再来查看结果

从上边可以看到我们预期是2,实际是3,所以断言失败,提示断言错误

断言相等我们一般使用的比较多,在接口自动化中,我们可断言接口返回的成功状态码,在ui自动化中我们可以断言登录成功后的个人信息,或者成功后的提示

总之,上述几种可以结合业务灵活使用,当然断言还有其他的玩法,等我们实际用的时候再做讲解

0 人点赞