mark中的skip

    1. 调试时不想运行这个用例

    2. 标记无法在某些平台上运行的测试功能,

    3. 当前的外部资源不可用时跳过(如果测试数据是从数据库中取到的,连接数据库的功能如果返回结 果未成功就不执行跳过,因为执行也都报错)

    4. 在某些版本中执行,其他版本中跳过。

    解决:@pytest.mark.skip跳过这个测试用例,可以加条件skipif,在满足某些条件下才希望通过,否则

    跳过这个测试。如图所示
    image.png

    mark中的xfail
    场景:

    1. 功能测试尚未实施或尚未修复的错误,当测试通过时尽管预计会失败(标记为pytest.mark.xfail), 它是一个xpass,将在测试摘要中报告。

    2. 你希望测试由于某种情况而就应该失败

    解决:@pytest.mark.xfail
    image.png

    mark中的标记平台
    场景:
    只执行符合要求的某一部分用例 可以把一个web项目划分多个模块,然后指定模块名称执行。
    App自动化时,如果想Android和IOS公用一套代码时,也可以使用标记功能,标明哪些是IOS 的用例,哪些是Android的,运行代码时指定mark名称运行就可以。

    1. <br />解决:<br /> 在测试用例方法上加**@pytest.mark.webtest**

    以下图为例,进入到py文件所在的包下,执行pytest -s -v test_mark_zi_09.py -m webtest(-m进行用例过滤,-s在控制台显示print的信息),参数-m “not ios”表示除了标记ios的用例,其他全执行
    image.png