Selenium Python 中的元素方法
Selenium 是一款开源自动化测试工具,可与其他编程脚本(如 Python、Java、Javascript 和 Pearl)一起使用,用于测试 Web 应用程序。它被开发人员广泛用于自动化测试。
Selenium 的元素方法
1. send_keys() -
用于设置输入文本框,包括编辑框、文本区域、表单内的字段和修饰键。它扩展了 keys 类中的属性。
返回类型 - null
2. is_selected() -
检查元素是否被用户选中。
返回类型 - 布尔值(True 或 False)。
3. is_displayed() -
检查元素是否对用户可见。
返回类型 - 布尔值(True 或 False)。
4. get_property() -
用于获取元素的属性。
返回类型 - 属性的值。
5. is_enabled() -
用于检查元素是否启用。
返回类型 - 布尔值(True 或 False)。
6. click() -
用于点击链接或按钮。属性在按钮本身中提及。
返回类型 - 如果存在 URL,则将您定向到以按钮元素为锚点的路径。否则抛出 InvalidElementException。
7. text() -
使用 Xpath 扫描程序通过部分匹配跟踪给定输入文本的出现。
返回类型 - 返回包含输入文本的整行或部分文本。
8. location() -
Location 方法用于检索可访问搜索字段的位置。
返回类型 - 元素的坐标或尺寸,以字典的形式表示。
9. screenshot() -
screenshot 方法允许用户保存当前元素的屏幕截图。
返回类型 - 如果屏幕截图成功,则返回 True;如果出现 IO 错误,则返回 False。
示例 1
以下示例说明了属性的使用,并使用 get() 方法定向到 tutorialspoint 网站。
算法
从 selenium 导入所需的 webdriver 模块。
为 Windows 用户创建使用 Chrome() 的 webdriver 对象,为 Mac 用户创建使用 Safari() 的 webdriver 对象。
获取要打开的 url 并检索数据。
可选地使用上述 selenium 方法进行高级使用。
关闭 webdriver 对象。
# import webdriver from selenium import webdriver # create webdriver object - Windows User driver = webdriver.Chrome() #create webdriver object - Mac Users #Change the settings in the Safari Develop menu to Allow Remote Automation driver = webdriver.Safari() driver.get("https://tutorialspoint.com/") driver.close()
输出
如果使用 Mac OS,请确保在开发菜单中将设置更改为“允许远程自动化”。
示例 2
以下示例说明了 screenshot() 的使用方法,并获取当前元素的屏幕截图。
算法
从 selenium 导入所需的 webdriver 模块。
为 Windows 用户创建使用 Chrome() 的 webdriver 对象,为 Mac 用户创建使用 Safari() 的 webdriver 对象。
获取要打开的 url 并检索数据。
使用 element.screenshot() 并括号内指定图像要存储的路径。
关闭 webdriver 对象。
# import webdriver from selenium import webdriver # create webdriver object - Windows User driver = webdriver.Chrome() #create webdriver object - Mac Users #Change the settings in the Safari Develop menu to Allow Remote Automation driver = webdriver.Safari() driver.get("https://tutorialspoint.com/") element = driver.find_element_by_class_name("header--navbar") # click screenshot element.screenshot('C:\Users\Swetha\Pictures\Screenshots\header.png') driver.close()
输出
您可以在路径中提到的文件夹中查看图像。
结论
它在自动检测用户预定义测试的结果方面具有最大应用。简单来说,它可以被称为自动化测试,可以通过 Selenium webdriver 高效地完成。创建此模块的理念是在短时间内测试应用程序的 UI,以满足客户提出的约束条件。