原文地址https://www.cnblogs.com/zmhsoup/p/5249663.html

目录

第一步  安装JDK

第二步 下载Eclipse

第三步 在Eclipse中安装TestNG

第四步 下载Selenium IDE、SeleniumRC、IEDriverServer

第五步 下载Firefox、安装Selenium IDE、firebug、Xpath checker、Xpath finder插件

第六步 启动SeleniumRC

第七步 Eclipse执行Selenium的Java实例

第八步 TestNG执行Selenium的Java实例

下载地址

第一步  安装JDK


下载地址:http://www.oracle.com/technetwork/java/javase/downloads/

1、下载步骤:

2、配置环境变量:

JAVA_HOME = E:\Java\Java\jdk1.7.0_15

PATH = %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

CLASSPATH = .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

注:上面这行的“.”不能忽略掉了。

3、验证是否安装成功:

第二步 下载Eclipse


下载地址:http://www.eclipse.org/downloads/

第三步 在Eclipse中安装TestNG


第1种方法:直接安装 Help->Install New Software

最后重启eclipse.

第2种方法:离线安装

1.下载附件(eclipse-testng离线包.zip),并解压;
      2.将解压后的文件..\eclipse-testng离线包\features\目录下的文件夹org.testng.eclipse_6.8.6.20130607_0745放到eclipse--》features目录下;
      3.将解压后的文件..\eclipse-testng离线包\org.testng.eclipse_6.8.6.20130607_0745文件夹放到eclipse--》plugins目录下;
      4.重启eclipse.

验证方法:file-->new-->other-->TestNg

第四步 下载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驱动

这里,将下载得到的所有文件,全存放在d:\xxx\selenium下面,方便管理:

第五步 下载Firefox、安装Selenium IDE、firebug、Xpath checker、Xpath finder插件


下载地址:http://www.firefox.com.cn/download/

安装完Firefox后,打开Firefox:

1、安装Selenium IDE:

把前面下载的selenium-ide-2.5.0xpi拖放到Firefox,弹出下图后,安装即可。

2、安装firebug:工具-->附加组件,搜索firebug、Xpath,安装,重启火狐浏览器。

验证安装成功:

第六步 启动SeleniumRC


selenium 1.0需要启动单独rc,webdriver则不需要启动。(具体原因可自行百度或者参见我其他学习笔记)

启动seleniumRC的方法:
cmd命令行进入selenium-server-standalone-2.40.0.jar存放目录(或者进入selenium-server-standalone-2.40.0.jar存放目录然后在文档路径里输入cmd),然后输入如下命令
java -jar selenium-server-standalone-2.40.0.jar

为了方便,可以写一个批处理文件来执行,Run_selenium.bat,内容如下:

@echo off
cd E:\eclipse\selenium
E:
java -jar selenium-server-standalone-2.40.0.jar

第七步 Eclipse执行Selenium的Java实例


1.新建java工程:File-->new-->other-->Java Project

输入工程名,完成之后弹出选择视图模式的确认框,可以选NO。

2.引入Selenium相关的包:

在MyTest上右键,Properties-->Java Build Path-->Libraries-->Add External Jars

3.新建package和class:

在src上右键,new->package(名称为:Selenium_Java)

在Selenium_Java上右键,new->class(名称为:runasjavaapplication.java):

4.用selenium webdriver写代码如下:

可以打开不同的浏览器,用以开展兼容性测试。

注:用ie浏览器打开时会有个报错:

解决办法是讲注释掉的30-34行的代码取消注释,注释掉36行的代码即可(代码中29行应为:System.setProperty("webdriver.chrome.driver", file_chrome.getAbsolutePath());   46行最好写成:my_dr.get("https://www.baidu.com");)。

 1 package Selenium_Java;
