jenkins+selenium+python实现web自动化测试

jenkins+selenium可以做到对web自动化的持续集成。

Jenkins的基本操作:

一、新建视图及job

新建视图:

新建job:

可以选择构建一个自由风格的软件项目或者复制已有的item

二、准备工作:

安装Jenkins插件,SSH plugin ,Email Extension Plugin ,Hudson Seleniumhq plugin

点击系统管理->管理插件

在可选插件面板Filter中输入插件名,勾选复选框,点击直接安装,安装完成后重启Jenkins

三、重启后操作:

1.将job之间建立连接

可新增一个 Post-build Actions 来配置下一个需要构建的job

Trigger only if build is stable:只有本次构建成功才执行下一个job

Trigger even if the build is unstable:如果本次构建不稳定也可以执行下一个job,但是失败则停止构建

Trigger even if the build fails:就算本次构建失败也可以执行下一个job

2.配置自动化时间

在上步骤创建的job中添加自动执行时间表

打开job配置

勾选构建触发器的Build periodically

时间格式:* * * * *

*:分钟 小时 日 月 星期

*表示都

MINUTE Minutes within the hour (0–59)

HOUR   The hour of the day (0–23)

DOM    The day of the month (1–31)

MONTH  The month (1–12)

DOW    The day of the week (0–7) where 0 and 7 are Sunday.

*此处分钟我并不明白为什么不能写数字

PS:点击“?”可查看配置要求

3.配置Jenkins的邮件

进入系统管理->系统设置

配置邮件通知:

*之前使用了“使用SMTP认证”,反而无法发送邮件

配置Jenkins Location的系统管理员邮件地址:

配置默认邮件格式:

Extended E-mail Notification

主要修改:

Default Recipients:接收邮件地址,以“,”分隔

Default Subject:默认邮件主题

Default Content:默认邮件内容

修改job中的邮件发送配置

点击job名称,点击配置

*其他都可以按照默认的来,主要修改Triggers

在Add Trigger中添加Failure - Any , Unstable(Test Failures),在构建失败或不稳定时都会发送邮件,如果没有添加任何Trigger,将不会发送任何邮件出来

以上jenkins的配置完成了。

然后实现安装在Linux的Jenkins可以执行Windows下的selenium test case

一、配置Jenkins的Windows节点

1、点击左侧面板中:

系统管理->管理节点

2、点击左侧面板:新建节点

3、输入节点名称,选择Dumb Slave,点击OK

4、输入相关配置,点击save

# of executors:同时可运行的job数量,默认为1

远程工作目录:目标Windows的工作目录

标签:用来指定job以什么方式来进行构建

用法:选择“只允许运行绑定到这台机器的job”

启动方法:选择“Launch slave agents via Java Web Start”,Windows机器推荐选择该方法

* 其他可随意或默认

5、save成功后出现以下记录

6、配置Windows机器

在目标Windows目录中创建上述的远程工作目录:E:\Jenkins

点击机器名:Windows_demo,出现如下页面:

将Run from slave command line下的slave.jar下载到远程工作目录下,同时将Java命令复制到txt文件中,保存成bat文件。

双击bat文件,建立Windows与Jenkins之间的联系。

* 可将open_connecte.bat拖至win->all programs->startup,开机自启动

在管理节点中可看到连接信息(37与38就是上述过程创建的机器):

二、在远程工作目录中安装selenium-server

双击bat文件,建立Windows与Jenkins之间的联系后,会在E:\jenkins中出现workspace文件夹,用来存放job信息。

1、在workspace中创建用来存放test case的文件夹:Test_script

存放test case

*不要出现中文的文件名,存放suite格式的test case

2、下载selenium-server-standalone-2.47.1.jar存放至E:\jenkins\workspace

3、新建以Windows机器执行的job

点击Jenkins的新建,输入Item名称,选择“构建一个自由风格的软件项目”,点击OK:

项目设置中,勾选Restrict where this project can be run,同时在Label Expression中输入上述创建的标签,连接到刚刚建立的节点。

增加构建步骤方式一:选择SeleniumHQ htmlSuite Run:

配置SeleniumHQ htmlSuite Run:

browser:运行脚本的浏览器,可输入*firefox,*chrome,*iexplorer等

startURL:使用的tomcat路径

suiteFile:脚本路径

resultFile:测试结果保存路径,最好保存在workspace下

other:可配置端口号等

* 使用SeleniumHQ htmlSuite Run配置时还需配置全局配置

进入系统管理->系统设置

*该jar包是用来启动selenium的

增加构建步骤方式二:使用batch command

set datetime=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%

java -jar E:\jenkins\workspace\selenium-server-standalone-2.47.1.jar -htmlSuite "*firefox" "http://localhost:8080/" "E:\Jenkins\workspace\test1\Test_script\login-suite.html" "E:\Jenkins\workspace\test1\%datetime%.html"

