selenium常用命令
open
open(url)
- 在浏览器中打开URL,可以接受相对和绝对路径两种形式
type
type(inputLocator, value)
- 模拟人手的输入过程,往指定的input中输入值
- 也适合给复选和单选框赋值
click
click(elementLocator)
- 点击连接,按钮,复选和单选框
- 如果点击后需要等待响应,则用"clickAndWait"
- 如果是需要经过JavaScript的alert或confirm对话框后才能继续操作,则需要调用verify或assert来告诉Selenium你期望对对话框进行什么操作。
goBack()
模拟点击浏览器的后退按钮
close()
模拟点击浏览器关闭按钮
select
select(dropDownLocator, optionSpecifier)
- 根据optionSpecifier选项选择器来选择一个下拉菜单选项
- 如果有多于一个选择器的时候,如在用通配符模式,如"f*b*",或者超过一个选项有相同的文本或值,则会选择第一个匹配到的值
元素的定位以及操作
id name class name link text partial link text tag name css selector xpath
通过元素的ID定位元素:findElement(By.id("ele"));
通过元素的名称定位元素:findElement(By.name("ele"));
通过元素的html中的位置定位元素:findElement(By.xpath("ele"));
通过元素的标签名称定位元素:findElement(By.tagName("ele"));
通过元素的链接名称定位元素:findElement(By.LinkText("ele"));
通过元素的类名定位元素:findElement(By.className("ele"));
通过元素的css定位元素:findElement(By.cssSelector("ele");
通过元素的部分链接名称定位元素:findElement(By.pareialLinkText("ele"));
对ID为ele的元素进行点击操作:driver.findElement(By.id(ele));
对ID为ele的元素进行发送字符操作:driver.findElement(By.id(ele).sendKeys("123456"));
操作与获取页面元素
点击:element.click()
填写内容:element.SendKeys()
清空:element.clear()
提交:element.submit()
获取标题:driver.getTitle()
获取Url:driver.getCurrentUrl()
获取文本:driver.getText()
存储勾选情况:element.isSelected()
验证元素是否可展示:element.isDisplayed()
获取标签名称:element.getTagName()
获取指定属性的值:element.getAttribute()
存储可编辑状态:element.isEnabled()
浏览器操作
打开网页:navigation.to()
浏览器最大化:driver.manage().window().maximize()
前进、后退:navigation.back() navigation.forward()
刷新:navigation.refresh()
对于普通键盘,使用 sendKeys(keysToSend) 就可以实现,比如按键 TAB、Backspace 等
Actions action = new Actions(driver);
action.sendKeys(Keys.TAB);// 模拟按下并释放 TAB 键
action.sendKeys(Keys.SPACE);// 模拟按下并释放空格键
/***
针对某个元素发出某个键盘的按键操作,或者是输入操作,
比如在 input 框中输入某个字符也可以使用这个方法。这个方法也可以拆分成:
action.click(element).sendKeys(keysToSend)。
action.sendKeys(element,keysToSend);
左键点击:
Actions action = new Actions(driver);
action.click(driver.findElement(By.name(element)))
右键点击:
Actions action = new Actions(driver);
action.contextClick(driver.findElement(By.name(element)))
双击:
Actions action = new Actions(driver);
action.doubleClick(driver.findElement(By.name(element)))
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?