Jenkins 十二: 集成 selenium 测试
我的selenium采用的是python版本。
其实 selenium java版本也类似。
1. 在jenkins里面新建selenium 测试项目。
源码管理采用 “Subversion”,输入 “Repository URL”即可。
找到“构建” –> “增加构建步骤” –> “Execute Windows batch command”。由于我的测试源码都放在src下面,我需要运行的test suite都在testsuite_all.py里面,所以在”命令“中输入”python src\testsuites\testsuite_all.py“。
找到”构建后操作“ –> ”增加构建后操作步骤” –> “E-mail Notification”。在“Recipients”中输入需要通知的用户邮箱。
点击”保存“按钮。
2. 构建
在项目里,点击”立即构建“即可看到浏览器被打开,selenium 测试用例被执行。
3. 遇到的问题
1) 问题: 构建时提示import时找不到xxx模块。
思路: xxx模块在src下面,但是jenkins只能找到项目路径,不认识项目下的src路径下的东西,所以把src加入python环境变量即可。
解决方案:在testsuite_all.py开头添加如下内容
import sys
sys.path.append('src/')
2) 问题: 构建时提示找不到chromedriver.exe
思路: 路径问题。jenkins只认识项目下东西,之前采用./..等相对路径,替换成从src开始写路径。
示例如下:
driver=webdriver.Chrome(executable_path="src/xxx/chromedriver.exe")
4. 部署被测试项目(可选)
如果被测试项目也在jenkins里面进行部署。我们需要在被测试项目build完成之后,自动build selenium测试项目。
在jenkins里面找到被测试项目,点击”配置“。
找到”构建后操作“ –>”增加构建后操作步骤“ -> ”Build other projects“。
在”要构建的项目“中输入 selenium测试项目的名称。
点击”应用“ ,”保存“按钮。
在被测试项目中允许”立即构建“,即可构建被测试项目+执行selenium测试项目。
5. 备注
其实jenkins里面有一些关于selenium的插件,但是我没有找到关于webdriver 的。所以只能通过这种笨方法。
Jenkins 十二: 集成 selenium 测试的更多相关文章
- [原]Jenkins(十二)---jenkins管理员用户无法登陆解决办法Access Denied
		
/** * lihaibo * 文章内容都是根据自己工作情况实践得出. *如有错误,请指正 * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horiz ...
 - 使用jenkins pipeline,并发selenium测试  ---  你值得了解
		
一.契机 相信很多使用selenium进行UI测试,再对接jenkins时,都是简单的在jenkins上将命令输入就完事了. 但是,相信你一定会遇到以下问题: 1.你需要同时跑不同文件或不同类的用例, ...
 - 《Python 学习手册4th》 第十二章 if测试和语法规则
		
''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点 ...
 - [Python爬虫] 之二十二:Selenium +phantomjs 利用 pyquery抓取界面网站数据
		
一.介绍 本例子用Selenium +phantomjs爬取界面(https://a.jiemian.com/index.php?m=search&a=index&type=news& ...
 - jmeter(二十二)jmeter测试Java请求
		
目的:对Java程序进行测试 目录 一.核心步骤 二.实例 三.JMeter Java Sampler介绍 四.自带Java Request Sampler 一.核心步骤 1.创建一个Java工程: ...
 - [Python爬虫] 之十二:Selenium +phantomjs抓取中的url编码问题
		
最近在抓取活动树网站 (http://www.huodongshu.com/html/find.html) 上数据时发现,在用搜索框输入中文后,点击搜索,phantomjs抓取数据怎么也抓取不到,但是 ...
 - SpringBoot进阶教程(二十二)集成RabbitMQ---MQ实战演练
		
RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统.他遵循Mozilla Public License开源协议.RabbitMQ是流行的开源消息队列系统,用erlang语言开发.Rab ...
 - TestNG(十二) 参数化测试
		
<?xml version="1.0" encoding="utf-8" ?> <suite name = "parameter&q ...
 - [原]Jenkins(十)---jenkins注册管理员admin并赋所有权限给admin
		
/** * lihaibo * 文章内容都是根据自己工作情况实践得出. * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/533 ...
 
随机推荐
- js获取标签的几种方式
			
一:id获取(全部浏览器兼容) document.getElementById(""); <body> <div id="box">&l ...
 - Core Animation系列之CADisplayLink(转)
			
转自 http://www.tuicool.com/articles/meMVR3 一直以来都想好好学习下CoreAnimation,奈何涉及的东西太多,想要一次性全部搞定时间上不允许,以后会断断续续 ...
 - 绘图quartz之渐变
			
实现线性渐变 径向渐变 自己新建的view中有一个drawRect:(cgrect)rect方法 在这个方法里 可以通过画图 将内容显示在画板上(即最下边的view) 渐变的方式分两种 ...
 - C#操作数据库,将其查查出来的记录条数显示在winform窗体中的方法之一
			
//1.数据库链接的基本操作(略) //2.创建对象函数(关键部分) sqlConn.Open(); //初始化定义记录条数 ; object obj = sqlComm.ExecuteScalar( ...
 - c#中设置按钮Button为透明
			
方法一:代码实现 /// <summary> /// 设置透明按钮样式 /// </summary> private void SetBtnStyle(Button btn) ...
 - centos 6.x 安装redis
			
1.yum 安装 yum install redis 如果提示找不到包的话 可以yum install epel-release 先安装epel第三方库 2.源码安装 https://redis ...
 - (java)从零开始之--装饰者设计模式
			
装饰者设计模式:简单定义:增强一个类的功能,而且还可以让这些装饰类互相装饰. 应用场景:当要在某个功能的基础上扩充功能,并且扩充的功能具有大量排列组合,通过继承关系会衍生出大量子类,这时候用装饰者模式 ...
 - 深入理解ReentrantLock
			
在Java中通常实现锁有两种方式,一种是synchronized关键字,另一种是Lock.二者其实并没有什么必然联系,但是各有各的特点,在使用中可以进行取舍的使用.首先我们先对比下两者. 实现: 首先 ...
 - 英语学习[ZZ]
			
本文作者三年间从四级勉强及格到高级口译笔试210,口试232.找工作面试时给其口试的老外考官听了一分钟就说你的英语不用考了.虽不敢说方法一定是最好的,但从现在开始随便谁不要再去找学习资料,每天花两个钟 ...
 - PHP 用Class构造JSON数据
			
header('Content-type: appliction/json; charset=shift-JIS'); // error //{ // "result": fals ...