Jenkins持续编译、运行自动化用例

持续集成(CI)

Jenkins是一个持续集成工具,能够持续编译、运行测试代码。它有各种不同的配置方式,可以在代码check-in之后运行测试代码,也可以周期性运行测试代码(比如每天开工前的环境健康度检查),运行结果可以生成报告,也可以邮件分发出去。

Jenkins下载安装

Jenkins官网:http://jenkins-ci.org,找到它最新版的.war,目前是1.622,下载下来:http://mirror.xmission.com/jenkins/war/1.622/jenkins.war

然后用命令行启动:java -jar jenkins.war

启动完成后,打开网址,http://localhost:8080/(Jenkins默认端口号是8080,如果此端口号被占用,会变成其他的,比如8081什么的,可以从启动时终端的日志信息看到端口号信息)。

Jenkins任务配置

  • 在根目录点击新建,创建一个自由风格的项目(从最简单的开始)

  • 在源码管理处选择None
  • 构建触发器这里,用crontab方式配置周期性触发

    Crontab * * * * *,从左至右分别表示分钟(Minute)、小时(Hour)、日期(Day of Month)、月份(Month)、星期几(Day of week,0-7,0和7均表示星期天)

    在任何一位上,都可以用如下句法:

    ‘M-N’,如”1-5”,如果是分钟,则表示1,2,3,4,5

    ‘M-N/X’表示在M-N范围内以X步调增加,例如1-6/2表示1,3,5

    /X’ 表示每过多少,例如/X * * * *表示0,15,30,45

    ‘A,B,…,Z’表示多个值,例如”0,30”或者”1,3,5”

  • 在构建这里选择执行shell脚本,这里有神坑。。。shell脚本里写编译并执行java代码,而mac下,javac以及java句法跟windows以及Linux都不一样。我使用普通的写法编译了半天都不对,最后翻墙出去google到了mac下的句法。
cd /Users/Sophie/IdeaProjects/BBSAutoLoginReplyScreenShot/src
javac -cp :selenium-server-standalone-2.46.0.jar:selenium-java-2.46.0.jar: AutoLoginReplyScreenshot.java
java -cp :selenium-server-standalone-2.46.0.jar:selenium-java-2.46.0.jar: AutoLoginReplyScreenshot
/Users/Sophie/IdeaProjects/BBSAutoLoginReplyScreenShot
  • 增加构建后操作,这里我们输入邮箱地址,用来接收通知邮件。注意,为了能够正常发送邮件,还需做另外配置,位于根页面,系统管理->系统设置下面。

    先配置发送人邮件地址

    再配置邮件服务器,这里我选择smtp协议,如果在『用户默认邮件后缀』这里配置了后缀,那么下面用户名那里就不用再写后缀,只写@之前的即可。配置完之后可以勾上最下面的『通过发送测试邮件测试配置』来调试一下。这些都OK之后,上面配置的构建通知邮件才会顺利发出去。

配置完成后,查看它的执行历史,再检查下邮箱,成功和失败的,都有邮件通知,如下所示:

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-10 20:01:28

Jenkins持续编译、运行自动化用例的相关文章

命令行运行Android Robotium自动化用例或单元测试用例

本文目录 1.运行所有的测试用例 2.运行单个测试类或某个TestSuite 3.运行某个测试类里面的某个测试方法 4.运行两个不同的测试类或类中的方法 命令行运行Android Robotium自动化用例或单元测试用例 1.运行所有的测试用例 举个栗子:运行测试工程下的所有用例 1 adb shell am instrument -w com.taobao.taobao.test/android.test.InstrumentationTestRunner 2.运行单个测试类或某个TestSu

dubbo接口自动化用例性能优化

前言 去年换了一个新部门,看了下当前的自动化用例的情况,发现存在三类性能问题: 本地调试运行时等待时间较长,就算是一个简单的case,执行时间都需要1分钟以上 单用例执行时间比较长,部分用例执行时间超过2分钟 集成到CI中运行时,执行时间较长 对于上述三个问题花时间进行了一定程度的优化,总结如下 优化本地调试时间 通过调试可以发现,一个需要执行660ms的case,在执行前的初始化工作就需要消耗约1分半钟,那么就需要思考下能否减少这部分初始化时间了. 公司用的自动化框架是基于AbstractTe

