Selenium基础

xiaoxiao2021-02-28  45

Selenium基础

   Selenium是一个开源的和便携式的自动化软件测试工具,用于测试Web应用程序有能力在不同的浏览器和操作系统运行。Selenium真的不是一个单一的工具,而是一套工具,帮助测试者更有效地基于Web的应用程序的自动化

   Selenium的IDE(集成开发环境)是一个易于使用的Firefox插件,用于开发Selenium测试案例。它提供了一个图形用户界面,用于记录使用Firefox浏览器,用来学习和使用Selenium用户操作,但它只能用于只用Firefox浏览器不支持其它浏览器。

   Selenium RC的工作方式是这样,客户端库使用Selenium RC服务器经过每个Selenium命令来执行通信。然后服务器通过Selenium命令来使用Selenium核心JavaScript命令浏览器。

1. Selenium环境配置:

下载并安装Java  下载地址http://www.oracle.com/technetwork/java/index.html(我用的是jdk1.8.0_121)

下载并配置Eclipse(Neon.2Release (4.6.2)) 下载地址:https://www.eclipse.org/downloads/

配置Firebug、FirePath和IDE :直接在浏览器添加插件即可 Firefox下载地址:http://ftp.mozilla.org/pub/firefox/releases/建议

配置Selenium RC (selenium-2.48.2)地址:http://www.seleniumhq.org/download/#selenium_ide

配置Selenium的webdriver

2.JAVA环境配置

 JAVA_HOME

 PATH

 CLASS_PATH

3.Webdriver testNG环境配置

 Java环境

 selenium webdriver jar 包

4.firefox 浏览器启动

  import org.openqa.selenium.*;                      //引用包

  import org.openqa.selenium.firefox.FirefoxDriver;      //引用firefox驱动

  WebDriver driver = new FirefoxDriver();

  System.setProperty("webdriver.firefox.bin","C:/Program Files(x86)/Mozilla Firefox/firefox.exe"); //默认浏览器可省略

  driver.get("http://www.baidu.com");

5.chrome 浏览器启动 (需要驱动)

   驱动下载地址:http://chromedriver.storage.googleapis.com/index.html?path=2.7/ 

                http://docs.seleniumhq.org/download/

  import org.openqa.selenium.chrome*;

  import org.openqa.selenium.chrome.ChromeDriver;      //引用chrome驱动

  WebDriver driver ;

  System.setProperty("webdriver.chrome.driver","C:/ProgramFiles (x86)/Google/Chrome/Application/chromedriver.exe");

  driver = new ChromeDriver();

  String checkUrl="http://www.baidu.com";

  driver.get(checkUrl);

6.IE 浏览器启动(需要驱动)

  import org.openqa.selenium.ie.InternetExplorerDriver;

  WebDriver driver ;

  System.setProperty("webdriver.ie.driver","D:/IEDriver/IEDriverServer.exe");

  driver = new InternetExplorerDriver();

  String checkUrl="http://www.baidu.com";

  driver.get(checkUrl);

  driver.quit();

7.在Selenium 的findElement()和findElements()方法通过webdriver和WebElement类提供的帮助进行webdriver定位元素。

   1)findElement()方法返回一个基于指定的搜索条件WebElement对象或最终抛出一个异常,如果没有找到符合搜索条件的任何元素。

   2)findElements()方法返回WebElements符合搜索条件的列表。如果没有发现的元素,则返回空列表。

    driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);

    driver.findElement(By.id("kw")).sendKeys("selenium");

    driver.findElement(By.className("s_ipt")).sendKeys("eclipse");  //用getattribute("value")可以向控制台打印

    driver.findElement(By.name("wd")).sendKeys("mukewang");

    driver.findElement(By.tagName("input")).sendKeys("zhang");

    driver.findElement(By.linkText("糯米")).click();

    driver.findElement(By.partialLinkText("糯米")).click();

    driver.findElement(By.xpath(".//*[@id='kw']")).sendKeys("baidu");

    driver.findElement(By.cssSelector("#kw")).sendKeys("langke");

8.层级搜索

WebElement Table = driver.findElement(By.tagName("table"));

List<WebElement> rows =Table.findElments(By.tagName("tr"));

for(WebElement row:rows)

List<WebElement> tds =row.findElements(By.tagName("td"));

for<WebElement td:tds>{

String value=td.getText();

if(value.equals(tr){

  System.out.println(value);

})

}

9.元素定位(除xpath):

10.元素定位(Xpath):

11.常用API:

转载请注明原文地址: https://www.6miu.com/read-36231.html

最新回复(0)