* datetime的设置,可以按照需要的方式设置,参考:

上述代码的主要功能为启动selenium,并且创建一个以当前日期时间为名的HTML文件,并将结果复制到该文件中。

* 需注意路径中不能出现空格,如需要出现空格,必须将路径用""包含

* 估计所有的Windows机器都使用同一个jar,需验证

最后一步,点击构建。

Selenium IDE 的用法可以参考网上的《selenium中文使用手册》

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方进群即可自行领取。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/522465.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3月求职黄金期!如何打造自己的岗位优势?这6大分析维度很重要!

三月份,又到了一年的求职黄金期。在今年这场求职大队中,想要找到一份满意的工作,你不仅要学会打造一份高质量简历,还要懂得完美应对HR的各项提问。 一、岗位能力的6大分析维度 虽说是求职黄金期,但找工作也不是随便找…

驱动OLED SSD1306的笔记

这里用的OLED模块是SSD1306的 硬件 SSD1306只支持3.3V供电SSD1306支持4中接口:6800、 8080,SPI,IIC通过引脚BS1和BS2接口的模式。如果是IIC模式,SCL对应D0,SDA对应D1,D2(需要把D1和D2连在一起然后接入MCU的SDA) OLED…

Go的安装

一. 下载地址 Go官方下载地址:https://golang.org/dl/ Go中文网:https://go.p2hp.com/go.dev/dl/ 根据不同系统下载不同的包。 二. 配置GOPATH GOPATH是一个环境变量,用来表明你写的go项目的存放路径。 GOPATH路径最好只设置一个&#xff0…

黑马点评-附近商户实现

GEO数据结构 Redis在3.2版本中加入了对GEO的支持,允许存储地理坐标信息,根据经纬度来检索数据。 GEO本质上是基于sortedSet实现的,在Sorted Set中,每个成员都是与一个分数(score)相关联的,这个分数用于对成员进行排序…

LeetCode 2482.行和列中一和零的差值

给你一个下标从 0 开始的 m x n 二进制矩阵 grid 。 我们按照如下过程,定义一个下标从 0 开始的 m x n 差值矩阵 diff : 令第 i 行一的数目为 onesRowi 。 令第 j 列一的数目为 onesColj 。 令第 i 行零的数目为 zerosRowi 。 令第 j 列零的数目为 zer…

数睿通2.0数据接入升级——支持增量字段同步,表单独映射

引言 上次数睿通 2.0 更新是在 23 年12 月 底,已经过去了接近三个月的时间,中间由于过年加上年前年后实在是工作繁忙,所以一直没有腾出空来更新代码,希望大家可以理解,平台的发展离不开你们的支持,在此表示…

【Linux】第四十站:线程概念

文章目录 一、线程二、Linux中线程应该如何理解三、重新定义线程四、四谈进程地址空间(页表相关)五、Linux线程周边的概念1. 线程与进程切换2.线程优点3.线程缺点4.线程异常5.线程用途 一、线程 线程:是进程内的一个执行分支。线程的执行粒度…

RFID-科技的“隐秘耳语者”

RFID-科技的“隐秘耳语者” 想象一下,你身处一个光线昏暗的环境中,周围的一切都被厚厚的阴影笼罩。这时,你需要识别并获取一个物体的信息,你会选择怎么做?是点亮灯光,用肉眼仔细观察,还是打开扫…

复杂业务场景下,如何优雅的使用设计模式来优化代码?

1、引言 本文以一个实际案例来介绍在解决业务需求的路上,如何通过常用的设计模式来逐级优化我们的代码,以把我们所了解的到设计模式真实的应用于实战。 2、背景 假定我们现在有一个订单流程管理系统,这个系统对于用户发起的一笔订单&#…

Linux--搭建Zabbix监控系统

11.1 案例分析 要想实时地了解服务器的运行状况并且能在出现问题时及时解决,利用监控软件是一个很好的 途径。 Zabbix(免费的)是一个基于Web界面的企业级开源监控套件,提供分布式系统监控与网络监视功能。具备主机的性能监控。网络…

对simplex算法的时间复杂度进行分析

对于simplex算法,如果每进行一次pivot变换,目标函数所得到的结果都会有可能出现增加的情况,所以得到的结论中,可以肯定它的值是一定不会出现减少的情况的,每次从目标函数中找到一个系数大于0的变量,然后再在约束条件中选取能够让它的增值最少的那个来继续进行pivot变换。…

egg如何写单元测试

优秀的代码需要有单元测试进行质量保证,每个测试用例都给应用的稳定性提供了一层保障。 测试目录结构 我们约定 test 目录为存放所有测试脚本的目录,测试所使用到的 fixtures 和相关辅助脚本都应该放在此目录下。 测试文件的目录和我们需要测试的文件目…