一 创建maven 项目
二 创建好项目之后加入maven依赖 也就是所需要的架包
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.11</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.53.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>2.53.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>2.53.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-support</artifactId>
<version>2.53.0</version>
</dependency>
<dependency>
<groupId>com.google.inject</groupId>
<artifactId>guice</artifactId>
<version>4.1.0</version>
</dependency>
<dependency>
<groupId>velocity</groupId>
<artifactId>velocity-dep</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>org.uncommons</groupId>
<artifactId>reportng</artifactId>
<version>1.1.4</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
三创建一个类 我这里是写了一个工具类 测试类可以直接调用
我在这里是用的谷歌驱动 因为Selenium 在调用的时候 是对版本有要求的 每个驱动对应不一样的浏览器版本
谷歌驱动下载地址: https://npm.taobao.org/mirrors/chromedriver/
谷歌版本对应额地址:
http://www.cnblogs.com/wuhl-89/p/9453885.htm
下载好驱动后创建一个测试类
这个时候运行这个测试类 会发现浏览器会自动打开 然后运行你写的内容
这个时候我们已经完成了 Selenium+Maven 的运行
现在要生成测试报告需要借助工具 testng
我这里是用的idea 编辑器
首先要先下载 testng 的插件
重启iaed后 然后点击你的项目右键可以看到
这个时候会生成一个testng.xml 然后你打开
这个时候你可以右键点击testng.xml 进行运行
运行后会在你项目的根目录下生成一个test-out put 文件夹
这个时候你就看到测试报告了
到现在为止我们已经把 Selenium+Maven+testNg 运行起来 在jenkins 调用之前 我们需要把你的项目打成一个架包 去运行
打架包的时候需要在pom.xml 文件下加入一下代码
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.7.1</version>
<executions>
<execution>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
<skip>false</skip>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>package_shade_profile</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>org.testng.TestNG</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
为什么要加上述代码 是因为你自己打架包的时候 不会把第三方依赖的架包给打进去 这样的话你打出来的架包是不能运行的
这个时候我们就可以在我们项目的根目录下 输入命令 mvn package 然后执行完成后 就会在你的项目根目录target文件下生成两个架包 一个是有第三方依赖的架包 一个是没有 第三方依赖 我们需要的是第三方依赖的
这个时候我们可以单独的把架包和 testng.xml文件拷贝出来放到一个文件下
为什么要用testng.xml 是因为我们要用这个去运行架包 这样才会生成测试报告 否则的话不会生成测试报告的
我们可以编写一个 bat文件去运行
代码 如下
@echo off
cd/d d:\automation
java -jar SeleniumTestng.jar testng.xml
运行后会在目录下生成一个
打开test-output
里面就有我们想要的测试报告了 如果你不想用美化后的测试报告
可以
是不是贼丑丑丑丑丑丑丑丑丑丑
OK 现在已经有了 bat 文件 我们就是用Jenkins 去调用这个bat 文件
怎么样安装Jenkins 请自行百度吧 我在这里就不写了 很简单的 百度上都有的
OK 让我开始
首先 配置一下jdk 和maven
配置好之后 我们就可以创建任务 了 在创建任务之前我们需要下载两个插件
是在系统管理里面有个插件管理里面下载的 1
2
|
3这个时候我们就可以创建任务了
点击新建任务
保存之后我们就可以构建了 是不是很激动
构建之后 会生成
点击 html 报告 可以看到 如下图
点击testng结果可以看到如下图
到现在为止Selenium+Maven+Jenkins+testNg自动生成测试报告 就已经全部完成了 你还可以去设置邮箱提醒 在这我就不演示了 你可以去百度一下 都有的 也很简单
总结一下:我其实呢不是测试 我是一个后端开发 还是半个产品,为啥研究者呢 纯粹是闲的没事 你们在做的过程中肯定会遇到各种报错 由于时间的关系 在这我没做过多解释,报错不知道怎么解决的时候你们可以给我留言 我看到会去回复你们,对了这个项目完全是本地项目 也没有用git 也没有用SVN 大家如果有兴趣的话 可以去研究一下 Jenkins怎么和git 一起使用然后在配合这个 你们就可以完全实现自动化部署测试了。 OK 谢谢观看