2
3 import java.io.File;
4
5 import org.openqa.selenium.By;
6 import org.openqa.selenium.WebDriver;
7 import org.openqa.selenium.chrome.ChromeDriver;
8 import org.openqa.selenium.firefox.FirefoxDriver;
9 import org.openqa.selenium.ie.InternetExplorerDriver;
10 import org.openqa.selenium.remote.CapabilityType;
11 import org.openqa.selenium.remote.DesiredCapabilities;
12 import org.testng.Assert;
13
14
15 /**
16 * @author : zmh
17 * @version :1.0
18 * @date :2016年03月06日 下午3:00:22
19 */
20 public class runasjavaapplication {
21
22 public static void main(String[] args) throws InterruptedException {
23
24 //-----------------------------打开火狐浏览器------------------------------------------------
25 //WebDriver my_dr = new FirefoxDriver();// 打开火狐浏览器 原生支持的浏览器,但是不支持火狐高级的版本
26
27 //-----------------------------打开Chrome浏览器---------------------------------------------
28 File file_chrome = new File("C:/Program Files/Google/Chrome/Application/chromedriver.exe");
29 System.setProperty("webdriver.ie.driver", file_chrome.getAbsolutePath());
30 //WebDriver my_dr = new ChromeDriver();// 打开chrome浏览器
31
32 //-----------------------------打开IE浏览器--------------------------------------------------
33 File file_ie = new File("C:\\Program Files\\Internet Explorer\\IEDriverServer.exe");
34 System.setProperty("webdriver.ie.driver", file_ie.getAbsolutePath());
35
36 //为 Internet Explorer 设置安全性功能,否则会遇到一个安全问题提示:"Protected Mode must be set to the same value (enabled or disabled) for all zones"
37 //DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
38 //caps.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
39 //caps.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
40 //WebDriver my_dr = new InternetExplorerDriver(caps);// 打开ie浏览器
41
42 WebDriver my_dr = new InternetExplorerDriver();// 打开ie浏览器
43
44 //---------------------------------------------------------------------------------------
45 //打开百度
46 my_dr.get("www.baidu.com");
47
48 Thread.sleep(1000);
49 //定位到百度的输入框
50 my_dr.findElement(By.id("kw")).sendKeys("G7物流地图");
51
52 Thread.sleep(1000);
53 //点击搜索
54 my_dr.findElement(By.id("su")).click();
55
56 Thread.sleep(1000);
57 //打印页面标题
58 System.out.println(my_dr.getTitle());
59 //验证页面标题是否符合预期
60 Assert.assertEquals(my_dr.getTitle(), "G7物流地图_百度搜索");
61
62 Thread.sleep(1000);
63 // 关闭所有webdriver进程,退出
64 my_dr.quit();
65 }
66 }

5.用selenium1.0写代码如下:

 1 package Selenium_Java;
2
3 import com.thoughtworks.selenium.DefaultSelenium;
4
5 /**
6 * @author : zmh
7 * @version :1.0
8 * @date :2016年3月6日 下午12:28:31
9 */
10 public class runasjavaapplication_selenium1 {
11 public static void main(String[] args) {
12 //创建一个selenium对象,调用DefaultSelenium的构造器,传入参数,参数分别是:host:机器的ip地址、port:端口号、浏览器类型,url:要测试网站的链接
13 DefaultSelenium selenium = new DefaultSelenium("localhost", 4444,
14 "*iexplore C:\\Program Files\\Internet Explorer\\iexplore.exe",
15 "http://www.baidu.com/");
16
17 selenium.start();
18 selenium.open("http://www.baidu.com");
19 selenium.type("id=kw1", "G7物流地图");
20 selenium.click("id=su1");
21 System.out.println("Page title is: " + selenium.getTitle());
22 selenium.stop();
23 }
24 }

上面提到的需要打开selenium rc还记得吗?打开之后就可以正常运行了。

第八步 TestNG执行Selenium的Java实例


1.新建testng类:在工程上右键,new->other->TestNG(名称为:runastestng.java)

创建完成后如下:

2.写代码:

 1 package Selenium_TestNG;
