zoukankan      html  css  js  c++  java
  • pytest根据用例执行结果决定是否跳过用例

    在实际的自动化测试之中,当testcase1执行成功是其他测试用例执行的前提时,需要获取testcase1的测试执行结果,根据该测试用例判断case2、case3等是否需要执行。比如登录功能,所有的测试都是在登录成功之后进行的,所有登录成功是其他所有用例执行的前提。之前经过各种查找,也尝试了pytest.mark.skipif方法,但是pytest.mark.skipif里面的condition不知道怎么获取,看到有些文章说是用hook方法可以实现,但是本人知识水平尚且不够,没有看懂。。。。。。按照别人的操作,在我的脚本上也运行不成功,所以,自己用了另一种方法来代替。本文中使用到的是pytest.skip方法,截图如下。

    1、在conftest.py中定义一个类

     2、在测试用例中引用该类,并且在test_1中使用setattr方法设置skip 的值,test_2和test_3需要根据test_1的执行结果决定是否跳过,所以在test_2和test_3使用getattr方法获取skip的值。

     

     3、运行结果如下

    PS:程序里的setattr(Failed, "skip", True)和f = getattr(Failed, "skip")换成Failed.skip = True 和f = Failed.skip也是可以的。切记Failed不要写成Failed()

  • 相关阅读:
    vrf
    安装diskimage-builder制作ironic镜像
    打印bios启动日志
    iproute2更新
    ip link add type vrf报错哦
    ip link add type vrf报错哦
    case 条件语句
    Go项目结构
    MySQL与Python交互
    数据提取之JSON与JsonPATH
  • 原文地址:https://www.cnblogs.com/cici-CC/p/12801357.html
Copyright © 2011-2022 走看看