我的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 测试的更多相关文章

  1. [原]Jenkins(十二)---jenkins管理员用户无法登陆解决办法Access Denied

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. *如有错误,请指正 * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horiz ...

  2. 使用jenkins pipeline,并发selenium测试 --- 你值得了解

    一.契机 相信很多使用selenium进行UI测试,再对接jenkins时,都是简单的在jenkins上将命令输入就完事了. 但是,相信你一定会遇到以下问题: 1.你需要同时跑不同文件或不同类的用例, ...

  3. 《Python 学习手册4th》 第十二章 if测试和语法规则

    ''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点 ...

  4. [Python爬虫] 之二十二:Selenium +phantomjs 利用 pyquery抓取界面网站数据

    一.介绍 本例子用Selenium +phantomjs爬取界面(https://a.jiemian.com/index.php?m=search&a=index&type=news& ...

  5. jmeter(二十二)jmeter测试Java请求

    目的:对Java程序进行测试 目录 一.核心步骤 二.实例 三.JMeter Java Sampler介绍 四.自带Java Request Sampler 一.核心步骤 1.创建一个Java工程: ...

  6. [Python爬虫] 之十二:Selenium +phantomjs抓取中的url编码问题

    最近在抓取活动树网站 (http://www.huodongshu.com/html/find.html) 上数据时发现,在用搜索框输入中文后,点击搜索,phantomjs抓取数据怎么也抓取不到,但是 ...

  7. SpringBoot进阶教程(二十二)集成RabbitMQ---MQ实战演练

    RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统.他遵循Mozilla Public License开源协议.RabbitMQ是流行的开源消息队列系统,用erlang语言开发.Rab ...

  8. TestNG(十二) 参数化测试

    <?xml version="1.0" encoding="utf-8" ?> <suite name = "parameter&q ...

  9. [原]Jenkins(十)---jenkins注册管理员admin并赋所有权限给admin

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/533 ...

随机推荐

  1. 在ASP中调用DLL的方法

    .net的dll已经不是严格意义上的动态连接库了,而是一个类或者类库.它是不能直接在ASP.VB等其它的应用环境中使用的.   我们可以通过COM包装器(COM callable wrapper (C ...

  2. mysql workbench 建表时 PK,NN,UQ,BIN,UN,ZF,AI解释

    mysql workbench 建表时 - PK: primary key (column is part of a pk) 主键 - NN: not null (column is nullable ...

  3. tomcat 正常启动,无法访问。且项目启动无问题。。。的解决办法。。

    Eclipes解决方法: 1.右击项目,选择propreties选项 2.在弹出的首选项窗口的左侧选择“Web Project Settings” 3.修改context root:输入框,修改成自己 ...

  4. RAC配置、安装

    RAC  配置及安装 2012年12月30日 星期日 21:49 ******************************************************************* ...

  5. FMDB多线程读写问题,使用FMDataBaseQueue操作可以解决同时打开一个链接de读写问题

    现在ios里使用的数据库一般都是Sqlite,但是使用Sqlite有个不太好的地方就是在多线程的时候,会出现问题,sqlite只能打开一个读或者写连结.这样的话多线程就会碰到资源占用的问题. 最开始是 ...

  6. 判断奇数,java陷阱

    /** 判断是否为奇数 @author husky / public class IsOdd { public static void main(String[] args) { int demo1 ...

  7. SGU 123.The sum

    #include <iostream> using namespace std; int f[50]={0,1,1}; int main(){ int n,s=0; cin>> ...

  8. 【HOJ2430】【贪心+树状数组】 Counting the algorithms

    As most of the ACMers, wy's next target is algorithms, too. wy is clever, so he can learn most of th ...

  9. windows core audio apis

    这个播放流程有一次当初不是很理解,做个记录,代码中的中文部分,原文档是有解释的:To move a stream of rendering data through the endpoint buff ...

  10. 执行*.sh脚本时提示Permission denied

    使用chmod修改.sh的权限 chmod u+x *.sh 再次执行