Selenium自动化测试环境搭建
一、需要的软件
1、 eclipse或Myeclipse,以安装eclipse为例,eclipse下载地址:
http://www.eclipse.org/downloads/
2、 Firefox或Chrome或IE
3、 Selenium的WebDriver包,用于java 语言的Selenium 开发,下载地址:
http://seleniumhq.org/download/
4、 Testng 或 Junit
二、环境搭建
1、 安装eclipse
1)、安装JDK:JDK的下载地址为:
http://www.oracle.com/technetwork/java/javase/downloads/index.html ,下载完JDK后,安装jdk-6u10-windows-i586-p.exe, 存放于C:Program FilesJava(假设)
2)、配置JDK环境变量:
右击“我的电脑”,点击“属性”。选择“高级”选项卡,点击“环境变量”;
在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”;
JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:javajdk1.5.0_08,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);
Path使得系统可以在任何路径下识别java命令,设为:
%JAVA_HOME%in;%JAVA_HOME%jrein
CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:
.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar (要加.表示当前路径)
%JAVA_HOME%就是引用前面指定的JAVA_HOME;
3)、验证JDK
“开始”->;“运行”,键入“cmd”;键入命令“java -version”,“java”,“javac”几个命令,出现画面,说明环境变量配置成功;
4)、安装eclipse
在http://www.eclipse.org/downloads/下载eclipse包,解压后双击“eclipse.exe”即可使用。
2、 安装完Firefox和Chrome及IE后,打开Firefox,选择“工具”“附加组件”,在搜索中输入Firebug,选择一个版本,点击“安装”按钮。
以Chrome为例将ChromeDriver.exe放到Chrome或IE安装的Application文件夹下。
3、 导入selenium包
在http://seleniumhq.org/download/上下载最新版本的selenium-java-2.33.0.zip,解压后,这里我们只需要解压出selenium-java-2.33.0-srcs.jar和selenium-java-2.33.0.jar。打开eclipse,新建一个java工程,右键点击该工程,选择“Build Path”“Configure Build Path”,选择“Add External JARs”将刚刚的selenium-java-2.33.0-srcs.jar和selenium-java-2.33.0.jar加入到Libraries中,点击【OK】。
4、 安装Testng
在eclipse界面选择“Help”“install New Software”,选择【Add】,在location中输入http://beust.com/eclipse ,选择TestNG,点击【Next】,开始下载安装。安装完成后,选择“Build Path”“Configure Build Path”,在“Task Repository”下有“TestNG”标签。安装成功。
5、配置testng
5.1Eclipse中点击Help->Install new software -> 点击Add
5.2在Location输入 http://beust.com/eclipse
5.3选中Testng版本,点击Next,按照提示安装,安装完之后重启Eclipse
5.4新建JavaProject,右键BuildPath,添加testng.jar
5.5新建一个sum类,用来计算两整数之和,代码如下:
package com.hpp; public class sum { private int no1;private int no2; private int mysum; public int add(int no1,int no2){ mysum=no1+no2;return mysum; } }
5.6再新建testng class
5.7点击finish,代码如下
package com.test; import org.testng.annotations.Test; import static org.testng.Assert.assertEquals; import com.hpp.sum; public class NewTest { private sum newSum=new sum(); @Test public void f() { int mysum=newSum.add(1, 2); assertEquals(3,mysum,"Right"); } }
testing,xml会自动配置好的,这里不用管项目的文件结构如下:
5.8在testing.xml右键点击RunAs->Testng Suite,即可看到结果:
如果想要换个测试用例,可以修改文件testing.xml中class标签name的值
4.9也可以不用在 Testng Suite 模式下运行
新建class,代码如下
run as->Java Application 即可。
package com.test; 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; public class Test_google { public static void main(String[] args) { String url = "http://www.google.com.hk"; //String url = "http://mobile.service.com/user/CheckLogin.aspx?UserName=aaa@aa.aa&Password=123456&key=889"; //System.setProperty("webdriver.firefox.bin","D:\Program Files\Mozilla Firefox\firefox.exe"); //WebDriver driver = new FirefoxDriver(); //打开ie WebDriver ie_driver = new InternetExplorerDriver(); //打开chrome WebDriver driver = new ChromeDriver(); driver.get(url); WebElement element = driver.findElement(By.name("q")); element.sendKeys("hello Selenium!"); element.submit(); try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("页面Title:"+driver.getTitle()+" 页面URL:"+driver.getCurrentUrl()); //System.out.println("返回当前的浏览器的窗口句柄:"+driver.getWindowHandle()); //String s=driver.getPageSource();s=s.substring(s.indexOf("{"), s.indexOf("}")); //System.out.println("当前页面的源码:"+s); driver.quit(); } }