繁体   English   中英

有没有办法使用 Python Selenium 在不同的文本框中自动输入文本?

[英]Is there a way to automatically input text in the different text box using Python Selenium?

我想测试一个包含很多文本框的注册表单。
不是手动使用.sendkeys()到每个文本框,有没有办法自动将文本输入页面中的每个文本框?

您可以使用页面工厂来存储定位器并每次都从那里使用,或者您也可以尝试数据/文本驱动框架。

如果我正确理解了您的问题,您是否希望为一种文本框形式使用尽可能少的代码行,每个文本框都有各自的 xpath?

执行此操作的一种方法是使用 xpath(和文本)列表,您可以对其进行迭代并自动填充。

请注意,您可能想要添加一个 WebdriverWait 以等待元素加载到屏幕上,但此代码段可能会帮助您。

# list of tuples consisting of a xpath and text to fill in that textbox
my_list = [('//*[@id="textbox_email"]', 'example@email.com'), ('//*[@id="textbox_password"]', 'pwd123'), (..., ...)]

for xpath, text in my_list:
    driver.find_element_by_xpath(xpath).send_keys(text)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM