webDriver 使用笔记(一)

今天做了一个发邮件的脚本,使用的是selenium2.45.0,firefox36.0这两个兼容版本,本来还要做一个附件上传的功能,今天先下班了!

代码如下:

package webdriver.com;

import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.htmlunit.HtmlUnitDriver; import org.openqa.selenium.ie.InternetExplorerDriver; /** * Hello world! * */ public class App { //浏览器视图对象 private static WebDriver driver = null; //邮箱地址-网易VIP http://vipmail.163.com/ private static String st = "http://mail.163.com/"; //邮箱账户和密码 private static String emailuser = "****"; private static String emailPwd = "****"; public static void main(String[] args) { //打开浏览器 getFirefoxDriver();//getHtmlUnitDriver(); waitTime(0); //打开邮箱地址  getWYVIPEmailDriver(); waitTime(0); //切换为账户密码登陆 System.out.println("切换为账户密码登陆"); driver.findElement(By.id("lbNormal")).click(); waitTime(2000); //输入账户 System.out.println("输入账户"); WebElement element1 = driver.findElement(By.id("idInput")); element1.clear(); element1.sendKeys(emailuser); waitTime(2000); //输入密码 System.out.println("输入密码"); WebElement element2 = driver.findElement(By.id("pwdInput")); element2.clear(); element2.sendKeys(emailPwd); waitTime(2000); //点击登陆 System.out.println("点击登陆"); driver.findElement(By.id("loginBtn")).click(); waitTime(0); //切换为发信界面 System.out.println("切换为发信界面"); //driver.findElement(By.linkText("写 信")).click();; WebElement element_faxin = driver.findElement(By.id("_mail_component_59_59")); element_faxin.click(); waitTime(0); //输入发送地址或者手机号 System.out.println("输入发送地址或者手机号"); WebElement element3 = driver.findElement(By.className("nui-editableAddr-ipt")); //element3.clear(); element3.sendKeys("****@qq.com"); element3.sendKeys(" "); waitTime(0); //输入邮件主题 System.out.println("输入邮件主题"); List<WebElement> element4 = driver.findElements(By.className("nui-ipt-input")); System.out.println(element4.size()); // for(int i=0;i<element4.size()-1;i++){ // element4.get(i).sendKeys("test email to qqEmail!"+i); // } element4.get(2).sendKeys("test email!"); waitTime(0); //输入email正文 System.out.println("输入email正文"); //切换到iframe WebElement iframe = driver.findElement(By.className("APP-editor-iframe")); driver.switchTo().frame(iframe); WebElement element5 = driver.findElement(By.className("nui-scroll")); element5.sendKeys("test send email to qqemail!"); //切换回默认窗口  driver.switchTo().defaultContent(); waitTime(0); //发送 System.out.println("发送"); List<WebElement> element6 = driver.findElements(By.className("nui-btn-text")); // int i=0; // for(WebElement ele:element6){ // String ss = ele.getText(); // System.out.println(i+"|"+ss); // i++; // } element6.get(element6.size()-2).click(); waitTime(10000); driver.findElement(By.id("_mail_tabitem_0_38text")).click(); //退出 //System.out.println("退出"); //driver.quit(); //waitTime(0); //driver.close();  } /** * getDriver(获取driver对象) * @author wangli * @return */ public static WebDriver getHtmlUnitDriver() { driver = new HtmlUnitDriver(); System.out.println("打开HTML浏览器!"); return driver; } // public static WebDriver getIEDriver() { driver = new InternetExplorerDriver (); return driver; } public static WebDriver getChromeDriver() { String bsPath = "C:/Program Files/Google/Chrome/Application/chrome.exe"; System.setProperty("webdriver.chrome.driver", bsPath); driver = new ChromeDriver(); return driver; } public static WebDriver getFirefoxDriver() {//未安装 String bsPath = "D:/Program Files/Mozilla Firefox/firefox.exe"; System.setProperty("webdriver.firefox.bin", bsPath); driver = new FirefoxDriver(); return driver; } /** * waitTime(默认等待5000) * @author wangli * @param time */ public static void waitTime(long time) { if(time > 0){ try { System.out.println("等待"+time/1000+"s!"); Thread.sleep(time); //driver.wait(time); } catch (InterruptedException e) { e.printStackTrace(); } } else try { System.out.println("等待"+5+"s!"); Thread.sleep(5000); //driver.wait(1000); } catch (InterruptedException e) { e.printStackTrace(); } } public static void getWYVIPEmailDriver() { System.out.println("打开网易VIP邮箱!"); driver.get(st); } }

 

你可能感兴趣的:(webDriver 使用笔记(一))