基于python的unittest测试框架集成到jenkins(Mac)
1.jenkins部分
1.1 安装jenkins
jenkins下载地址:https://jenkins.io/download/
安装步骤,疯狂点击下一步
1.2 打开jenkins服务
在浏览器上输入127.0.0.1:8080

2.代码部分
代码下载地址:https://github.com/taomin1/pyunittest
2.1 目录架构
-testcase
--testsuite
-case_listener
-test_runner
-README

2.2 test_case
test_case包含多个test_suite,所有的测试用例均写在这个目录下,并且以test_suite_**.py命名(原因是jenkins配置时会讲到)
test_suite_baidu实例代码

2.3 caseListener
caseListener是一个装饰器,作用是在执行case时进行部分操作,比如打印执行开始,或者将执行结果执行结果存储到数据库等等

2.4 test_runner
test_runner是执行case的主入口,主要是在jenkins上配置时通过该文件去执行case

3.jenkins配置部分
3.1新建job

3.2 输入job名字
选择构建一个自由风哥的软件项目

3.3 进行git配置,用于jenkins运行时获取代码

3.4 进行shell配置

export PATH=/Library/Frameworks/Python.framework/Versions/3.6/bin/
增加环境变量,因为我的本地机器装了3.6和2.7,代码是基于3.6编码的
python3 test_runner.py -p test_suite_**.py
通过test_runner去执行case,执行时回去检索以test_suite_**.py这种格式的case,所以在之前要求case命名格式要求
-p 是命名符合,在test_runner有源码,有兴趣同学可以详细看一下
4.结果演示

jenkins console显示为成功,在结果列表展示也为空
5.后续
1. 代码可以继续拆分
2.可以集成django和数据库用于可视化操作
3.HtmlTestRunner安装
下载后移动到python3安装目录下,https://i.cnblogs.com/Files.aspx
修改记录:
第94行,将import StringIO修改成import io
第539行,将self.outputBuffer = StringIO.StringIO()修改成self.outputBuffer = io.StringIO()
第642行,将if not rmap.has_key(cls):修改成if not cls in rmap:
第766行,将uo = o.decode('latin-1')修改成uo = e
第775行,将ue = e.decode('latin-1')修改成ue = e
第631行,将print >> sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)修改成print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime))
基于python的unittest测试框架集成到jenkins(Mac)的更多相关文章
- python利用unittest测试框架组织测试用例的5种方法
利用unittest测试框架可以编写测试用例,执行方式分两大类:利用main方法和利用testsuite,其中利用测试套件来组织测试用例可以有4种写法. 在此之前,先了解几个概念 TestCase:所 ...
- Python单元测试unittest测试框架
本文的主题是自动化测试框架的实现,在实现之前,先了解一下关于unittest模块的相关知识: Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回 ...
- 基于Python的接口自动化-unittest测试框架和ddt数据驱动
引言 在编写接口自动化用例时,我们一般针对一个接口建立一个.py文件,一条接口测试用例封装为一个函数(方法),但是在批量执行的过程中,如果其中一条出错,后面的用例就无法执行,还有在运行大量的接口测试用 ...
- Python接口测试实战3(下)- unittest测试框架
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python 下的unittest测试框架
unittest测试框架,直接上图吧: data:数据:主要格式为CSV:读取方式:csv.reade: public:封装的模块:通用的模块单独封装,所需参数设置为变量: testcase:测试用例 ...
- Selenium之unittest测试框架详谈及实操
申明:本文是基于python3.x及selenium3.x. unittest,也可以称为PyUnit,可以用来创建全面的测试套件,可以用于单元自动化测试(模块).功能自动化测试(UI)等等. 官方文 ...
- 基于python3在nose测试框架的基础上添加测试数据驱动工具
[本文出自天外归云的博客园] Python3下一些nose插件经过2to3的转换后失效了 Python的nose测试框架是通过python2编写的,通过pip3install的方式安装的nose和相关 ...
- <day002>Selenium基本操作+unittest测试框架
任务1:Selenium基本操作 from selenium import webdriver # 通用选择 from selenium.webdriver.common.by import By # ...
- 基于soapUI构建WebService测试框架
基于soapUI构建WebService测试框架 http://www.docin.com/p-775523285.html
随机推荐
- 微信小程序实现图片裁剪上传(wepy)
参考https://github.com/we-plugin/we-cropper,在wepy中实现,参考的具体例子是we-cropper/example/cutInside/ 项目上传图片时2:3的 ...
- Django中CBV(Class Base Views)模型源码分析
在view文件中编写一个类,并配置好路由 class Test(View): def get(self, request, *args, **kwargs): return HttpResponse( ...
- css js 兼容问题
js 兼容问题 1. document.form.item 问题问题:代码中存在 document.formName.item("itemName") 这样的语句,不能在FF下运 ...
- npm下设置NODE_ENV下mac与windows的差异
linux & mac: export NODE_ENV=production windows:set NODE_ENV=production windows: mac:
- golang并发(1)介绍
概述 简而言之,所谓并发编程是指在一台处理器上“同时”处理多个任务. 随着硬件的发展,并发程序变得越来越重要.Web服务器会一次处理成千上万的请求.平板电脑和手机app在渲染用户画面同时还会后台执行各 ...
- coursera-斯坦福-机器学习-吴恩达-笔记week4
1 神经网络的提出 线性回归和逻辑回归能很好的解决特征变量较少的问题,但对于变量数量增加的复杂非线性问题,单纯增加二次项和三次项等特征项的方法计算代价太高. 2 神经网络算法 2.1 神经元 模拟神经 ...
- 常用模块Part(1)
collections模块 time模块 random模块 os模块 sys模块 collections模块 这个模块实现了一些很好的数据结构,它们能帮助你解决各种实际问题 在这里主要介绍几种数据结构 ...
- 关于规范NOIP试题管理办法的通知
由CCF主办的NOIP赛事举行在即,保密起见,现将有关规定发给各省赛区组织单位. 1.NOI各省组织单位负责试题保密工作. 2.NOIP初赛试卷为纸质版,复赛试卷为电子版. 3.在初赛进行中,如有选手 ...
- Unity中UGUI鼠标穿透UI问题的解决方法
不过在使用时需要先获取两个红色显示的变量,graphicRaycaster和eventSystem. 这两个变量分别对应的是Canvas中的GraphicRaycaster组件和创建UI时自动生成的“ ...
- Forth 采用CODE定义新词
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...