0
点赞
收藏
分享

微信扫一扫

接口测试 - python - 接口依赖(根据前一个用例结果,跳过指定用例)

场景:根据用例1的结果来判断是否要跳过用例2

 

unittest的装饰器skip方法,装饰器中的变量先于测试用例执行,所以取不到用例1中的结果。解决方案:在测试用例中使用skipTest()方法,如下:

import unittest

b = 0


class Mytest_1(unittest.TestCase):

def setUp(self) -> None:
pass

def tearDown(self) -> None:
pass

def test_1(self):
global b
b = 3

def test_2(self): # 被成功跳过
if b == 3:
self.skipTest('skip reason')
print('2 pass')

@unittest.skipIf(b == 3, 'skip reason')
def test_3(self): # 没跳过,因为装饰器中的b先于test_1执行,b值为0
print('3 pass')


if __name__ == '__main__':
unittest.main()

执行结果如下( 可以看到只有test_2()被跳过了):

接口测试 - python - 接口依赖(根据前一个用例结果,跳过指定用例)_用例

 

ps:跳过的用例,不在测试报告中体现

 

 

 

ps:

@unittest.skipIf(True, 'skip_reason')  1.是装饰器,既可以作用于类,也可以作用于方法  2.跳过条件一般为常量

self.skipTest('skip_reason') 1.是执行语句,写在方法内,跳过该方法  2.可根据不同变量值跳过,较灵活



举报

相关推荐

0 条评论