Selenium+Maven+Jenkins+testNg自动生成测试报告
Posted 北极星0202
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Selenium+Maven+Jenkins+testNg自动生成测试报告相关的知识,希望对你有一定的参考价值。
一 创建maven 项目
二 创建好项目之后加入maven依赖 也就是所需要的架包
org.testng
testng
6.11
org.seleniumhq.selenium
selenium-java
2.53.0
org.seleniumhq.selenium
selenium-server
2.53.0
org.seleniumhq.selenium
selenium-chrome-driver
2.53.0
org.seleniumhq.selenium
selenium-support
2.53.0
com.google.inject
guice
4.1.0
velocity
velocity-dep
1.4
org.uncommons
reportng
1.1.4
test
org.testng
testng
三创建一个类 我这里是写了一个工具类 测试类可以直接调用
谷歌驱动下载地址: https://npm.taobao.org/mirrors/chromedriver/
谷歌版本对应额地址:
http://www.cnblogs.com/wuhl-89/p/9453885.htm
下载好驱动后创建一个测试类
这个时候我们已经完成了 Selenium+Maven 的运行
现在要生成测试报告需要借助工具 testng
我这里是用的idea 编辑器
这个时候会生成一个testng.xml 然后你打开
运行后会在你项目的根目录下生成一个test-out put 文件夹
到现在为止我们已经把 Selenium+Maven+testNg 运行起来 在jenkins 调用之前 我们需要把你的项目打成一个架包 去运行
打架包的时候需要在pom.xml 文件下加入一下代码
org.apache.maven.plugins
maven-surefire-plugin
2.7.1
testng.xml
false
org.apache.maven.plugins
maven-compiler-plugin
3.7.0
1.8
1.8
org.apache.maven.plugins
maven-shade-plugin
3.0.0
package_shade_profile
package
shade
*:*
META-INF/*.SF
META-INF/*.DSA
META-INF/*.RSA
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
org.testng.TestNG
为什么要加上述代码 是因为你自己打架包的时候 不会把第三方依赖的架包给打进去 这样的话你打出来的架包是不能运行的
这个时候我们就可以在我们项目的根目录下 输入命令 mvn package 然后执行完成后 就会在你的项目根目录target文件下生成两个架包 一个是有第三方依赖的架包 一个是没有 第三方依赖 我们需要的是第三方依赖的
这个时候我们可以单独的把架包和 testng.xml文件拷贝出来放到一个文件下
为什么要用testng.xml 是因为我们要用这个去运行架包 这样才会生成测试报告 否则的话不会生成测试报告的
我们可以编写一个 bat文件去运行
代码 如下
@echo off
cd/d d:\\automation
java -jar SeleniumTestng.jar testng.xml
里面就有我们想要的测试报告了 如果你不想用美化后的测试报告
OK 现在已经有了 bat 文件 我们就是用Jenkins 去调用这个bat 文件
怎么样安装Jenkins 请自行百度吧 我在这里就不写了 很简单的 百度上都有的
OK 让我开始
配置好之后 我们就可以创建任务 了 在创建任务之前我们需要下载两个插件
是在系统管理里面有个插件管理里面下载的 1
2
3这个时候我们就可以创建任务了
构建之后 会生成
点击 html 报告 可以看到 如下图
以上是关于Selenium+Maven+Jenkins+testNg自动生成测试报告的主要内容,如果未能解决你的问题,请参考以下文章
如何让 Jenkins 在部署时自动运行 Selenium WebDriver/TestNG/Java 测试,Maven 与这一切有啥关系?
java+selenium+testng+reportng+jenkins自动化环境搭建
Selenium Grid Docker-通过 Jenkins 实现自动化
如何通过命令提示符和使用 Maven 的 jenkins 运行单个黄瓜功能文件?