我在Python中使用Selenium来创建自动化测试。在此测试中,我尝试从本地目录中选择一个文件。我能够使用Java找到引用,但我很难将其转换为Python。 https://sqa.stackexchange.com/questions/12851/how-can-i-work-with-file-uploads-during-a-webdriver-test
element=driver.find_element_by_id("file_browse").click()
driver.file_detector("<>")
upload=driver.find_element_by_id("<>")
keys=upload.send_keys("<>")
对于文件检测器功能,我一直认为对象不可调用。输入应该是什么?
谢谢!
答案 0 :(得分:1)
只需删除此行:
driver.file_detector("<>")
Python的远程webdriver默认使用LocalFileDetector()
。这看起来像你想要的,看看链接的Java示例。
如果您需要覆盖默认值,您可以使用或子类化selenium.webdriver.remote.file_detector
似乎没有任何关于如何使用FileDetector
的文档,但是source code is quite short and straightforward.
from selenium.webdriver.remote.file_detector import UselessFileDetector
driver.file_detector = UselessFileDetector()
Python设置对象成员的思想就是使用赋值运算符(=
)而不是调用set方法,就像在Java中一样。