我创建了一个测试来创建票证。当我点击“新票”时,它会弹出一个弹出表单。我填写标题和正文,然后单击“保存并新建”。此时我创建了一个循环。当 i<10 时,重复测试。我可以拿到第一张票,但在第二张票中,它只是退出并在我的标题中显示错误。我已经到了几乎开始第二张票的地步,但是它在错误的区域输入了文本,我不明白。它在我的“标题”上方的字段中输入文本。我也有基于 ID 的 send_keys。这是代码:
while i<2:
driver.implicitly_wait(10)
title = f.name()
driver.find_element_by_name('txtsummary')
driver.find_element_by_name('txtsummary').send_keys(title)
driver.find_element_by_name('txtcontactorg').send_keys('unnamed')
body = f.name()
page = driver.find_elements_by_xpath('//td[@class="mceIframeContainer mceFirst mceLast"]/iframe')[1]
page.click()
page.send_keys(body)
driver.find_element_by_xpath('//span[text()="Save and New"]').click()
如果我取出隐式等待,它会在保存第一个文本后立即将文本输入错误的框中。如果我把它留在里面,它只会等待 10 秒然后关闭。我的第一张票总是被创建,下一张票总是比失败要花很长时间。我的意思是,在我的最后一行代码中,保存和新建,该行运行大约需要 8 秒,而它应该在发送正文后立即运行。我有一种感觉,这是一个因素。