pytest-fixture
2019-08-14 本文已影响0人
0981b16f19c7
作用
完成setup和teardown操作,处理数据库、文件等资源的打开和关闭
完成大部分测试用例需要完成的通用操作,例如login、设置config参数、环境变量等
准备测试数据,将数据提前写入到数据库,或者通过params返回给test用例,等
1、完成setup和teardown操作,处理数据库、文件等资源的打开和关闭
普通写法
# @classmethod
# def setup_method(cls):
# cls.pcdriver = SeleniumBase().pc_driver()
# cls.base = BasePage(cls.pcdriver)
# cls.login = LoginPage(cls.pcdriver)
# cls.login_url = ReadConfig().get_config_values("url", "base_url")
# @classmethod
# def teardown_method(cls):
# cls.pcdriver.close()
fixture写法
@pytest.fixture(scope="function", autouse=True) # 声明所有执行的用例自动使用
def open_browser(self):
self.pcdriver = SeleniumBase().pc_driver()
self.base = BasePage(self.pcdriver)
self.login = LoginPage(self.pcdriver)
self.login_url = ReadConfig().get_config_values("url", "base_url")
yield self.pcdriver
self.pcdriver.quit()