本系列所有代码 https://github.com/zhangting85/simpleWebtest

本文将介绍一个Java+TestNG+Maven+Selenium的web自动化测试脚本环境的搭建,并提供全部代码。

1,安装JDK

安装好之后,一般要设置2个环境变量;

1)JAVA_HOME:值为你安装JDK的目录;

2)path:向path里添加JDK下的bin目录;

配置好后,打开命令行,使用java -version检查是否安装正确。

2,安装Eclipse

推荐安装JavaEE版的Eclipse,因为Eclipse的Maven插件在线安装很慢,而JavaEE版的自带maven插件;

如果你网速够快,或者有已经装好Maven插件的Eclipse,直接用即可,无需特意去装EE版。

我用的是这个版本:Eclipse Kepler Sr2

 

3,安装Maven

安装好之后,一般要设置2个环境变量;

1)MVN_HOME:值为你安装maven的目录;

2)path:向path里添加maven下的bin目录;

配置好后,打开命令行,使用mvn -v检查是否安装正确。

4. 在Eclipse下安装插件

1)maven插件(因为前面用了JavaEE版,所以自带这个插件)

2)testng插件: 在Eclipse - Help - Eclipse Market Place 里搜索testNG即可找到

5. 安装Firefox

Firefox装好后,请安装两个插件

1)FireBug 他将帮你定位页面元素

2)FirePath 他可以直接告诉你页面元素的Xpath

6. 下面需要在Eclipse里为我们要做的web自动化测试创建一个Eclipse工程

本来,你需要按照File - New - Project - Maven - Maven Project来创建Maven工程,

这里为了简单起见,你可以直接去GitHub拿我创建好的工程

https://github.com/zhangting85/simpleWebtest

不会用GitHub的同学只要打开这个连接然后点击Download ZIP这个按钮就可以下载到创建好的工程源代码。

然后在Eclipse里按照File - Import... - Maven - Existing Maven Projects来导入刚刚下载的源代码。

工程结构详解:

一个最简单的标准maven工程,源代码放在src/main/java目录下,测试代码放在src/test/java目录下;

maven还创建了一个pom.xml,负责替你管理所有这个工程所依赖的jar包。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>simple-webtest</groupId>
<artifactId>simple-webtest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>simple-webtest</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8.5</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.40.0</version>
</dependency>
</dependencies>
</project>

上面的<version>2.40.0</version>中间是版本号,如果selenium要从2.40升级到2.41了,我们只需要改这里的版本号。不用再去官网下载jar包了。

是不是很方便?

7. 检查环境是否准备完毕

在Eclipse里刚刚导入的工程里,找到simpleWebtest.test包下的TestWebdriverEnv.java文件。

右键 - Run as - TestNG Test

这个文件的源代码如下:

 package simpleWebtest.test;

 import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Test; public class TestWebdriverEnv { @Test
public void checkEnv(){
//首先打一个hello world来测试一你的IDE里testng的插件是否已经安装好
//check if you success installed testng on your IDE
System.out.println("Hello World, TestNG"); //看看你电脑上能不能正确用firefox driver启动firefox
//check if firefox driver runs successfully on your computer
WebDriver driver=new FirefoxDriver();
driver.get("https://github.com/zhangting85/simpleWebtest"); } }

如果前面步骤均安装正确,你将看到selenium打开了你的Firefox浏览器,并跳转到我的GitHub工程所在页面。

命令行里会输出Hello World, TestNG

此外,testNG还会在你的工程目录下创建test-output目录,里面存放着默认的testNG测试报告。

好。至此一个selenium的脚本开发环境就搭好了。以上测试代码只使用了firefox,如果你想创建chrome、ie的测试脚本,还需要下载对应的driver文件并把这些文件放在你系统的环境变量path里。比如,ie的driver文件是IEDriverServer.exe。有需求的朋友就去官网下载吧。

