import unittest
import HTMLTestRunner #产生测试报告
from BeautifulReport import BeautifulReport def calc(x,y):
return x+y class TestCalc(unittest.TestCase):
def test_pass_case(self):
'''这是通过的测试用例'''#用例描述,只能是这样的格式
print('通过用例')
res = calc(1,2)
self.assertEqual(3,res)
self.assertNotEqual(2,3) #每个用例运行之前,都会执行它
def setUp(self):
print('我是setup。。。') # 每个用例运行完成后,都会执行它
def tearDown(self):
print('我是teardown。。。') # 所有的用例运行之前,都会执行它
@classmethod
def setUpClass(cls):
print('我是setupclass。。。') # 所有的用例运行之后,都会执行它
@classmethod
def tearDownClass(cls):
print('我是teardownclass。。。') def testa(self):
print('a')
def test_fail_case(self):
'''这是失败的测试用例''' #用例描述
print('用例失败!')
res = calc(9,8)
self.assertEqual(98,res)
def test_haha(self):
'''哈哈哈'''
self.assertEqual(1,2) if __name__ == '__main__': #用于自测试
# unittest.main()#他会帮你运行当前这个Python里面所有的测试用例
suite = unittest.TestSuite()#定义一个测试套件 #单个测试用例添加
# suite.addTest(TestCalc('test_pass_case'))
# suite.addTest(TestCalc('testa'))
# suite.addTest(TestCalc('test_fail_case')) # 批量添加 #将这个类里面所有的测试用例
suite.addTest(unittest.makeSuite(TestCalc)) # 普通报告模板
# f = open('report0307.html','wb') #打开一个测试报告文件
# runner = HTMLTestRunner.HTMLTestRunner(stream=f,
# title='测试结果',
# description='描述')
# runner.run(suite)#运行 # # 好看的报告模板!!
result = BeautifulReport(suite)
result.report(filename = 'louis_test_report',description='描述',log_path = '.')

Python基础学习九 单元测试的更多相关文章

  1. Python基础学习九 数据库备份

    class BakDb(object): def __init__(self,ip,username,passwd,port=3306,path=r'C:\Users\BJQT\Desktop\dat ...

  2. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  3. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  4. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  5. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  6. (一)python基础学习

    根据廖雪峰老师的python教程写一些学习总结! Python基础学习 1.使用list和tuple (1)list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时 ...

  7. python基础学习(起步)

    目录 python基础学习(起步) 变量 常量 变量的内存管理 python垃圾回收机制 变量的其他赋值方式 今日编程小题 本人能力有限,若有偏颇之处请读者大大不吝赐教! 祝大家每天都在成长! pyt ...

  8. Python基础学习二

    Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...

  9. Python基础学习一

    Python基础学习一 1.变量与常量 变量名:大小写英文.数字.下划线的组合,数字不能开头 常量名:习惯上常量用大写字母命名,例如"PI" 2.多行输出 转义符:反斜杠(),如果 ...

随机推荐

  1. Codeforces 932E Team work 【组合计数+斯特林数】

    Codeforces 932E Team work You have a team of N people. For a particular task, you can pick any non-e ...

  2. Spring-Java事物回滚失效处理

    spring-Java事物回滚失效处理最近在做项目中,无意间发现有个类在抛事物回滚操作,数据也正常的插入到数据库当中了,于是仔细查看看一下具体原因. 一切还是要从Java的检查型异常和非检查型异常说起 ...

  3. matlab 中的function定义. 用最简单的例子说明.

    function y=myfunction(a,b)其中a,b是输入函数的参数,y是函数返回的值.当需要返回多个值时,可以将y看作一个数组,或者直接将函数的开头写成如function [x,y]=my ...

  4. 模仿36。杀毒~button(转)

    <Style x:Key="360btn" TargetType="{x:Type Button}"> <Setter Property=&q ...

  5. 使用neon 开发nodejs addon

    备注:开发使用的是mac 系统,需要安装rust nodejs .python2.7 Xcode 1. 安装neon npm install -g neon-cli   2. 创建简单项目 neon ...

  6. Oracle12c之 CDB数据库中数据字典架构

    数据字典就是元数据的集合,比如创建的表,列,约束,触发器等等这些都是元数据,需要保存到数据库中.除此之外,Oracle自身的一些数据库对象,如目录,PL/SQL代码等等这些都是元数据,都需要存放在数据 ...

  7. 最近项目和java对接,涉及到java的DESede加解密算法

    google后找到这个作者的一篇博客,搬过来用 http://hersface.com/page/17.html <?php class DESede{ /** * 加密 * @param $d ...

  8. happynear_caffe编译时,缺少头文件caffe.pb.h的问题

    由于一些问题,需要编译caffe 的windows版本,用的是happynear的caffe版本,在caffe.pb.h遇到了问题 如何生成 caffe.pb.h 将protobuf 里的 proto ...

  9. cowboy的get和post的例子

    官方get和post的代码是有问题的,1.1下运行crash,这里修改了下,贴代码 创建工程 rebar-creator create-app testCowboy testCowboy_app.er ...

  10. Spring Cloud Bus 消息总线 RabbitMQ

    Spring Cloud Bus将分布式系统中各节点通过轻量级消息代理连接起来. 从而实现例如广播状态改变(例如配置改变)或其他的管理指令. 目前唯一的实现是使用AMQP代理作为传输对象. Sprin ...