我运行下面的代码来验证网页上的文字:不断收到元素没有连接到网页文件
def verifyText(self, Text):
try:
self.switchToFrame(*MainPageLocatars.FRAMEONE)
self.switchToFrame(*MainPageLocatars.SUBLISTFRAME)
except:
pass
self.row.find_element_by_xpath(ListViewLocatars.VERIFYTEXT % Text)
我试过(2)每个步骤之后加入time.sleep但它仍然是给我一个错误,当我运行这个功能 - >>不断得到元件没有以这行代码
self.row.find_element_by_xpath(ListViewLocatars.VERIFYTEXT % Text)
我在这里调用该函数,我应该在哪里重新定义它附加到页面文件错误?
listview = ListView(self.driver, 'First')
listview.verifyText("comp1")
注意,行父:
self.row = self.driver.find_element_by_xpath(ListViewLocatars.ROWPARENT % INDEX_MAP[index])
这是我如何定义函数:
class ListView(Page):
def __init__(self, driver, index):
if index not in INDEX_MAP:
raise ValueError("Invalid index %s" % index)
self.driver = driver
try:
self.row = self.driver.find_element_by_xpath(ListViewLocatars.ROWPARENT % INDEX_MAP[index])
# used for VerifyText function only
except:
self.row = self.driver.find_element_by_xpath(ListViewLocatars.TEXTPARENT % INDEX_MAP[index])
def verifyText(self, Text):
try:
self.switchToFrame(*MainPageLocatars.FRAMEONE)
self.switchToFrame(*MainPageLocatars.SUBLISTFRAME)
except:
pass
self.row.find_element_by_xpath(ListViewLocatars.VERIFYTEXT % Text)
这里是全码:
# all locaters for this class are defined here only
class ListView(Page):
def __init__(self, driver, index):
if index not in INDEX_MAP:
raise ValueError("Invalid index %s" % index)
self.driver = driver
try:
self.row = self.driver.find_element_by_xpath(ListViewLocatars.ROWPARENT % INDEX_MAP[index])
# used for VerifyText function only
except:
self.row = self.driver.find_element_by_xpath(ListViewLocatars.TEXTPARENT % INDEX_MAP[index])
@property
def row(self):
return self.driver.find_element_by_xpath(ListViewLocatars.ROWPARENT % INDEX_MAP[index])
def verifyText(self, Text):
try:
self.switchToFrame(*MainPageLocatars.FRAMEONE)
self.switchToFrame(*MainPageLocatars.SUBLISTFRAME)
except:
pass
self.row.find_element_by_xpath(ListViewLocatars.VERIFYTEXT % Text)
这是现在给我这个错误:
Traceback (most recent call last):
File "autoLoaderTest.py", line 56, in test02_AutoLoaderSubCompany
listview = ListView(self.driver, 'First')
File "C:\Users\cverma\Desktop\SOAPProject\mainPage.py", line 44, in __init__
self.row = self.driver.find_element_by_xpath(ListViewLocatars.TEXTPARENT % INDEX_MAP[index])
AttributeError: can't set attribute
这可能是因为页面是因为时间更新您已经声明'row'元素,所以你不能再使用它了,但需要重新定义它 – Andersson
@Andersson,我需要在哪里重新定义它?请参阅我的更新问题 – user7242550
显示什么是“行”,您如何定义它 – Andersson