我会给稍长的答案在这里。我不知道代码的结构是理想的,但在离开单独暂时,因为我不完全知道你正在尝试做的事情 -
class provisioning():
def login(self): # This method is defined on the object of class provisioning.
browser.get("http://www.yahoo.com")
一种更好的方式来处理这个会是 - (没有很多的错误处理)
在myclass.py
说 -
class Privisioner:
def __init__(self, browser):
self.browser = browser
def login(self, url):
self.brwoser.get(url)
在myclass_driver.py(比方说) -
from myclass import Provisioner
from Main_Package import webdriver # (no need for explicit MainPackage.__init_)
browser = webdriver.Firefox()
provisioning_object = Provisioner(browser=browser)
provisioning_object.login(url="http://www.yahoo.com")
可以选择使'登录'方法为@classmethod
。阅读the documentation,是否应该使用装饰器。现在,我认为这太复杂了,所以上面提到的东西应该更简单些。
仔细查看provisioning.login - 它不是一个类方法。你应该创建一个配置类的对象,然后调用登录。 – gabhijit