Selenium2(WebDriver)总结(四)---基本元素操作

简介: WebDriver提供了常用的WEB控件的操作方法,比如:按钮、输入框、超链接等,废话不多说,直接上代码: import org.openqa.selenium.By; import org.

 WebDriver提供了常用的WEB控件的操作方法,比如:按钮、输入框、超链接等,废话不多说,直接上代码:

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;

public class WebDriverSimple {
    
    WebDriver driver;    
    
    public WebDriverSimple()
    {
     System.setProperty(
"webdriver.firefox.bin", "D:/Program Files/Mozilla Firefox/firefox.exe"); this.driver = new FirefoxDriver(); } //启动浏览器 public void startBrowser(String url) { driver.get(url); //最大化浏览器 driver.manage().window().maximize(); } //使用xpath获取元素对象 public WebElement locateElementByXpath(String locator) { WebElement element = driver.findElement(By.xpath(locator)); return element; } //使用CSS获取元素对象 public WebElement locateElementByCss(String locator) { WebElement element = driver.findElement(By.cssSelector(locator)); return element; } /**操作输入框input * 1.sendKeys代表输入,参数为要输入的值 * 2.clear代表清除输入框中原有的数据 */ public void testInput(String locator,String content) { //WebElement input = this.locateElementByXpath(locator); WebElement input = this.locateElementByCss(locator); input.clear(); input.sendKeys(content); input.clear(); input.sendKeys(content); } // /**操作超链接link * 1.click代表点击这个a链接 */ public void testLink(String locator) { WebElement link = this.locateElementByXpath(locator); link.click(); } /**操作 下拉框 select * 1.需要一个Select的类 * 2.selectByValue的参数为option中的value属性 * 3.selectByIndex的参数为option的顺序 * 4.selectByVisibleText的参数为option的text值 */ public void testSelect(String locator,int index) { WebElement element = this.locateElementByXpath(locator); Select select = new Select(element); select.selectByIndex(index); } public void testSelect(String locator,String value) { WebElement element = this.locateElementByXpath(locator); Select select = new Select(element); select.selectByValue(value); //select.selectByVisibleText(text); } /**操作单选按钮radiobox * 1.click代表点击选中这个单选框 * 2.isSelected代表检查这个单选框有没有被选中 */ public void testRaidoBox(String locator) { WebElement radio = this.locateElementByXpath(locator); radio.click(); radio.isSelected(); } /**操作 复选框checkbox * 1.click代表点击选中这个多选框 * 2.isSelected代表检查这个多选框有没有被选中 */ public void testCheckBox(String locator) { WebElement checkbox = this.locateElementByXpath(locator); checkbox.click(); checkbox.isSelected(); } /**操作 按钮button * 1.click代表点击这个按钮 * 2.sEnabled代表检查这个按钮是不是可用的 */ public void testButton(String locator) { WebElement submit = this.locateElementByXpath(locator); submit.click(); submit.isEnabled(); }

    /**操作 上传控件upload
    * 1.一般是把路他径直接sendKeys到这个输入框中
    * 2.如果输入框被加了readonly属性,不能输入,则需要用JS来去掉readonly属性!
    */

      public void testUpload(String locator,String path)

    {
        WebElement load = this.locateElementByXpath(locator);
        load.sendKeys(path);
    }
    
    //关闭并退出driver
    public void closeBrowser()
    {
        driver.close();
        driver.quit();
    }
    
    
}

 

