首页 > 其他分享 >selenium测试的一些语法

selenium测试的一些语法

时间:2024-11-13 10:49:12浏览次数:3  
标签:定位 driver 元素 selenium element 语法 测试 find

  1. 元素定位语法
    • 通过ID定位:使用find_element_by_id方法,传入元素的ID属性值作为参数。例如,定位一个ID为username的输入框:
element = driver.find_element_by_id("username")
  • 通过名称定位:使用find_element_by_name方法,根据元素的名称属性来定位。比如定位一个名称为password的密码输入框:
element = driver.find_element_by_name("password")
  • 通过XPath定位find_element_by_xpath方法允许使用XPath表达式来定位元素。XPath是一种用于在XML和HTML文档中定位节点的语言。例如,定位一个具有特定文本内容的按钮:
element = driver.find_element_by_xpath("//button[text()='提交']")
  • 通过CSS选择器定位:使用find_element_by_css_selector方法,通过CSS选择器规则来定位元素。例如,定位一个类名为nav - item的导航栏项目:
element = driver.find_element_by_css_selector(".nav - item")
  1. 操作元素语法
    • 输入文本到输入框:定位到输入框元素后,使用send_keys方法输入文本。假设已经定位到一个输入框元素input_element,输入用户名:
input_element.send_keys("张三")
  • 点击元素(如按钮、链接等):使用click方法。例如,定位到一个按钮元素button_element并点击:
button_element.click()
  • 获取元素属性:使用get_attribute方法获取元素的属性值。例如,获取一个链接元素link_elementhref属性:
href_value = link_element.get_attribute("href")
  • 获取元素文本内容:对于一些元素(如标签、按钮等),可以使用text属性获取其显示的文本内容。例如,获取一个标签元素label_element的文本:
text_content = label_element.text
  1. 等待元素出现的语法(使用WebDriverWait
    • 首先要从selenium.webdriver.support.ui导入WebDriverWait,从selenium.webdriver.support导入expected_conditions并简称为EC,从selenium.webdriver.common.by导入By
    • 例如,等待一个ID为result的元素出现,最长等待10秒:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.ID, "result")))
  1. 处理下拉框语法(使用Select类)
    • selenium.webdriver.support.ui导入Select类。
    • 首先定位下拉框元素,然后使用Select类包装它。例如,定位一个ID为fruitSelect的下拉框:
from selenium.webdriver.support.ui import Select

dropdown_element = driver.find_element_by_id("fruitSelect")
select = Select(dropdown_element)
  • 可以通过select_by_value(根据选项的值选择)、select_by_visible_text(根据选项的可见文本选择)或select_by_index(根据选项的索引选择)来选择下拉框中的选项。例如,根据选项的值选择:
select.select_by_value("apple")
  1. 处理警告框语法
    • 当出现警告框时,使用driver.switch_to.alert获取警告框对象。
    • 获取警告框文本:alert_text = alert.text
    • 接受警告框(点击“确定”按钮):alert.accept()
    • 取消警告框(点击“取消”按钮):alert.dismiss()
    • 对于包含输入框的提示框,还可以使用alert.send_keys("输入的文本")来向输入框输入文本。
  2. 多窗口切换语法
    • 获取所有窗口句柄:window_handles = driver.window_handles
    • 切换到指定窗口:driver.switch_to.window(window_handle),其中window_handle是要切换到的窗口的句柄。
    • 获取当前窗口句柄:current_window_handle = driver.current_window_handle

标签:定位,driver,元素,selenium,element,语法,测试,find
From: https://blog.csdn.net/ZXY_ZXR/article/details/143733952

相关文章

  • 继电器测试的优势和特点与其他测试方法有何区别?
    继电器作为电路控制的关键组件,其可靠性直接影响整个系统的性能。继电器测试是确保其正常工作的重要步骤。下面,我将为您概述继电器测试的优势和特点,以及它与其他测试方法的区别。继电器测试的优势和特点高效性继电器测试能够快速发现继电器在实际工作状态下的性能和故障,从而提......
  • ES6常见语法详解
    原文链接:ES6常见语法详解–每天进步一点点0.什么是ES6ES的全称是ECMAScript,它是由ECMA国际标准化组织,制定的一项脚本语言的标准化规范。ES6实际上是一个泛指,泛指ES2015及后续的版本。1.let、const、var的区别let是es6中新增的语法let只对当前区块定义有效:......
  • Freesql、SqlSugar测试有感
    突然心血来潮测试了一下Freesql和SqlSugar的批量插入和批量更新性能,一搜测评一大堆,但是没找到自己想要的结果,自己动手测试一下基本的批量插入和批量更新性能。废话不多说直接贴代码1usingFreeSql;2usingFreeSql.DataAnnotations;3usingSqlSugar;45namesp......
  • AllPairs工具助力正交表测试用例设计
    AllPairs工具助力正交表测试用例设计正交表法是一种高效的测试方法,特别适用于软件测试中需要处理多个控件及其多种取值组合的情况。以下是对正交表法的详细解释:一、正交表法概述正交表法是一种利用正交表来设计测试用例的方法,旨在通过较少的测试次数达到较高的测试覆盖率。正交......
  • Alpha阶段测试报告
    数字电路模拟游戏团队Alpha阶段测试报告一、Version1.0BugList序号Bug类型描述严重性状态1前端显示拖动逻辑门元件时出现不流畅,拖拽路径偶尔卡顿中已记录2功能异常电路的输出不能连接到电路的输入,不然会死循环高待修复3功能异常元件旋转功能在S......
  • 【大数据测试 Hive数据库--保姆级教程】
    大数据测试Hive数据库详细教程一、环境准备二、Hive数据库功能测试1.创建表2.插入数据3.查询数据4.使用条件过滤查询5.删除数据三、Hive数据库性能测试1.查询响应时间2.大数据量查询测试3.分区表性能测试4.并发查询性能四、Hive数据完整性测试1.数据加......
  • 服务器测试基础知识---网卡篇
    bios基本输入输出系统,介于硬件和软件之间bmc用来检测和管理服务器计算机启动步骤加电自检,系统自举,加载引导程序,进入操作系统进入系统的步骤加载引导分区加载内核运行init进程初始化程序OS的启动顺序1,加电自检2,bios启动3,加载引导程序(硬件初始化,设备检测等)4,加载系......
  • 软件测试流程和测试规范标准文档
    软件测试流程和测试规范标准文档1、目的通过制定公司测试流程规范,确保测试工作的规范性和有效性,以保证软件产品的质量满足用户的需求。测试作为质量控制的一种有效手段,运行测试用例找出软件中潜在的各种缺陷,通过协助开发人员修正缺陷来提高软件质量,回避软件发布后由于潜在的......
  • 静态测试解决方案
        随着自动驾驶、车联网等技术突飞猛进的发展,汽车中包含的软件越来越多。如何保证这些软件的质量成了重中之重。经纬恒润拥有十几年的嵌入式软件开发及测试经验及经验丰富的软件测试团队,能够借助测试工具及设备给客户提供优质的静态测试服务。 ISO26262功能安全对于静......
  • Postman接口测试从入门到精通
     一、接口测试的简介和分类接测试就是测试系统组件接口之间的一种测试。分类︰测试外部接∶测试被测系统和外部系统之间的接口。(只需要测试正例即可,看是否调用成功即可)测试内部接口:1.内部接口只提供给内部系统使用。((预算系统,承保系统)(只需要测试正例即可)2.内部接口提供给外......