Selenium+TestNG+Maven+Jenkins+SVN(转载)
转载自:https://blog.csdn.net/u014202301/article/details/72354069
一、 创建Maven项目,下载Selenium和TestNG的依赖(依赖可以理解为你要用到的jar包)。
1. 问题。
为什么要创建Maven项目呢?
答:Maven项目可以方便的管理依赖,通俗的讲,你需要的jar包,写到POM.xml文件中,Maven可以自动下载。省却了你先把jar文件放进 libs,再BuildPath这一步。同时呢,其他项目如果也用到这些jar包,Maven会自动从本地仓库中直接取出来,不用再次下载。
2. 步骤。
1. File-New-Project...
2. Maven Project- Next
3. Next
4. 选择maven-archetype-quickstart-Next
5. 输入Group Id:域.公司简称;Artifact Id:项目名称 -Finish.
6. 创建完成后,目录中能找到自己创建的项目,说明Maven项目已成功创建。
7. 配置Selenium和TestNG的依赖。
打开Pom.xml文件-如下图-添加红框中的依赖。本人用的是testng6.9.10和selenium的2.53.0版本。(嘘,不需要你自己敲,从网上直接复制粘贴进来即可,不会的看步骤8,会的请忽略)
8. 打开搜索引擎-搜索repository maven-点击进入官网
输入testng-点击Search-再点击org.testng>testng
找到你需要的Version-点进去
单击红框中的代码-复制-粘贴到Pom文件中,IDE会自动下载你需要的jar。
展开项目下的Maven Dependencies-能够看到说明你已经下载成功。看不到可以刷新下试试。
9. Eclipse中安装Testng插件-help-Eclipse MarketPlace-搜索testNG.(不成功自行百度,不再缀述哦)
二、将项目配置到SVN平台。
1. 问题。
为什么将项目配置到SVN平台呢?
答:可以将SVN理解为一台服务器上的项目容器,把项目放里边,所有项目的开发者都可以将自己增加的或修改的代码推送上去,这样,这个项目的代码总是最新的,运行SVN上这个项目就可以执行最新的代码。
2. 步骤。
本地安装SVN客户端、服务器端安装SVN Server端的步骤请自行百度,本节只讲如何在SVN上配置你的脚本项目。
打开任意文件夹-右击-TortoiseSVN-点击进入Repo-browser
输入SVN的url-点击Ok
在trunk上右击-Add folder...
选择你的脚本项目-点击“选择文件夹”
在Message中写明备注-Ok
会发现项目已经配置到了SVN上,完工。注意:这个项目的URL会在Jenkins中配置时用到哦。
三、在Jenkins上配置任务,自动执行自动化脚本。
打开Jeknins登录-点击新建-构建一个自由风格的项目-输入项目名称-OK
展开源码管理选中Subversion-输入SVN上该项目的URl地址-点击Add可以添加访问SVN的权限
选择Kind为Username with password-然后输入SVN的登录用户名和密码-点击Add
然后在Credentials 中选择刚才的用户名和密码
构建-选择Execute Windows batch command(因为我Jenkins的服务器是Windows系统,如果你的是Linux,就要选择Execute shell)
输入以下命令-保存。
(这两行命令的意思:1. 目录切到Jenkins的WorkSpace下的MavenAutoProject项目;2. 执行该项目)
构建-点击该项目右方小箭头-选择立即构建
构建完成后,点击Console Output查看控制台上的测试结果
四、搭建平台过程中遇到的错误及处理办法:
1. Jenkins上提示构建成功,但是用例一个都没运行。
原因:testCase放到了src下,应该放到test下面。因为maven-surefire-plugin默认执行test底下的case。
2. 总是报关于maven-surefire-plugin的错误。
原因:插件版本太高,起初用的是2.18.1,后改成2.12.4,解决。
3. compile时报找不到testngjar包,找不到符号。
原因:是因为pom中testng的依赖中写了<scope>test</scope>,去掉即可。
4. 版本问题,总是报版本不匹配。
原因:JRE版本默认总改成1.5.将JRE1.7写到Maven的全局配置文件中即可。在IDE的preference-Maven-中配置两个地方,
一个是installations加上Maven的安装路径,一个是User
settings中,两个地方都选择Maven安装路径下的Settings文件即可。

