我正在尝试验证某些文字,例如使用Python,Webdriver中的driver.getPageSource在网页上的“test001”。 我得到的错误对象没有属性'getPageSource':
Traceback (most recent call last):
File "C:\Users\riaz.ladhani\PycharmProjects\Selenium Webdriver\ClearCore \TestCases\AdministrationPage_TestCase.py", line 32, in test_add_Project
administration_page.add_project()
File "C:\Users\riaz.ladhani\PycharmProjects\Selenium Webdriver\ClearCore \Pages\admin.py", line 43, in add_project
test = self.driver.getPageSource
AttributeError: 'WebDriver' object has no attribute 'getPageSource'
看过其他人的帖子有类似的问题。他们的回复是使用getPageSource。 我不知道为什么我会收到错误。一些帮助表示感谢,谢谢。
我的代码段是:
class AdministrationPage(BasePage):
def is_project_text_present(self, text):
#return str(text) in self.driver.getPageSource
try:
project_list_test = self.driver.getPageSource
except NoSuchElementException, e:
return False
return "test001" in text # check if the project title text test001 is in the page, return true if it is
class AdministrationPage_TestCase(unittest.TestCase):
try: administration_page.is_text_present("test001")
except AssertionError as e: self.verificationErrors.append(str(e))
答案 0 :(得分:4)
对我来说似乎是一个语法错误,它应该是page_source
而不是getPageSource
。请参阅doc
尝试
def is_project_text_present(self, text):
#return str(text) in self.driver.page_source
try:
project_list_test = self.driver.page_source
except NoSuchElementException, e:
return False
return "test001" in text # check if the project title text test001 is in the page, return true if it is
但是,我认为抓住整页源来测试单个文本并不是一个好主意。只需查找目标元素并测试元素是否包含您要查找的文本