获取错误 AttributeError:"WebDriver"对象在 selenium 中执行 python 脚本时没有属性 'GoTo'"



我正在使用selenium与python进行自动化。下面是我创建的两个.py文件:

Browser.py:

from selenium import webdriver
class Browser:
    def GoTo(self, url):
        browser.get(url)
browser = webdriver.Firefox()

Login.py:

import unittest
from Browser import *
class Test(unittest.TestCase):
    def setUp(self):
        pass
    def test_Can_Login(self):
        browser.GoTo("http://www.google.co.in")
if __name__ == "__main__":
    unittest.main()

当我运行Login.py时,Firefox打开但什么也不做。它抛出一个错误:

"Traceback (most recent call last):
  File "/media/Pinku/Tests/src/Login.py", line 10, in test_Can_Login
    browser.GoTo("http://www.google.co.in")
AttributeError: 'WebDriver' object has no attribute 'GoTo'"

我是不是忽略了什么?在努力寻找错误之后发布这篇文章。请帮助!

这是因为您的browserFirefox的实例,而不是您定义的类。

class Test(unittest.TestCase):
    def setUp(self):
        self.browser = Browser()
    def test_Can_Login(self):
        self.browser.GoTo("http://www.google.co.in")

然而,如果你想包装Firefox的功能,你应该考虑子类化它,而不是使用全局变量。

class Browser(webdriver.Firefox):
    def GoTo(self, url):
        self.get(url)

最新更新