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()

  • 相关阅读:
    跨期套利策略
    读书笔记 量化交易:如何建立自己的算法交易事业
    ESP8266固件修改可以控制多个IO方法
    ESP8266固件烧录方法
    关于毕设WiFi选型
    关于(x&y)+((x^y)>>1)的探究
    QML添加右键菜单
    初学QML之QML和C++混合方法
    初学QML之qmlRegisterType
    我的第一个QML Button的实现
  • 原文地址:https://www.cnblogs.com/cici-CC/p/12801357.html
Copyright © 2011-2022 走看看