【发布时间】:2015-11-14 18:48:48
【问题描述】:
有没有人可以帮助我使以下代码工作?
进口时间 从硒导入网络驱动程序 从 selenium.webdriver.common.keys 导入密钥 # 类 DataddoMobileTestFirefox(): # def setUp_and_login(self, browser): ''' 支持的浏览器有:firefox;铬合金 ''' 全球驱动力 全球电子邮件 全局密码 全局登录_btn # 如果浏览器 == 火狐: 驱动程序 = webdriver.Firefox() elif 浏览器 == 铬: driver = webdriver.Chrome('/Library/Chromedriver/chromedriver') 别的: print('浏览器无法识别,正在退出...') 出口() # # # 执行模块 如果 __name__ == '__main__': DataddoMobileTestFirefox().setUp_and_login(firefox)当我执行模块时,我收到以下错误消息:
回溯(最近一次通话最后): 文件“DataddoMobileFirefox.py”,第 26 行,在 DataddoMobileTestFirefox().setUp_and_login(firefox) NameError:名称“firefox”未定义我相信我已经接近目标了,一些提示会对我有很大帮助 非常感谢。
【问题讨论】:
-
你为什么在课堂上使用全局?另外,如果您只使用一种方法,为什么还要使用一个类?
-
您必须将
firefox和chrome放在引号中,在if、elif和最后一行中。 -
好吧,不要使用全局,传入 args 并在你的 init 方法中使用
self.firefox=firefox等,然后在你的类中使用 self.firefox,在外面使用 instance.firefox -
firefox 应该是实例变量还是字符串“firefox”?它没有在您提供的代码中被声明为任何内容。
-
你的班级被命名为
DataddoMobileTestFirefox。我希望它只处理 Firefox。您为什么还要尝试在该课程中支持 Chrome?
标签: python firefox selenium selenium-webdriver