assert断言
assert断言遇到断言失败就会结束执行,case中后面的语句不会执行
用法举例:
assert 1==1 str = "assert in string" assert str.__contains__("assertl")==False assert str.__contains__("assert") tlist = [1,2,3,4] assert tlist.__len__()>0 assert tlist.__contains__(2) assert tlist.__contains__(0) ,"这是失败说明"
pytest.assume断言
assume断言失败后不会使case中断,后面的语句会继续执行
pytest.assume(1 == 2, "这是失败说明") print("中间测试语句") str = "assert in string" pytest.assume( str.__len__()>0, "这是失败说明")
hamcrest断言
断言方法更丰富,可以对字符串、数组等单独有对应的断言方法
1.首先安装 pip install PyHamcrest并导入from hamcrest import *
2.使用assert_that()进行断言
assert_that(10,equal_to(10))
assert_that("hello hamcrest", contains_string('hello'))
assert_that(["1",'2','3'],has_length(3))
3.hamcrest断言失败后下面的语句不会执行
常用hamcrest方法:startsWith,close_to(数字接近),containsString,equalTo(基于对象的比较,可以是数组,比较数组每个元素是否相等),instanceOf(是哪个类的对象)