目录
相关文章
|
4月前
|
数据采集 测试技术
Selenium与WebDriver:Errno 8 Exec格式错误的多种解决方案
本文讨论了在使用Selenium和WebDriver自动化测试时常见的执行格式错误(Errno 8 Exec format error)问题。错误通常发生在运行ChromeDriver时,与兼容性或路径配置有关。文章提供了多种解决方案,包括手动更改路径、更新或重新安装webdriver-manager包、下载特定版本的ChromeDriver、修改driver_cache.py文件。此外,还介绍了如何结合代理IP技术使用Selenium进行网页抓取,以提高效率和成功率。示例代码展示了如何配置代理IP并使用Selenium访问网站。通过这些方法,用户可以有效解决执行格式错误,并提高网页自动化测试
480 1
Selenium与WebDriver:Errno 8 Exec格式错误的多种解决方案
|
14天前
|
Web App开发 Java
使用java操作浏览器的工具selenium-java和webdriver下载地址
【10月更文挑战第12天】Selenium-java依赖包用于自动化Web测试,版本为3.141.59。ChromeDriver和EdgeDriver分别用于控制Chrome和Edge浏览器,需确保版本与浏览器匹配。示例代码展示了如何使用Selenium-java模拟登录CSDN,包括设置驱动路径、添加Cookies和获取页面源码。
|
5月前
|
前端开发 测试技术 UED
使用Selenium WebDriver模拟用户操作防止滑动条验证
在进行Web自动化测试时,经常会遇到各种前端验证机制,如滑动条验证,这些机制设计用来防止自动化脚本模拟用户行为。在本文中,我们将探讨如何使用Selenium WebDriver来模拟用户操作,以规避这些验证机制。
|
2月前
|
数据采集 Web App开发 测试技术
使用Selenium与WebDriver实现跨浏览器自动化数据抓取
在网络爬虫领域,Selenium与WebDriver是实现跨浏览器自动化数据抓取的利器。本文详细介绍了如何利用Selenium和WebDriver结合代理IP技术提升数据抓取的稳定性和效率。通过设置user-agent和cookie来模拟真实用户行为,避免被网站检测和阻止。文章提供了具体的代码示例,展示了如何配置代理IP、设置user-agent和cookie,并实现了跨浏览器的数据抓取。合理的参数配置能有效减少爬虫被封禁的风险,提高数据抓取效率。
263 6
使用Selenium与WebDriver实现跨浏览器自动化数据抓取
|
2月前
|
Web App开发 JavaScript Java
自动化测试的利剑:Selenium WebDriver入门与实践
【9月更文挑战第21天】在软件开发的海洋中,自动化测试犹如一艘船,帮助开发者们快速航行至质量保证的彼岸。本文将作为你的罗盘,指引你了解和掌握Selenium WebDriver这一强大的自动化测试工具。通过深入浅出的方式,我们将探索Selenium WebDriver的基本概念、安装过程以及编写简单测试脚本的方法。无论你是刚接触自动化测试的新手,还是希望提升测试技能的开发者,这篇文章都将为你提供有价值的指导。
|
2月前
|
Web App开发 Java 测试技术
自动化测试的利器:Selenium WebDriver入门与实践
【9月更文挑战第8天】在软件开发的海洋中,测试是确保我们不会溺水的那根救生索。Selenium WebDriver,作为自动化测试的明星工具,让这根救生索更加结实可靠。本文将带你快速上手Selenium WebDriver,从基础设置到实际操作,再到实战演练,让你的开发之旅更加平稳顺畅。
|
3月前
|
数据采集 Python
如何用Python Selenium和WebDriver抓取LinkedIn数据并保存登录状态
本文介绍了使用Python Selenium和WebDriver库抓取LinkedIn数据的方法。首先,安装Selenium库和对应的WebDriver,然后配置爬虫代理IP以避免频繁请求被检测。接下来,设置user-agent和cookies以模拟真实用户行为,实现登录并保持状态。登录后,使用WebDriver抓取目标页面数据,如用户名、年龄、性别和简历信息。最后,强调了优化代码、处理异常和遵守使用条款的重要性,以提高效率并避免账号被封禁。
如何用Python Selenium和WebDriver抓取LinkedIn数据并保存登录状态
|
3月前
|
JavaScript 测试技术 API
|
3月前
|
XML Java 测试技术
Selenium WebDriver自动化测试(基础篇):不得不掌握的Java基础
关于Selenium WebDriver自动化测试的Java基础篇,涵盖了Java的变量、数据类型、字符串操作、运算符、流程控制、面向对象编程、关键字用法、权限修饰符、异常处理和IO流等基础知识点,为进行自动化测试提供了必要的Java语言基础。
95 1
|
3月前
|
Web App开发 前端开发
Selenium WebDriver
【8月更文挑战第9天】
49 7

热门文章

最新文章