2
3 import java.io.File;
4
5 import org.openqa.selenium.By;
6 import org.openqa.selenium.WebDriver;
7 import org.openqa.selenium.firefox.FirefoxDriver;
8 import org.openqa.selenium.ie.InternetExplorerDriver;
9 import org.openqa.selenium.remote.CapabilityType;
10 import org.openqa.selenium.remote.DesiredCapabilities;
11 import org.testng.Assert;
12 import org.testng.annotations.Test;
13 import org.testng.annotations.BeforeMethod;
14 import org.testng.annotations.AfterMethod;
15 import org.testng.annotations.BeforeClass;
16 import org.testng.annotations.AfterClass;
17
18 /**
19 * @author : zmh
20 * @version :1.0
21 * @date :2016年3月6日 下午12:28:31
22 */
23
24 public class runastestng {
25
26 WebDriver mydr;// 申明全局变量。。。。。
27
28 @Test
29 public void testng001() throws InterruptedException {
30 //-----------------------------打开IE浏览器--------------------------------------------------
31 File file_ie = new File("C:\\Program Files\\Internet Explorer\\IEDriverServer.exe");
32 System.setProperty("webdriver.ie.driver", file_ie.getAbsolutePath());
33
34 //为 Internet Explorer 设置安全性功能,否则会遇到一个安全问题提示:"Protected Mode must be set to the same value (enabled or disabled) for all zones"
35 DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
36 caps.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
37 caps.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
38 WebDriver my_dr = new InternetExplorerDriver(caps);// 打开ie浏览器
39 //打开百度
40 my_dr.get("www.baidu.com");
41
42 Thread.sleep(1000);
43 //定位到百度的输入框
44 my_dr.findElement(By.id("kw")).sendKeys("G7物流地图");
45 Thread.sleep(1000);
46 //点击搜索
47 my_dr.findElement(By.id("su")).click();
48
49 Thread.sleep(1000);
50 //打印页面标题
51 System.out.println(my_dr.getTitle());
52 //验证页面标题是否符合预期
53 Assert.assertEquals(my_dr.getTitle(), "G7物流地图_百度搜索");
54 Thread.sleep(5000);
55
56 }
57 @BeforeMethod
58 public void beforeMethod() {
59 //switchTo相关可以写在这里
60 }
61
62 @AfterMethod
63 public void afterMethod() {
64 // 切换到主窗口、模擬刷新頁面
65 }
66
67 @BeforeClass
68 public void beforeClass() {
69 //登陆相关可以写在这里
70 }
71
72 @AfterClass
73 public void afterClass() {
74 //浏览器关闭可以写在这里
75 }
76
77 }

运行如下:

3.查看运行报告:

当然,我们也可以继承IReporter类,使用监听器,达到美化报告的目的,这个以后再另外的笔记中补充。

注:搭建环境涉及到的安装包可以在这里下载,此链接永久有效(缺少包或者分享链接失效的可以私信我去添加和修改):

链接: https://pan.baidu.com/s/1kCvVq-KpCY-c9aOYoukjSQ 密码: hwui

原文地址https://www.cnblogs.com/zmhsoup/p/5249663.html

