test_T001_launch_browser.py
from cashsite_admin_pageobjects.launch_browser_test.launch_browser_test_manager import LaunchBrowserTestManager
import pytest
class Test_T001_Launch_Browser:
@pytest.fixture(scope="session")
def test_launch_browser(self, browser, url) -> LaunchBrowserTestManager:
launch_browser_test_mng = LaunchBrowserTestManager(browser, url)
# Execute Launch Browser Test.
assert launch_browser_test_mng.execute_test(), "Browser launch was not successful."
return launch_browser_test_mng
test_T002_user_login.py
from cashsite_admin_pageobjects.user_login_test.user_login_test_manager import UserLogInTestManager
from cashsite_admin_testcases.test_T001_launch_browser import Test_T001_Launch_Browser
import pytest
class Test_T002_User_Login:
async def test_user_login(self, test_launch_browser) -> None:
browser = test_launch_browser.browser
url = test_launch_browser.url
user_login_test_mng = UserLogInTestManager(browser, url)
# Execute User Login Test.
assert await user_login_test_mng.execute_test(), "User login was not successful."
为什么我在运行代码时出现以下错误?
未找到 E 装置“test_launch_browser”
您应该将夹具和测试分开。
为了采用更简洁的方法,如果您的装置将被广泛使用,我建议将它们放置在conftest.py中;
conftest.py
import pytest
@pytest.fixture(scope="session")
def test_config():
# setup your test config (place your getting browser and url logic here)
# Assuming that returning a dict will be a good fit for your test
config = {
"browser": browser,
"url": url,
}
yield config
# teardown (do your clean-up)
test_T001_launch_browser.py
from cashsite_admin_pageobjects.launch_browser_test.launch_browser_test_manager import LaunchBrowserTestManager
class Test_T001_Launch_Browser:
def test_launch_browser(self, test_config):
launch_browser_test_mng = LaunchBrowserTestManager(test_config['browser'], test_config['url'])
# Execute Launch Browser Test.
assert launch_browser_test_mng.execute_test(), "Browser launch was not successful."
test_T002_user_login.py
from cashsite_admin_pageobjects.user_login_test.user_login_test_manager import UserLogInTestManager
class Test_T002_User_Login:
async def test_user_login(self, test_config) -> None:
browser = test_config['browser']
url = test_config['url']
user_login_test_mng = UserLogInTestManager(browser, url)
# Execute User Login Test.
assert await user_login_test_mng.execute_test(), "User login was not successful."