Settings.xml的配置方法:加上以下代码即可。在Maven的全局配置文件中加上如下代码,意味着只要是Maven项目,默认用JRE1.7。
综上,可以看出,代码执行时报错,相当一大部分原因是配置没配好,所以建议大家配置好一套环境后,记录下各种版本号,一劳永逸。现将我的环境总结如
下:selenium2.53.0+testng6.9.10+JDK1.7+maven-surefire-
plugin2.12.4+EclipseVersion: Mars.2 Release (4.5.2)。
还担心会配错?请查看第五条,我完整POM文件的截图。
五、Pom.xml文件完整截图。
Selenium+TestNG+Maven+Jenkins+SVN(转载)的更多相关文章
- Docker+Selenium+TestNG+Maven+Jenkins环境搭建
一.Selenium环境准备 standalone-chrome Docker容器启动: docker pull selenium/standalone-chrome version: '3' ser ...
- 搭建基于IDEA+Selenium+Java+TestNG+Maven+Jenkins+SVN的Web端UI自动化测试环境
第一步:工具下载安装配置 JDK安装与配置 IDEA安装与配置 Maven安装与配置 Tomcat部署与配置 Jenkins部署与配置 Svn安装与配置 各浏览器驱动下载与配置 第二步:集成各个工具到 ...
- Selenium+TestNG+Maven(2)
转载自http://www.cnblogs.com/hustar0102/p/5885115.html selenium介绍和环境搭建 一.简单介绍 1.selenium:Selenium是一个用于W ...
- 也谈自动化平台的搭建,另附高大上的名字---无人值守定时巡检系统(selenium+testng+ant+jenkins)
最近公司新项目改版,由于没有运维,开发则负责上线任务,并且都是手动上线,并行的项目多了,分支混乱,经常导致B项目上线覆盖A项目,导致系统不定时出现异常,老板知道了便扣了大家的绩效,作为测试这边必须想个 ...
- selenium+testng+ant+jenkins 手记
会不会搭建测试平台是一般测试工程师和高级测试工程师分水岭 ----tobecrazy 我们项目有现成的测试平台,使用的是selenium grid+testng+ant+jenkins+VM 但是我平 ...
- Groovy(java)+Spock+IDEA+maven+Jenkins+SVN+maven-surefire-plugin+maven-surefire-report-plugin/maven-antrun-extended-plugin集成接口测试框架
文章为原创,未经本人授权禁止转载. 一.spock框架环境搭建. 二.基于spock框架的脚本开发. 三.基于spock框架的用例执行并生成HTML报告. 四.集成jenkins生成HTML报告. 五 ...
- Selenium+TestNG+Maven 搭建
Java环境配置 Eclipse配置TestNG Eclipse配置Maven pom.xml文件相关配置,添加依赖selenium和TestNg的jar包 <!-- https://mvnre ...
- Java + Selenium + TestNG + Maven
环境准备: 1. Java: Install Java jdk: Version: java 1.8 or aboveConfigure Java Environment Variables:Add ...
- java+maven+jenkins+svn构建
操作参照:https://blog.csdn.net/qq_34977342/article/details/82346915 1.创建一个自由风格的项目,起名字 2.设置构建项目最大保存数量,与天数 ...
随机推荐
- C# Xamarin开发 GenyMotion adb List of devices attached
最近,公司要求要学习Xamarin,说是将来用到PDA上,所以最近对XaMarin开始接触,16年的时候就听说.Net开始着实跨平台,安卓和IOS,但是网上看过很多资料都说Xamarin比较坑,一般的 ...
- 为什么HTML中的多个空格或是回车在浏览器上只能显示出一个?
我们在学习HTML的时候可能书本或是老师会告诉我们一件事,就是在HTML中不管我们在两个文本之间加上多少连续的空格或是回车,到了浏览器里面只能显示出一个来.但是我们从来不知道为什么. 原因很简单,因为 ...
- [转][SerialPort]测试用例
private void Form1_Load(object sender, EventArgs e) { var s = SerialPort.GetPortNames().OrderBy(r =& ...
- MFC 编辑框输入16进制字符串转换为16进制数或者10进制数据计算
1.编辑框添加变量,并选择变量类型为CString. 2. 使用“_tcstoul”函数将Cstring 类型转换为16进制/10进制数进行计算.
- sas 9.4 sid 64bit 到期时间210804 带有EM
PROC SETINIT RELEASE='9.4';SITEINFO NAME='NATIONAL PINGTUNG UNI OF SCIENCE&TECH'SITE=12001462 OS ...
- mybatis缓存的设计
继续用提问的方式来看Mybatis的缓存设计. 1.Mybatis如何开启缓存 Mybatis对查询结果进行缓存,所以缓存的对象为具体的Statement 通过在Statement上是否使用缓存来启用 ...
- 给查询出的SQL记录添加序号列,解决方法有以下两种
第一: select ROW_NUMBER() OVER (ORDER BY a.字段 ASC) AS XUHAO,a.* from table a (table 为表名,字段为表a中的字段名) 第二 ...
- C# & JAVA:读写文件
using System; using System.IO; using System.Text; namespace ConsoleApplication4 { class Program { pu ...
- rabbitmq (五)RPC
Remote Procedure Call or RPC(远程函数调用) 当我们需要在远程计算机上运行一个函数,并且等待结果的时候,我们用到RPC 在rabbitmq客户端使用call函数,发送RPC ...
- 基于vue和svg的树形UI
vue-svg-tree 基于vue和svg的动态树形UI 截图 应用 npm install vue-svg-tree 示例 <template> <div> <v ...