JDK eclipse selenium 安装以及环境变量的配置的更多相关文章

  1. 基于Windows环境下Myeclipse10.0下载安装破解及jdk的下载安装及环境变量的配置

    jdk的安装及环境变量的配置 1.安装JDK开发环境 附上jdk安装包的百度云链接 链接:http://pan.baidu.com/s/1mh6QTs8 密码:jkb6(当然自行去官网下载最好哒,可以 ...

  2. JDK的下载安装与环境变量的配置

    第一步:下载 方式一:在地址栏输入 www.oracle.com 访问该网址自行下载 方式二:百度网盘下载链接1.8  64位版本: https://pan.baidu.com/s/10ZMK7NB6 ...

  3. java开发环境的搭建(JDK的下载安装及环境变量的配置)

    首先可以在Sun公司网站 http://java.sun.com 免费下载java se提供的JDK. 下载后再下载的文件夹下打开,双击jdk文件跟着提示进行安装,安装结束后——点击本机电脑的开始—— ...

  4. Java JDK 8 安装和环境变量的配置(Linux and Windows)

    Java JDK 8 的安装以及环境变量的配置(Linux and Windows) JDK(Java Development Kit)包含了Java语言的编译器,能够在这里下载: http://ww ...

  5. Java JDK的安装以及环境变量的配置

    安装并配置完Android SDK之后,本想着可以做个简单的APP应用了,只是依然提示我“请确认Java JDK是否安装”类似的报错,于是又进行了Java JDK的安装以及环境变量的配置. 1.下载地 ...

  6. Java入门之JDK的安装和环境变量的配置

    Java的版本 1. Java SEjava se 以前称为J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程序.Java SE是基础包,但是也包含了支持 Jav ...

  7. Java java jdk在Linux下安装与环境变量的配置

    java jdk在Linux下安装与环境变量的配置 by:授客 QQ:1033553122 linux环境:CentOS-6.0-x86_64-bin-DVD1.iso [root@localhost ...

  8. Linux下jdk的安装和环境变量的配置

    Linux下jdk的安装和环境变量的配置 一.jdk的下载 方式一:在官网下载 http://www.oracle.com/technetwork/java/javase/downloads/inde ...

  9. python安装和环境变量的配置

    python安装和环境变量的配置 研究生阶段学习的需求,简单的学习了python的语法和基础之后产生了兴趣,有了想从基础把python学好用好的想法.因此在忙碌的学习中抽出时间,在每天花几个小时学习p ...

随机推荐

  1. 【大数据系列】hadoop上传文件报错_COPYING_ could only be replicated to 0 nodes

    使用hadoop上传文件 hdfs dfs -put  XXX 17/12/08 17:00:39 WARN hdfs.DFSClient: DataStreamer Exception org.ap ...

  2. MFC 刷新函数:Invaldate,UpdateWindow,InvaldateRect

    在窗口刷新和绘制的过程中,常常需要用到窗口刷新函数.一般用于窗口图形刷新的函数有:UpdateWindows().Invaldate().InvaldateRect(). 先说UpdateWindow ...

  3. android studio下生成jni头文件

    cd app/src/main javah -d jni -classpath ../../build/intermediates/classes/debug net.sourceforge.lame ...

  4. LeetCode 32 Longest Valid Parentheses(最长合法的括号组合)

    题目链接: https://leetcode.com/problems/longest-valid-parentheses/?tab=Description   Problem :已知字符串s,求出其 ...

  5. JUnit(>4.0)@BeforeClass、@Before、@Test、@After、@AfterClass、@Ignore

    JUnit 4 开始使用 Java 5 中的注解(annotation),常用的几个 annotation 介绍: @BeforeClass:针对所有测试,只执行一次,且必须为static void ...

  6. [转]mii-tool与ethtool的用法详解

    1.mii-tool 配置网络设备协商方式的工具: 感谢原文作者!原文地址:http://blog.chinaunix.net/uid-20639775-id-154546.html 1.1 mii- ...

  7. Centos 7.x临时的网络与路由配置

    今天在虚拟机上安装了Centos 7.1操作系统,使用的最小化安装,安装完成后准备使用ifconfig命令时,发现命令不存在,如下: 心想肯定是新版的Centos 系统默认情况下没有使用ifconfi ...

  8. C++ 输入/输出

    std:: 是什么?有什么作用? 输入和输出的iostream 库.iostream 库的基础是两种命名为 istream 和 ostream 的类型,分别表示输入流和输出流. 标准库定义了 4 个 ...

  9. humid vs wet vs moist

    想表达天气很潮湿该用哪个词呢? 跟一个美国人聊天,我说wet他没听清,然后我说moist,然后他反应过来了:"oh,humid" 那~还是用humid吧

  10. GitHub 终端加速最佳实践

    终端加速 GitHub 方法的前置条件, 一是购买了加速服务或者租用 VPS 搭建加速服务, 二是系统是 macOS, 三是终端是 iTerm, 四是 Shell 是 zsh. 终端加速 GitHub ...