selenium+java+eclipce+test NG的环境搭建
1、安装jdk、eclipse、test NG 、selenium rc(谷歌的插件)、浏览器、iedirverserver(selenium 2后不需要单独执行)
2、在eclipse中执行selenium 的java实例(新建project、引入slenium相关包【selenium-server-alone】、新建类)
3、在test NG中执行selenium 的java实例
第一步 安装JDK
JDk1.7.
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
一路猛击‘下一步’,OK。安装完成后配置环境变量:
JAVA_HOME = E:\Java\Java\jdk1.7.0_15
PATH = %JAVA_HOME%\bin
CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
配置完环境变量后,CMD命令行输入:java -version,返回如下结果,则表示安装成功:
第二步 下载Eclipse
下载地址:http://www.eclipse.org/download/
最新的Eclipse Standard 4.3, 198 MB,下载的都是不用安装的,解压出来后直接用。
第三步 下载Selenium IDE、SeleniumRC、IEDriverServer
下载地址:http://www.seleniumhq.org/download/
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驱动
这里,我将下载得到的所有文件,全存放在E:\eclipse\selenium下面,方便管理:
第四步 下载Firefox
下载地址:http://www.firefox.com.cn/download/
下载得到文件:Firefox-latest.exe,最好是下载Firefox 25简体中文版,后续版本有人说通过Selenium会启动不了Firefox。
第五步 安装IDE、Firebug、Xpath checker、Xpath finder
安装完Firefox后,打开Firefox,把前面下载的selenium-ide-2.5.0xpi拖放到Firefox,弹出下图后,安装即可。
Firebug、Xpath checker、Xpath finder,打开firefox浏览器,选择工具――附加组件,打开附加组件管理器页面,搜索firebug、Xpath。
将查询到的firebug、xpath checker、xpath finder都装上,重启浏览器后生效:
SeleniumIDE、Firebug和xpath的用法,可以百度Selenium私房菜(新手入门教程).pdf,里面有很好的说明。
第六步 启动SeleniumRC
注意:selenium 1.0需要启动单独rc,webdriver则不需要启动。
启动seleniumRC的方法:
cmd命令行进入selenium-server-standalone-2.40.0.jar存放目录,输入如下命令
java -jar selenium-server-standalone-2.40.0.jar
为了方便,可以将启动命令写一个bat来执行,Run_selenium.bat,内容如下:
@echo off
cd E:\eclipse\selenium
E:
java -jar selenium-server-standalone-2.40.0.jar
第七步 Eclipse执行Selenium的Java实例
-----7.1
打开Eclipse,新建一个工程File—new—Java Project
-----7.2
输入工程名:Selenum,next
-----7.3
接下来,窗口进入Java Settings,选择Libraries,点击Addlibrary。
引用Junit4的Jar包(E:\eclipse\plugins\org.junit_4.11.0.v2XXXX)。
然后点击Add External Jars..,
引用Selenium相关的包(E:\eclipse\selenium),最终Libraries如下:
完成后,Java视图如下:
-----7.4
右击src,new->package新建一个包Selenium_Test,
再右击包Selenium_Test,new->class,新建一个Class类Case1.java,最终效果如下:
-----7.5
下面我们来用IE浏览器执行一个实例,修改Case1.java,这里我们用selenium webdriver来写代码,代码如下:
package Selenium_Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
public class Case1 {
public static void main(String[] args) {
System.setProperty("webdriver.ie.driver",
"E:\\eclipse\\selenium\\IEDriverServer.exe");//注意这里IEDriverServer.exe的文件存放路径
DesiredCapabilities ieCapabilities = DesiredCapabilities
.internetExplorer();
ieCapabilities
.setCapability(
InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,
true);
//new一个webdriver对象
WebDriver driver = new InternetExplorerDriver(ieCapabilities);
//上面这一段是用来解决IE安全设置提示的
//通过webdriver的get方法调用浏览器,打开网页:http://www.google.com.hk
driver.get("http://www.google.com.hk");
//通过页面元素的name=q定位到查询输入框
WebElement element = driver.findElement(By.name("q"));
//在输入框输入‘hello Selenium!’
element.sendKeys("hello Selenium!");
//提交查询
element.submit();
//等待,超时则抛出错误
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
//输出当前页面的title
System.out.println("Page title is: " + driver.getTitle());
//关闭所有webdriver进程,退出
driver.quit();
}
}
-----7.6
右击Case1.Java,Run As—>Java Application,执行成功结果如下:
-----7.7
接着,我们换成用selenium 1.0来写代码,Case1_1.java代码如下:
package Selenium_Test;
import com.thoughtworks.selenium.*;
public class Case1_1 {
public static void main(String[] args)
{
DefaultSelenium selenium = new DefaultSelenium("localhost", 4444, "*iexplore", "http://www.baidu.com/");
selenium.start();
selenium.open("/");
selenium.type("id=kw1", "selenium");
selenium.click("id=su1");
System.out.println("Page title is: " + selenium.getTitle());