python-unittest学习
在说unittest之前,先说几个概念:
TestCase 也就是测试用例
TestSuite 多个测试用例集合在一起,就是TestSuite
TestLoader是用来加载TestCase到TestSuite中的
TestRunner是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息
先写一个简单的单元测试:
import unittest
# 1.定义一个测试类,类下面有测试方法
# 2.方法中调用assertEqual做校验
# 3.最后用unittest.main()运行所有测试用例 class My(unittest.TestCase):
def testa(self):
self.assertEqual(1,1) def kkk(self):#不是以test开头的方法不会被执行
self.assertEqual(1,2) def test_kkk2(self):
self.assertEqual(1,3) class My2(unittest.TestCase):
def test_kkk3(self):
'''这是kkk3的测试用例'''
self.assertEqual(1,1) def test_kkk4(self):
'''这是test4'''
self.assertEqual(1,2)
if __name__ =="__main__":
unittest.main() #unittest.main() 会找到你所有的测试用例,并将起全部运行 ===================================================
再来一个 单元测试2--会生成测试报告的单元测试
import unittest,HTMLTestRunner,xmlrunner class My(unittest.TestCase):
def test_kkk(self):
self.assertEqual(1,1) def kkk(self): #不是以test开头的测试用例 不会被执行
self.assertEqual(1,2) def test_kkk2(self):
'''这是用例2''' #这是加用例的注释
self.assertEqual(1,2) class My2(unittest.TestCase):
def test_kkk3(self):
'''这是用例3''' #这是加用例的注释
self.assertEqual(2,2) if __name__ == '__main__':
# unittest.main() #unittest.main() 会找到你所有的测试用例,并将起全部运行
suite = unittest.TestSuite() #定义一个空的测试集合
suite.addTest(My('test_kkk2')) #导入单个测试用例
suite.addTest(unittest.makeSuite(My2)) #导入类下面的全部测试用例
# fw = open('report_kkk.html','wb') #二进制的意思,就是有时候保存一些图片或者文本文件的时候就用wb
# runner = HTMLTestRunner.HTMLTestRunner(stream=fw,title='kkk自动化测试报告',description='描述描述')
# runner.run(suite)
#----------下面这个是生成xml格式的测试报告的代码--------------
# runner2 = xmlrunner.XMLTestRunner(output='.') #点 代表当前目录
runner2 = xmlrunner.XMLTestRunner(output='report') #report 为指定目录名
runner2.run(suite)
这是单元测试2的report

下面是xml格式的测试报告--xml格式主要是个后面集成到jenkins用的

python-unittest学习的更多相关文章
- Python unittest 学习
import unittest class UTest(unittest.TestCase): def test_upper(self): self.assertEqual('foo'.upper() ...
- XUnit测试框架-Python unittest
选择 语言选择 本次个人作业我选择的语言是Python,了解学习Python有一段时间了但是一直没有练习,所以这次玩蛇,使用的版本是Python3.6. 开发工具选择 我选择的IDE是Pycharm, ...
- python+appium学习总结
经过了这个月的学习,今天终于完成了公司APP系统的自动化的脚本的编写. 通过单元测试框架UNITTEST,进行脚本的连跑,本来还想把测试数据统一写到EXCEL表格内,实现脚本与数据的分离. 后来发现增 ...
- 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL
周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...
- 60分钟Python快速学习(给发哥一个交代)
60分钟Python快速学习 之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空 ...
- python爬虫学习(1) —— 从urllib说起
0. 前言 如果你从来没有接触过爬虫,刚开始的时候可能会有些许吃力 因为我不会从头到尾把所有知识点都说一遍,很多文章主要是记录我自己写的一些爬虫 所以建议先学习一下cuiqingcai大神的 Pyth ...
- python爬虫学习 —— 总目录
开篇 作为一个C党,接触python之后学习了爬虫. 和AC算法题的快感类似,从网络上爬取各种数据也很有意思. 准备写一系列文章,整理一下学习历程,也给后来者提供一点便利. 我是目录 听说你叫爬虫 - ...
- Python正则表达式学习摘要及资料
摘要 在正则表达式中,如果直接给出字符,就是精确匹配. {m,n}? 对于前一个字符重复 m 到 n 次,并且取尽可能少的情况 在字符串'aaaaaa'中,a{2,4} 会匹配 4 个 a,但 a{2 ...
- python 线程学习
彩照 一.学习[1] # -*- coding: utf-8 -*- import time import thread def timer(no, interval): cnt = 0 while ...
- Openstack python api 学习文档 api创建虚拟机
Openstack python api 学习文档 转载请注明http://www.cnblogs.com/juandx/p/4953191.html 因为需要学习使用api接口调用openstack ...
随机推荐
- macvtap介绍
macvtap介绍 传统的linux网络虚拟化技术采用的是tap+bridge方式,将虚拟机连接到虚拟的tap网卡,然后将tap网卡加入到bridge.bridge相当于用软件实现的交换机,这种解决方 ...
- Coding and Paper Letter(四十五)
资源整理. 1 Coding: 1.Python库gempy,一种基于Python的开源三维结构地质建模软件,它允许从界面和方向数据隐式(即自动)创建复杂的地质模型. 它还支持随机建模以解决参数和模型 ...
- S-T平面图
给定一个平面图和一个源点S.汇点T都在图中无边界的区域上,这样的图叫S-T平面图 我们把图中每一个独立的面看做一个点,对于每条边e,将它两侧的面连一条边,其中靠近S的一段与S相连,与T相连的一段与T相 ...
- SQL注入漏洞知识总结
目录: 一.SQL注入漏洞介绍 二.修复建议 三.通用姿势 四.具体实例 五.各种绕过 一.SQL注入漏洞介绍: SQL注入攻击包括通过输入数据从客户端插入或“注入”SQL查询到应用程序.一个成功的S ...
- 排座位&&Little Elephant And Permutation——排列dp的处理
排列的问题,就是要把序列排个序,使之达到某种最优值或者统计方案数 dp可以解决部分排列问题. 通常的解决方案是,按照编号(优先级)排序决策,从左到右决策两种. 这里主要是第一个. 排座位• 有
- Hdu2433 Travel
Travel Time Limit: 10000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- 折腾到死:matlab7.0 安装
matlab7.0应该是2004年的东西了吧,装起来相当费劲!为什么不用更高的版本呢?其实我也想,之前安装的2013a安装包就5个多G,安装完之后就十多个G了.我习惯将软件安装到C盘,可怜我那100G ...
- pdf 下载整理
pdf下载整理: using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...
- 阳/阴性预测值Positive/negative Predictive Value(推荐AA)
sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005269003&am ...
- 2017北京国庆刷题Day5 morning
期望得分:0+60+60=120 实际得分:0+30+60=90 令g=gcd(X11,X12,X13……) 则行列式可能为D的充要条件为g|D 1.g|D为必要条件: 由定义来算行列式的时候,每一项 ...