在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类提供。
Actions 类提供了鼠标操作的常用方法:
- contextClick() 右击
- clickAndHold() 鼠标点击并控制
- doubleClick() 双击
- dragAndDrop() 拖动
- release() 释放鼠标
- perform() 执行所有Actions中存储的行为
文本框输入文本:sendkeys()
清空文本框:clear()
获取文本:getText() ---> 只能取出标签中间的文本
获取title:getTitle()
获取tagName:getTagName()
获取属性值:getAttribute()
判断元素是否展示:isDisplayed()
判断选择框是否被选取:isSelected()
判断输入框是否被激活:isEnabled()
eg:
package Day2OperateElement; import org.openqa.selenium.*; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.Assert; import org.testng.annotations.Test; import javax.swing.border.TitledBorder; import java.util.List; public class OperateElement { WebDriver webDriver; /* 1.打开百度新闻链接并校验当前链接是否正确打开 */ @Test public void OpenLink(){ System.setProperty("webdriver.chrome.driver","D:\\Program Files\\Java\\Webautomation\\drivers\\chromedriver.exe"); webDriver = new ChromeDriver(); webDriver.get("https://www.baidu.com/"); WebElement newslink = webDriver.findElement(By.name("tj_trnews")); newslink.click(); String linkurl = webDriver.getCurrentUrl(); Assert.assertEquals(linkurl,"http://news.baidu.com/","当前输出不是新闻链接"); } /* 2.打开百度搜索框输入selenium, 点击百度一下搜索,搜索出来的第一行是不是指定值来确定搜索结果 当前搜索结果正确,清除搜索框内内容*/ @Test public void sendkeysTest() throws InterruptedException { webDriver.get("http://www.baidu.com"); //定位搜索框 WebElement inputkuang = webDriver.findElement(By.id("kw")); //输入selenium值,注意sendkeys只针对文本框 inputkuang.sendKeys("selenium"); //定位百度按钮并点击 WebElement baiduButton = webDriver.findElement(By.id("su")); baiduButton.click(); //给页面一个反应时间3s,网速快的时候可能没到就获取到了,网速慢可能30s都不行,sleep不是最好的方法 Thread.sleep(3000); //获取页面title并做校验 String title = webDriver.getTitle(); Assert.assertEquals(title,"selenium_百度搜索"); //清除输入框文本,如果有出错,则清空重新输入 inputkuang.clear(); //清除结束后校验文本框内的String是否是空,不建议再assert方法胡再操作 //gettext获取的标签中间的值,所以当input框输入时并不在inputi标签中间,会获取到空白值 String title2 = inputkuang.getText(); System.out.println(title2); } }
原文地址:https://www.cnblogs.com/chenxiaomeng/p/9721540.html
时间: 2024-11-03 17:17:08