笔记8:yield和addfinalizer

yield

import pytest

@pytest.fixture()

def login():

print('打开浏览器,登录成功')

yield #yield后边代码是用例执行完成后再执行的,相当于teardown

print(‘关闭浏览器’)

#使用fixture

def test_shopping(login):

print('测试购物')

----yield遇到异常

如果其中一条用例出现异常,不影响yield后面teardown执行,运行结果互不影响,并且全部用例执行完之后,yield呼唤teardown操作

addfinalizer  终结函数

yield当用例执行完之后,会执行yield后面的代码,但不能return

addfinalizer 这个实现功能跟yield一样,可以return参数,传给后面用例

你可能感兴趣的:(笔记8:yield和addfinalizer)