selenium从入门到应用 - 1,环境准备(Java+TestNG+Maven+Selenium)的更多相关文章

  1. selenium+java+testNG+maven环境搭建

    一.简单介绍 1.selenium: Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Fir ...

  2. Java+TestNG+Maven+Excel+IDEA接口自动化入门(一)环境配置

    前置: 1.本机环境安装了maven并配置环境变量 2.本机环境安装了IDEA软件 3.本机环境安装了Java jdk 8版本 4.有一定java和maven基础 因为以上网上例子很多,就不再重复赘述 ...

  3. selenium第一课(selenium+java+testNG+maven)

    selenium介绍和环境搭建 一.简单介绍 1.selenium:Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包 ...

  4. Selenium 新手入门(C#)1. 用vs运行调用Selenium打开页面

    Start步骤: 1.从http://docs.seleniumhq.org/download/ 下载 C# dll 文件和 Internet Explorer Driver Server(32 或 ...

  5. 自动化测试:java + testng + maven + reportng + jenkins + selenium (一)_基于win环境

    集成环境:jdk1.7 + tomcat1.7+ eclipse mars + maven + testng6.14.2 + selenium-java2.40.0 + reportng1.1.4 + ...

  6. 搭建基于IDEA+Selenium+Java+TestNG+Maven+Jenkins+SVN的Web端UI自动化测试环境

    第一步:工具下载安装配置 JDK安装与配置 IDEA安装与配置 Maven安装与配置 Tomcat部署与配置 Jenkins部署与配置 Svn安装与配置 各浏览器驱动下载与配置 第二步:集成各个工具到 ...

  7. 记录java+testng运行selenium(四)--- 运行代码

    涉及的文件有: .\medical\BusinessFile.java :实例化excel及xml文件操作对象以及将list变成Map .\medical\manual\business\LoginB ...

  8. 记录java+testng运行selenium(二)---定义元素类及浏览器

    一: 元素类 整体思路: 1. 根据状态可分可见和不可见两种 2. 同一个路径可以查找单个元素或多个元素 3. 获取元素text或者指定的value值 4. selenium对元素操作有两种,一是通过 ...

  9. 记录java+testng运行selenium(四)--- 结构说明

    一图:主要是driver文件所在目录,及ini配置文件所在位置. 这两个文件一般我是放在其它目录下,不跟随项目所在目录 二图:用例操作类及用例执行类所在位置. 下图中有接口代码及功能代码组成,之前的文 ...

随机推荐

  1. Hoof, Paper, Scissors(USACO)

    题目大意: 一种游戏(类似于石头剪刀布):两个人分别给出一个字母,然后比较:H>S,S>P,P>H,我们已知对手的字母顺序,求在前n局中我们最多能赢多少次. 由于出字母的人非常懒,所 ...

  2. Relation(NOIP模拟赛)(二分图染色)

    原题: Description 有n个人,编号为1àn,告诉你那些人之间是不友好的.现在,让你将这n个人分成两组,使得每一组之内的人是互相友好的,如果可以分成两组,则输出如何分组的,如果不可以分成两组 ...

  3. 第18章 Active控件

    转自: https://blog.csdn.net/u014162133/article/details/46573873 容器和服务器程序 容器应用程序时可以嵌入或链接对象的应用程序.Word就是容 ...

  4. 用css控制table td内文字超出隐藏

    (如有错敬请指点,以下是我工作中遇到并且解决的问题) 效果图: 重点是把table设置为table-layout: fixed; 超出的文字隐藏的效果才有. p标签超出的文字隐藏的效果不需要设置这个内 ...

  5. Hashmap与Hashtable的区别及Hashmap的原理

    Hashtable和HashMap有几个主要的不同:线程安全以及速度.仅在你需要完全的线程安全的时候使用Hashtable,而如果你使用Java 5或以上的话,请使用ConcurrentHashMap ...

  6. Selenium2+python自动化14-iframe【转载】

    前言 有很多小伙伴在拿163作为登录案例的时候,发现不管怎么定位都无法定位到,到底是什么鬼呢,本篇详细介绍iframe相关的切换 以http://mail.163.com/登录页面10为案例,详细介绍 ...

  7. [BZOJ1018][SHOI2008]堵塞的交通traffic 线段树维护连通性

    1018: [SHOI2008]堵塞的交通traffic Time Limit: 3 Sec  Memory Limit: 162 MB Submit: 3795  Solved: 1253 [Sub ...

  8. Hihocoder 1634 Puzzle Game(2017 ACM-ICPC 北京区域赛 H题,枚举 + 最大子矩阵变形)

    题目链接  2017 Beijing Problem H 题意  给定一个$n * m$的矩阵,现在可以把矩阵中的任意一个数换成$p$,求替换之后最大子矩阵的最小值. 首先想一想暴力的方法,枚举矩阵中 ...

  9. ELK帮助文档

    elasticsearch: API中文指南:https://es.xiaoleilu.com/010_Intro/15_API.html 官方文档:https://www.elastic.co/cn ...

  10. Number of Connected Components in an Undirected Graph -- LeetCode

    Given n nodes labeled from 0 to n - 1 and a list of undirected edges (each edge is a pair of nodes), ...