您好,我正在尝试构建一个自动化基础设施,我构建了一个 ObjectRepository,其中命令在 selenium 中实现,我使用 ObjectTest 并将函数传递给 TestOne。
错误是:
TestOne :: test_one - AttributeError: 'ObjectTest' object has no attribute 'driver'
class ObjectRepository:
def __init__(self, driver):
self.driver = driver
def click1(self, element):
return self.driver.find_element_by_xpath(element).click()
class ObjectTest:
search = (By.XPATH, "//a[contains(text(),'Gmail')]")
def click_gmail(self):
a = ObjectRepository(self.driver)
a.click1(*ObjectTest.search)
class TestOne(Base.Base):
def test_one(self):
one = ObjectTest()
one.click_gmail()
答案 0 :(得分:1)
从问题中的代码我看不到
class ObjectRepository
中定义和初始化的驱动程序被传递到 class ObjectTest
。from selenium import webdriver
在 class ObjectRepository
中,以便 Python 会“理解”self.driver = driver
的含义