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 ...
随机推荐
- mksquash_lzma-3.2 编译调试记录
今天在编译mksquash_lzma-3.2的时候出现了如下问题: /home/test/RT288x_SDK/toolchain/mksquash_lzma-3.2/lzma443/C/7zip/C ...
- ASP.NET Excel数据导出数据库
/// <summary> /// 根據gridview導出excel /// </summary> /// <param name="ctl"> ...
- 服务端配置scan ip
节点1确认当前监听状态 SQL> show parameter listener; NAME TYPE VALUE ...
- Oracle-在线重定义操作文档
Oracle-在线重定义操作文档 2015年10月8日 15:51 在线重定义的大致操作流程如下: (1)创建基础表A,如果存在,就不需要操作. (2)创建临时的分区表B. (3)开始重定义,将基表A ...
- hdoj 2047 简单递推
代码: #include <stdio.h>int main(){ int n,m,i; __int64 x[41]; x[1]=3; x[2]=8; for(i=3;i<=40;i ...
- 【POJ2886】【线段树】Who Gets the Most Candies?
Description N children are sitting in a circle to play a game. The children are numbered from 1 to N ...
- javascript——面向对象程序设计(1)
<script type="text/javascript"> //ECMA-262把对象定义为:“无序属性的 集合,其属性可以包含基本值.对象或者函数” //理解对象 ...
- U盘美化(更换U盘logo和页面背景软件)
U盘内新建txt文本后,输入 [autorun] ICON=ooopic_1459309050.ico 保存的文件名包括后缀更改为autorun.inf 必须为icon图标
- PHP框架_ThinkPHP基础
目录 1.ThinkPHP项目结构 2.ThinkPHP运行流程 3.ThinkPHP配置文件 4.ThinkPHP四种URL模式 5.ThinkPHP用户自定义函数 6.ThinkPHP模板展示及变 ...
- Bootstrap_表单_表单提示信息
平常在制作表单验证时,要提供不同的提示信息.在Bootstrap框架中也提供了这样的效果.使用了一个"help-block"样式,将提示信息以块状显示,并且显示在控件底部. < ...