Python 中 Selenium 的 send_keys() 函数
我们将介绍 Selenium Python 中的 send_keys() 函数并演示其用法。
任何应用程序在进入市场之前都需要经过一些测试。 应用程序应首先满足与其名称相关的所有要求。
我们应该全面测试应用程序,因为没有人能够预测给予应用程序的确切输入。 Python Selenium 可以帮助我们测试所有可能的原因。
send_keys()
是将数字、文本和符号等键盘输入发送到应用程序的文本框的过程。 send_keys()
是 WebDriver 的一部分,每个键盘输入都会发送到此元素。
Python 中 Selenium 的 send_keys() 函数
此方法涉及的第一步是打开我们要测试的 Web 应用程序。 我们可以使用其 URL 打开该应用程序。
等待整个页面加载成功,如果应用程序是动态类型,但测试时网页未完全加载,则测试失败。
下一步涉及选择和搜索发送到键盘输入的所需元素。 该元素通常是一个文本框,允许用户在其中书写。
该元素可以是搜索选项卡或某种形式。 我们可以使用多个选项(例如元素 ID、元素名称和 XPath)来查找元素。
选择元素后,使用 send_keys 方法发送键盘输入。 我们可以使用 id、类名或 xpath 来查找元素。
每个方法的语法如下所示。
# python
getElemById = driver.find_element_by_id("myId")
getElemByName = driver.find_element_by_name("myClass")
getElemByXPath = driver.find_element_by_xpath("//input[@id='myId']")
send_keys()
的主要应用是测试应用程序的大量输入。 然而,了解此方法常用的两个输入非常重要。
使用 Selenium Python 中的 send_keys() 函数进行输入验证
大多数应用程序都有一个广泛使用用户电子邮件地址的登录表单。 因为我们都知道每个电子邮件地址都有一个标准模板,以用户名开头,包括符号@,然后是域名。
现在,我们应该添加验证电子邮件地址的过程。
这将不允许用户通过在登录表单中写入无效的电子邮件地址来登录应用程序。 可以通过发送不遵循主模板的输入来添加和检查应用程序来确认验证。
额外的验证也可以参与此过程。 由于登录应用程序的密码具有一组特定的规则,因此可以通过发送不符合规则的输入来检查此验证。
还应检查应用程序中存在的搜索栏。 搜索栏应显示相关结果,以正确引导用户使用所需的搜索元素。
send_keys()
是一个方便的工具,用于检查搜索栏的预期结果。
某些 Web 应用程序包含特殊功能,应在发布应用程序之前对其进行检查。 Google Meet 就是一种特殊功能的示例,它使用 Ctrl+D 将麦克风静音或取消静音。
示例代码:
# python
from selenium import webdriver
Chromedriver = webdriver.Chrome()
Chromedriver.get("https://www.google.com/")
getElemById = Chromedriver.find_element_by_name("gLFyf")
getElemById.send_keys("This is filed by Selenium send keys")
输出:
从上面的例子可以看出,借助selenium的 send_keys()
方法,我们可以填充任何网站上的任何输入字段。
使用 Selenium Python 中的 send_keys() 函数擦除文本
我们还可以使用相同的 send_keys()
函数编辑和更改键的值。 让我们看一个示例,其中我们将更改输入的值,然后再次更改它。
在此示例中,我们将发送密钥; 休眠 3 秒后,我们将从密钥中删除 3 个字母。 最后,我们再次更改该值,如下所示。
示例代码:
# python
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
link = 'https://www.google.com/'
chromeDriver = webdriver.Chrome("C:\chromedriver.exe")
driverOptions = webdriver.ChromeOptions()
windowSize = chromeDriver.get_window_size()
chromeDriver.get(link)
getElemByName = chromeDriver.find_element_by_name('gLFyf')
getElemByName.send_keys('For test purpose')
time.sleep(3)
getElemByName.send_keys(3*Keys.BACKSPACE)
time.sleep(3)
getElemByName.send_keys('testing second key')
time.sleep(3)
getElemByName.clear()
time.sleep(3)
chromeDriver.quit()
第一步:
第二步:
第三步:
故障排除问题:
- 我们应该确保所选元素来自键盘输入。
- 元素的识别应给出适当的参考,以避免复杂化。
- 始终遵循正确的方法:搜索元素,单击元素,然后发送密钥。
-
当元素不活动或超出范围时,
send_keys()
可能会失败。 确保在处理特定元素时计算这些因素。
相关文章
Python 中 Selenium 的 getAttribute() 函数
发布时间:2023/07/03 浏览次数:162 分类:Python
-
本文将解释如何使用 Selenium 的 getAttribute() 方法。Selenium Python 中的 getAttribute() 函数 getAttribute() 方法可以检索元素属性,例如锚标记的 href 属性。 该函数最初将尝试返回指定属性的值。
在 Python 中使用 Selenium 按文本查找元素
发布时间:2023/07/03 浏览次数:92 分类:Python
-
我们将通过示例介绍在Python中使用selenium通过文本查找元素的方法。在 Python 中使用 Selenium 按文本查找元素软件测试是检查应用程序是否满足用户需求的技术。
在Python中添加Selenium Web Driver等待
发布时间:2023/07/03 浏览次数:136 分类:Python
-
本文将介绍在Python中在Selenium Web驱动程序中添加等待的示例。Python Selenium Web 驱动程序等待 大多数 Web 应用程序都使用 AJAX 技术。
Selenium Python 中的动作链
发布时间:2023/07/03 浏览次数:159 分类:Python
-
动作链对象用于在 Python 中实现动作链。 动作链对象可以将所有动作存储在队列中,队列通过调用 perform() 函数来执行所有存储的操作。如何在 Selenium Python 中创建一个简单的动作链对象
Python Selenium 刷新页面
发布时间:2023/07/03 浏览次数:189 分类:Python
-
我们将学习如何使用 Selenium 在 Python 中刷新网页。在 Python 中安装 Selenium 要在本地计算机上安装 Selenium for Python,您可以在命令行界面 (CLI) 中使用著名的 pip 命令,如下所示。
使用 Selenium Python 检查元素是否存在
发布时间:2023/07/03 浏览次数:91 分类:Python
-
本文向您展示如何使用其 Python 客户端和 API 检查某个元素是否存在于 Selenium 中。使用 find_element() 使用 Selenium Python 检查元素是否存在
Python 中的 Schedule
发布时间:2023/07/03 浏览次数:194 分类:Python
-
本篇文章将介绍 Python 中的 Schedule 包,以在特定时间间隔后定期安排作业。Schedule是Python中的一个轻量级进程调度程序库 在 Python 中安装 Schedule 库
Python 中的工厂模式
发布时间:2023/07/03 浏览次数:174 分类:Python
-
This tutorial demonstrates the use of `factory design pattern` in Python.工厂设计模式属于创意设计模式范畴。 创建设计模式提供了许多对象创建技术,从而提高了代码的可重用性和灵活性。在Python中实现工厂
使用 Python 创建端口扫描器
发布时间:2023/07/03 浏览次数:58 分类:Python
-
本篇文章将介绍如何在 Python 中创建端口扫描器。使用 Python 创建端口扫描器 首先,让我们了解端口的基础知识。 端口是网络中的端点,通过它在服务器和客户端之间传递一些信息。