一、JDK安装与配置
下载地址:
安装目录:D:\Program Files\JAVA(随意安装,目录不要有中文)
配置环境:
路径:计算机→属性→高级系统设置→高级→环境变量
新建 JAVA_HOME 变量 。
变量名:JAVA_HOME 变量值:D:\Program Files\JAVA\jdk8(这里填写jdk的安装目录)编辑PATH变量。最后输入:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
(注意原来Path的变量值末尾有没有;号,如果没有先输入;号再输入上面的代码)
验证是否安装成功:
运行cmd 输入 java –version,如下图则为成功。
二、Eclipse配置
1.下载地址: ,此处下载的是Eclipse For Java EE
2.安装TestNG
联网直接安装Help->Install New Software
勾选后,NEXT…完成安装。
三、安装必备软件,Selenium IDE、SeleniumRC、IEDriverServer、Firefox
下载地址: 链接:http://pan.baidu.com/s/1nuVrZ7b 密码:c0l9
1. Selenium IDE:selenium-ide-2.5.0.xpi 用来在Firefox上录制脚本。
2.Selenium RC:selenium-server-standalone-2.40.0.jar 模拟服务器端,selenium 1.0执行脚本时需要单独启动该jar包, selenium webdriver无需单独启动。
3.IEDriverServer:IEDriverServer_Win32_2.40.0.zip IE驱动
4.安装Selenium IDE:把前面下载的selenium-ide-2.5.0xpi拖放到Firefox,安装即可。
下载得到的所有文件,统一放在d:\eclipse\selenium下面,方便管理
四、代码示例
jar包:链接:http://pan.baidu.com/s/1boSoCu7 密码:q2hr
package selenium_testng;import org.testng.annotations.Test;import org.testng.annotations.BeforeMethod;import org.testng.annotations.AfterMethod;import org.testng.annotations.BeforeClass;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.testng.annotations.AfterClass;import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;import java.util.concurrent.TimeUnit;import org.openqa.selenium.By;import org.openqa.selenium.Cookie;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.ie.InternetExplorerDriver;import org.openqa.selenium.interactions.Actions;import org.openqa.selenium.remote.CapabilityType;import org.openqa.selenium.remote.DesiredCapabilities;import org.testng.Assert;import org.testng.annotations.Test;import org.testng.annotations.BeforeMethod;import org.testng.annotations.AfterMethod;import org.testng.annotations.BeforeClass;import org.testng.annotations.AfterClass;/*** * @author fanwenbin* @version 1.0* @date **/public class test { WebDriver driver;// 申明全局变量。。。。。 @Test public void testng001() throws InterruptedException { System.setProperty("webdriver.firefox.bin", "D:\\Program Files\\Mozilla Firefox\\firefox.exe"); WebDriver driver = new FirefoxDriver(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); //打开 driver.get("https://www.zhihu.com/#signin"); Thread.sleep(1000); driver.findElement(By.className("signin-switch-password")).click(); //定位到输入框 driver.findElement(By.name("account")).sendKeys("15168318165"); Thread.sleep(1000); driver.findElement(By.name("password")).sendKeys("1783300674"); WebElement submit = driver.findElement(By.className("submit")); submit.click(); try { Thread.sleep(3000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } File file = new File("broswer.data"); try { // delete file if exists file.delete(); file.createNewFile(); FileWriter fw = new FileWriter(file); BufferedWriter bw = new BufferedWriter(fw); for (Cookie ck : driver.manage().getCookies()) { bw.write(ck.getName() + ";" + ck.getValue() + ";" + ck.getDomain() + ";" + ck.getPath() + ";" + ck.getExpiry() + ";" + ck.isSecure()); bw.newLine(); } bw.flush(); bw.close(); fw.close(); } catch (Exception e) { e.printStackTrace(); } finally { System.out.println("cookie write to file"); } } @BeforeMethod public void beforeMethod() { //switchTo相关可以写在这里 } @AfterMethod public void afterMethod() { // 切换到主窗口、模擬刷新頁面 } @BeforeClass public void beforeClass() { //登陆 } @AfterClass public void afterClass() { //浏览器关闭可以写在这里 //driver.quit(); }}