1.下载geckodriver.exe,并将其放置到JDK下的bin目录中
2.在自己的浏览器上安装Selenium IDE(集成开发环境)插件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.sbh</groupId>
<artifactId>test</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
package com.sbh.test.web;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import java.util.Set;
import java.util.concurrent.TimeUnit;
public class Demo {
@Test
public void test1(){
System.setProperty("webdriver.firefox.bin","D:\\app\\MozillaFirefox\\firefox.exe");
FirefoxDriver driver = new FirefoxDriver();
driver.get("http://localhost:8080/808gps/login.html");
//窗口最大化
driver.manage().window().maximize();
WebElement loginAccount = driver.findElementById("loginAccount");
loginAccount.click();
loginAccount.sendKeys("admin");
WebElement loginPassword = driver.findElementById("loginPassword");
loginPassword.click();
loginPassword.sendKeys("123456");
WebElement phraseLogin = driver.findElementById("phraseLogin");
phraseLogin.click();
phraseLogin.sendKeys("1234");
WebElement loginSubmit = driver.findElementById("loginSubmit");
loginSubmit.click();
//页面加载超时时间
driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);
//定位对象时间,超时未定位到抛出异常
driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
//运营管理
WebElement element = driver.findElement(By.xpath("/html/body/div[5]/div[1]/div[3]/ul/li[6]/div/div/span"));
//异步脚本的超时时间
driver.manage().timeouts().setScriptTimeout(10,TimeUnit.SECONDS);
element.click();
//获取所有窗口选项
Set<String> windowHandles = driver.getWindowHandles();
//获取当前窗口
String before = driver.getWindowHandle();
for (String current : windowHandles) {
//如果是当前窗口跳过
if(before.equals(current)){
continue;
}
before=current;
break;
}
//切换到新窗口
driver.switchTo().window(before);
//车辆信息iframe
WebElement element2 = driver.findElement(By.xpath("/html/body/div[4]/div[2]/div/div[2]/div[2]/div/iframe"));
driver.switchTo().frame(element2);
System.out.println("当前页面标题:"+driver.getTitle());
System.out.println("当前页面链接:"+driver.getCurrentUrl());
WebElement element1 = driver.findElement(By.cssSelector(".search-input.search-text "));
element1.sendKeys("测A00001");
try {
Thread.sleep(10000);
WebElement element11 = driver.findElement(By.cssSelector(".y-btn.y-btn-gray.y-btn-submit "));
element11.click();
Thread.sleep(30000);
} catch (InterruptedException e) {
e.printStackTrace();
}
driver.close();
}
}