gpt4 book ai didi

python - Selenium send_keys 卡在 Python 上

转载 作者:行者123 更新时间:2023-11-28 17:29:36 25 4
gpt4 key购买 nike

我目前正在编写“Test-Driven Development with Python”中的示例,更具体地说是第一个功能测试。但是由于一些奇怪的原因,send_keys 不能正常工作。这就是我现在正在尝试的 - 顺便说一句,我将隐式等待更改为显式等待!

    inputbox = self.browser.find_element_by_id('id_new_item')
self.assertEqual( # This passes, it's here just for completeness
inputbox.get_attribute('placeholder'),
'Enter a To-Do item'
)
inputbox.send_keys('Buy peacock feathers')
inputbox.send_keys(Keys.ENTER) # Everything okay up to here
WebDriverWait(self.browser, 10).until(
EC.text_to_be_present_in_element((By.CSS_SELECTOR, "table#id_list_table tr td"), "Buy peacock feathers")
)
table = self.browser.find_element_by_id('id_list_table')

rows = table.find_elements_by_tag_name('tr')
self.assertIn('1: Buy peacock feathers', [row.text for row in rows])

inputbox1 = self.browser.find_element_by_id('id_new_item') # Changed the variable only to test if it would hang too - and it does
inputbox1.send_keys('Use peacock feathers to make a fly')
inputbox1.send_keys(Keys.ENTER) # This hangs
self.fail()
WebDriverWait(self.browser, 10).until(
EC.text_to_be_present_in_element((By.CSS_SELECTOR, "table#id_list_table tr td"), "Use peacock feathers to make a fly")
)

它永远不会到达 self.fail()。我试着把它移到上一行,但测试失败了,这是应该的。但是 inputbox1.send_keys(Keys.ENTER) 永远不起作用,当我在测试运行时看到浏览器时,inputbox1.send_keys('Use peacock feathers to make a fly') 从不在输入框中写“用孔雀 Feather 做苍蝇”。

发生了什么事?我使用的是最新的 Selenium(我想,我是几天前下载的,刚刚检查过,我确实有最新版本)、Python 和 Django 版本,这会在我的笔记本电脑中打开 Firefox Developer Edition。谢谢。

编辑:我试过 disabling multi-process in Firefox ,但结果并没有改变——在尝试写入并按回车键时它仍然挂起。

最佳答案

感谢 alexce 对我的帮助!

我在测试类中更改了以下内容:

from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

def setUp(self):
binary = FirefoxBinary('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe')
self.browser = webdriver.Firefox(firefox_binary=binary)

问题?我使用的是 Firefox Developer Edition,Selenium 显然不完全支持它。所以我只是强制 Selenium 加载我的常规 Firefox,它不再挂起!

关于python - Selenium send_keys 卡在 Python 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35424041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com