Java Selenium WebDriver 常用方法

这篇具有很好参考价值的文章主要介绍了Java Selenium WebDriver 常用方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、创建浏览器对象
//谷歌为例
System.setProperty("webdriver.chrome.driver", "src\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
二、设置窗口位置、大小
//设置浏览器窗口位置,相对于屏幕左上角(0,0)的位置
Point point = new Point(100, 100);
driver.manage().window().setPosition(point);
//设置浏览器窗口大小
Dimension dimension = new Dimension(500, 500);
driver.manage().window().setSize(dimension);

//获取浏览器窗口位置
Point position = driver.manage().window().getPosition();
System.out.println(position);
//获取浏览器窗口大小
Dimension size = driver.manage().window().getSize();
System.out.println(size);

//浏览器窗口最大化
driver.manage().window().maximize();
//全屏
driver.manage().window().fullscreen();
三、访问网页操作
//访问网页地址(第一种方式)
driver.get("https://www.hao123.com/");
//访问网页地址(第二种方式)
driver.navigate().to("https://www.baidu.com/");
//网页后退
driver.navigate().back();
//网页前进
driver.navigate().forward();
//刷新网页
driver.navigate().refresh();
四、获取网页信息
//获取当前页面Url
String currentUrl = driver.getCurrentUrl();
System.out.println(currentUrl);
//获取当前页面源码
String pageSource = driver.getPageSource();
System.out.println(pageSource);
//获取当前页面Title
String title = driver.getTitle();
System.out.println(title);
//获取当前窗口句柄
String windowHandle = driver.getWindowHandle();
System.out.println(windowHandle);
//获取当前所有打开窗口的句柄
Set<String> windowHandles = driver.getWindowHandles();
for (String handle : windowHandles) {
    System.out.println(handle);
}
五、切换窗口

driver.switchTo().window("要切换的窗口句柄");

六、截图保存
File fileTo = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
try {
    FileInputStream fileInputStream = new FileInputStream(fileTo);
    FileOutputStream fileOutputStream = new FileOutputStream("test.png");
    byte[] bytes = new byte[1024];
    int len = 0;
    while ((len = fileInputStream.read(bytes))!=-1){
        fileOutputStream.write(bytes);
    };
} catch (IOException e) {
    e.printStackTrace();
}
七、关闭窗口
//杀掉浏览器进程-谷歌为例(注意:此方法杀掉了所有谷歌进程,包括自己打开的和程序打开的)
WindowsUtils.killByName("chrome.exe");
//关闭当前窗口,如果仅剩一个窗口,则退出浏览器
driver.close();
//退出浏览器
driver.quit();
八、元素定位
1.使用ID定位
WebElement webElement = driver.findElement(By.id("ID值"));

2.使用name定位
WebElement webElement = driver.findElement(By.name("name值"));
List<WebElement> elements = driver.findElements(By.name("name值"));

3.使用链接的全部文字定位
WebElement webElement = driver.findElement(By.linkText("链接的全部文字内容"));
List<WebElement> elements = driver.findElements(By.linkText("链接的全部文字内容"));

4.使用部分链接的文字定位
WebElement webElement = driver.findElement(By.partialLinkText("链接的部分文字内容"));
List<WebElement> elements = driver.findElements(By.partialLinkText("链接的部分文字内容"));

5.使用标签名称定位
WebElement webElement = driver.findElement(By.tagName("页面中的HTML标签名称"));
List<WebElement> elements = driver.findElements(By.tagName("页面中的HTML标签名称"));

6.使用Class名称定位
WebElement webElement = driver.findElement(By.className("页面中的Class属性值"));
List<WebElement> elements = driver.findElements(By.className("页面中的Class属性值"));

7.使用XPath方式定位
WebElement webElement = driver.findElement(By.xpath("XPath定位表达式"));
List<WebElement> elements = driver.findElements(By.xpath("XPath定位表达式"));

8.使用CSS定位
WebElement webElement = driver.findElement(By.cssSelector("CSS定位表达式"));
List<WebElement> elements = driver.findElements(By.cssSelector("CSS定位表达式"));

9.使用jQuery方式定位,先将driver转换为JavascriptExecutor对象,再调用jQuery的find方法查找页面元素,返回List对象
JavascriptExecutor js = (JavascriptExecutor) driver;
List<WebElement> elements =
        (List<WebElement>) js.executeScript("return jQuery.find('jQuery定位表达式')");
九、元素操作
WebElement element= driver.findElement(By.id("id值"));
1.清空输入框
element.clear();

2.输入框输入文字
element.sendKeys("Selenium");

3.点击元素
element.click();

4.获取标签名称
String tagName = element.getTagName();

5.获取属性值
String id = element.getAttribute("id");

6.获取CSS属性值
String width = element.getCssValue("width");

7.获取元素是否可见
boolean displayed = element.isDisplayed();

8.获取元素是否可点击
boolean enabled = element.isEnabled();

9.获取元素是否被选中
boolean selected = element.isSelected();

持续更新中...
 文章来源地址https://www.toymoban.com/news/detail-777677.html

到了这里,关于Java Selenium WebDriver 常用方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Web自动化之Selenium常用操作方法大全

    本文总结使用selenium进行web/UI自动化时,会用到的一些常用操作。 定位元素 driver.find_element_by_xpath()#1、绝对路径 2、元素属性 3、层级和属性结合 4、使用逻辑运算符 driver.find_element_by_id()#根据id定位,HTML规定id属性在HTML文档中必须是唯一的 driver.find_element_by_name()#name属性定位

    2024年03月26日
    浏览(51)
  • WebDriver+Selenium实现浏览器自动化

    Selenium是一款可以自动化操作浏览器的开源项目,最初的目的是浏览器功能的自动化测试,但是随着项目的发展,人们根据它的特性也用来做一些更多的有意思的功能而不仅仅是UI的自动化测试工具。就像Selenium官方网站上描述的那样,Selenium可以自动化操纵浏览器。完了!你

    2024年02月03日
    浏览(48)
  • 【软件测试/自动化测试】WebDriver+Selenium实现浏览器自动化

    前言 使用场景 原理 环境准备  开发 First Script WebDriver API 浏览器 元素 总结 Selenium是一款可以自动化操作浏览器的开源项目,最初的目的是浏览器功能的自动化测试,但是随着项目的发展,人们根据它的特性也用来做一些更多的有意思的功能而不仅仅是UI的自动化测试工具。

    2024年02月08日
    浏览(78)
  • 浏览器自动化脚本 Selenium WebDriver 快速入门

    2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)_软件测试刷题小程序-CSDN博客 文章浏览阅读2.7k次,点赞85次,收藏12次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、

    2024年03月09日
    浏览(73)
  • 自动化进阶之路,selenium中webdriver的ChromeOptions参数说明

    可使用ChromeOptions()实现谷歌浏览器一系列功能: 常见不需要的浏览器功能: –disable-client-side-phishing-detection:禁用客户端网络钓鱼检测 –disable-component-extensions-with-background-pages:禁用一些不受影响的内置扩展–disable-extensions –disable-default-apps:禁用默认应用程序的安装 –disab

    2024年02月03日
    浏览(74)
  • UI自动化测试篇 :Selenium2(Webdriver)&TestNG自动化测试环境搭建

     🔥 交流讨论: 欢迎加入我们一起学习! 🔥 资源分享 : 耗时200+小时精选的「软件测试」资料包 🔥  教程推荐: 火遍全网的《软件测试》教程   📢 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!    最开始学习UI自动化,用的工具是QTP10,用起来确实比较容易上手

    2024年03月10日
    浏览(63)
  • web自动化测试系列之selenium的运行原理和常用方法介绍(二)

    在上文中我们编写了一段简单的代码 ,可以驱动浏览器访问百度并搜索 。这里我们再把这段代码再拿来加以说明 。 如果你是初次接触它 ,你可能会想 ,这段代码是怎么驱动浏览器运行的了 ?要知道这个问题的答案 ,就必须搞清楚以下3个问题 。 它(selenium)的运行原

    2024年04月11日
    浏览(43)
  • Python自动化测试 环境搭建 Selenium、WebDriver下载、安装、配置、基本使用详解

    基本于Python语言 和 Selenium框架,使用PyCharm 开发环境,详细介绍自动化测试环境的搭建 以及 基本的使用方法。 Python环境目前已被大部分主流操作系统所支持,比如在Linux、Mac、Unix等系统上就自带了Python环境,但在Windows系统上目前还需要自己安装,(当然如已经安装过了的话

    2024年02月03日
    浏览(67)
  • Python+Selenium.webdriver实现WEB端UI自动化测试(实例脚本)

            本篇记录基于Python+Selenium.webdriver实现WEB端UI自动化测试,其中测试用例使用excel维护。为了在实际项目种的扩展应用,建议学习webdriver的元素定位方法,欢迎在评论区沟通讨论。 该示例选取的是登录页不需要输入验证码校验的基础页面(考虑到现在大部分项目都是

    2023年04月08日
    浏览(55)
  • robotframework+selenium 进行webui页面自动化测试

    robotframework其实就是一个自动化的框架,想要进行什么样的自动化测试,就需要在这框架上添加相应的库文件,而用于webui页面自动化测试的就是selenium库.  关于robotframework框架的搭建我这里就不说了,今天就给大家根据一个登录的实例来讲一讲,selenium库的相关应用吧。 要想

    2024年02月12日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包