Рассмотрим приведенный ниже пример: поскольку я инициализирую драйвер в методе setUp и использую его в test_login, браузер откроется дважды: первый раз во время setUp, а затем будет закрыто и начнутся тесты.
Если я удалю логику из setUp и помещу ее в test_login, драйвер будет не определен в test_profile и TearDown
Как правильно инициализировать драйвер и использовать его во всем классе, не заставляя браузер открываться дважды?
from selenium import webdriver
import unittest
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
class Test(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome(
service=Service(ChromeDriverManager().install()))
self.driver.get('https://example.com/login')
self.current_url = self.driver.current_url
self.dashboard_url = 'https://example.com/dashboard'
def test_login(self):
self.assertEqual(self.dashboard_url, self.current_url)
def test_profile(self):
self.driver.get('https://example.com/profile')
def tearDown(self):
self.driver.close()
Подробнее здесь: https://stackoverflow.com/questions/751 ... g-the-brow