Android UI自动化用例设计技巧

一.封装方法 1.编程如何越来越快: 首先,需要经验丰富,知识面广. 其次,每一个熟练编程的人员,都会有自己的一个库,解决各种问题.各种通用的方法函数. 同理,自动化脚本也是编程,测试用例则为需求,UI自动化编写虽然容易,但是界面变化快.维护庞大.所以封装通用方法,是最快最容易的途径. 2.哪些方法需要封装: 公共的操作方法 经常使用的步骤:超过两次以上 经常使用的组件:输入框.文本框.列表 经常操作的布局:多个组件组成通用的布局 经常操作的页面:ui页面由一个一个单独Activity组成,就可

自动化用例设计原则

1.自动化用例分3步走 初始化,输入准备 执行(方法调用),结果验证(断言) 清理环境 2.用例独立 不同的执行顺序,相同的结果 用例间没有状态共享 用例执行前的环境状态与用例执行结束后的一致 3.单一职责 一个单测用例只负责一个场景/行为 一个用例中的多个断言仅验证一个场景 如:调用api返回结果需要验证error no是否为0,error msg是否为空 一个方法,N个场景需要写N个用例 一个场景,多个方法可以写一个用例 遵循的原则就是一个场景对应一个用例 4.自描述 变量名.方法名.类名等

robot+selenium编写web UI自动化用例

通常我们可以用robot framework写接口自动化用例,但是有些站点如果未做前后端分离,迭代过程中又有大量的重复测试工作量,没有接口可调用验证,也有自动化测试需求,怎么办?这时候,那个深坑频现的web UI自动化就势在必行了.robot只是自动化框架,好在他稳定而且扩展性极好,要想驱动web浏览器自动干活,只需要安装另外一个神器selenium,下文将提纲携领介绍web UI如何入门,一旦你入了门,其余的就是baidu和看官网帮助的工作量了,建议用到了在查,不然也没卵用. 用例编写前提:

自动化用例设计

用例设计部分,无论是手工测试还是自动化测试,都必须要的环节,也是非常重要的环节.在做自动化的时候,用例需要考虑前置后置.步骤和对比,每一个部分都要有提供非常明确的测试数据,要考虑数据的重复使用是否会影响脚本的执行结果. 自动化用例设计原则 1.不是所有的手工用例都要转成自动化测试用例 2.考虑到脚本开发的成本,不要选择流程太复杂的测试用例,如果有必要,可以考虑把流程拆分成多个用例来实现脚本 3.选择的用例最好可以构建成场景.例如,一个功能模块,分多个用例,多个用例使用同一个场景 4.选择的用例可

jenkins执行自动化用例(详细、有用、mark 优先级高高高)

http://blog.sina.com.cn/s/blog_68f262210102vx8o.html 第七章 测试用例接入jenkins自动运行 ------Web自动化测试之Webdriver+TestNG--从零到熟练(系列) 自动化测试用例的最终目的就是无人值守的自动化回归测试,不管是用什么语言,什么框架编写的测试用例,如果想达到这个效果,都需要借助于Jenkins或是Hudson.根据业界的习惯,我们还是使用Jenkins.在本人的各个自动化测试教程中,已经多次介绍到了Jenkins

搭建python自动化用例框架--问题

根据https://blog.csdn.net/huilan_same/article/details/76572411搭建python自动化框架过程所遇问题: 一.缺少测试套:测试套编码如下,会运行E:\Software\sichuantest\test\case目录下所有与test_*.py匹配的用例 import unittest from utils.HTMLTestRunner import HTMLTestRunner import time #注意使用套件时,在单个py文件中下的多

PageObject设计模式进行自动化用例的设计方法

关于PageObject模式进行自动化代码的编写: PageObject简而言之理解就是:一个页面作为一个类,页面中所有的元素均作为类中的方法 当然PageObject也是一种分层思想. 以Python登录163邮箱举例: BrowserDriver作为打开浏览器驱动的一个方式 Page是所有的页面组成的一个包 Testcase就是实际的测试用例 1.Page中存在一个基本的page类,所有的页面类都需要继承的类:这样写的好处就是元素一旦修改,UI界面发生变化,我仅需修改我的page就行,不影响