unittest的工作原理:一下例子简单的描述了整个过程

def calc(a,b):
return a//b
import unittest,HTMLTestRunner
import BeautifulReport
from unittest import TestCase
class MyTest(TestCase):#继承TestCase
@classmethod#类方法
def setUpClass(cls):#所有用例执行之前会执行一次,多用于数据库连接
print('运行setUpClass')
@classmethod
def tearDownClass(cls):#所有用例执行之后会执行一次,多用于数据库连接
print('运行setUpClass')
def setUp(self):#每条用例运行之前都会执行
print('运行setUp')
def tearDown(self):#每条用例运行之后都会执行
print('tearDown')
def test_calc1(self):
#正常的用例 加上下面注释就是用例描述
'''这是测试出发计算器正常的'''
print('第一条用例')
res=calc(4,2)
self.assertEqual(2,res,'预期结果和实际结果不符合 预期结果 2 世界结果为%s'%res)#后面提示可写可不写
def test_calc2(self):
'''这是测试出发计算器不正常的'''
print('第二条用例')
res=calc(5,1)
self.assertEqual(1,res)#断言
def test_a(self):
'''这是王艳辉谈恋爱的'''
print('wangyanghui')
def test_b(self):
'''张向欢胖胖的'''
print('zhangxianghuan') # unittest.main()#可以帮运行当前文件里面的所有测试用例 测试用例的方法名必须以test开头,不然不能测出来
test_sutie=unittest.TestSuite()#定义一个测试集合,
test_sutie.addTest(MyTest('test_a'))#把类里的一个用例加入到集合
test_sutie.addTest(unittest.makeSuite(MyTest))#把类里面的所有的用例都加到集合里
runtest=unittest.TextTestRunner()
runtest.run(test_sutie)
#以上是测试用例的基本流程 #不好看的报告
f=open('report.html','wb')#可以在网页上直接浏览的报告
runner=HTMLTestRunner.HTMLTestRunner(stream=f,title='XXX测试报告',description='这是XXX测试的')
#加上'''xxx'''是报告里面加注释的
runner.run(test_sutie)
f.close() #好看的报告
report=BeautifulReport.BeautifulReport(test_sutie)
report.report(description='XXX测试',filename='report2.html')
print(report.failure_count)#失败的条数
print(report.success_count)#成功的条数

第十一天 unittest参数化模块的更多相关文章

  1. python自动化测试学习笔记-unittest参数化

    做接口测试的时候,当一个参数需要输入多个值的时候,就可以使用参数来实现: python中unittest单元测试,可以使用nose_parameterized来实现: 首先需要安装:pip  inst ...

  2. python接口自动化(二十一)--unittest简介(详解)

    简介 前边的随笔主要介绍的requests模块的有关知识个内容,接下来看一下python的单元测试框架unittest.熟悉 或者了解java 的小伙伴应该都清楚常见的单元测试框架 Junit 和 T ...

  3. Python第十一天 异常处理 glob模块和shlex模块 打开外部程序和subprocess模块 subprocess类 Pipe管道 operator模块 sorted函数 os模块 hashlib模块 platform模块 csv模块

    Python第十一天    异常处理  glob模块和shlex模块    打开外部程序和subprocess模块  subprocess类  Pipe管道  operator模块   sorted函 ...

  4. Python【unittest】模块

    [unittest]模块是python3.5中的一个内置模块 1.python文件导入[unittest]模块 import unittest 2.定义一个测试用例类,继承[unittest.Test ...

  5. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十一:PS/2模块⑤ — 扩展鼠标

    实验十一:PS/2模块⑤ — 扩展鼠标 当普通鼠标即三键鼠标再也无法满足需求的时候,扩展鼠标即滚轮鼠标就诞生了,然而实验十一的实验目的就是实现滚轮鼠标的驱动.不过,进入整体之前,先让我们来了解一下鼠标 ...

  6. python3 应用 nose_parameterized 实现unittest 参数化

    一.读取变量的值,实现unittest 参数化 import nose_parameterized,unittest def calc(a:int,b:int): return a+b case_da ...

  7. 【转载】unittest参数化(paramunittest)

    前言 paramunittest是unittest实现参数化的一个专门的模块,可以传入多组参数,自动生成多个用例 前面讲数据驱动的时候,用ddt可以解决多组数据传入,自动生成多个测试用例.本篇继续介绍 ...

  8. unittest参数化(paramunittest)

    前言 paramunittest是unittest实现参数化的一个专门的模块,可以传入多组参数,自动生成多个用例前面讲数据驱动的时候,用ddt可以解决多组数据传入,自动生成多个测试用例.本篇继续介绍另 ...

  9. parameterized之unittest参数化

    unittest没有想testNG那么方便,可以进行参数化,但是有一个第三方库可是实现参数化 安装 pip install parameterized 该库可以在python的所有单元测试框架中使用 ...

随机推荐

  1. linux下vi编辑器常用命令

    最近折腾云主机centOS,不得不接触到各种命令,特别是vi编辑器. 时常悔恨当时没好好听金老伯的linux课,导致现在操作命令用的十分生疏,甚至跳转行首行尾都要查一查才知道. 所以〒▽〒有了下面这篇 ...

  2. SpringBoot起飞系列-配置嵌入式Servlet容器(八)

    一.前言 springboot中默认使用的是tomcat容器,也叫做嵌入式的servlet容器.因为它和我们平常使用的tomcat容器不一样,这个tomcat直接嵌入到的springboot,平常我们 ...

  3. C++多线程基础学习笔记(九)

    一.std::atomic续谈 上一章说到std::atomic是针对一个变量的,这里补充一下针对的变量操作一般是++,+=,--,&=等等运算 .以下这种不可取:a=a+1; 二.std:: ...

  4. php栈的定义和出栈、入栈的实现

    栈是线性表的一种,他的特点是后入先出,可以这么理解,栈就像一个存东西的盒子,先放进去的在最底层,后放进去的在上层,因为上层的东西把底层的东西压住了,下层的想要出去就必须把上层的先拿开才行. 定义:栈是 ...

  5. 如何编写正确且高效的 OpenResty 应用

    本文内容,由我在 OpenResty Con 2018 上的同名演讲的演讲稿整理而来. PPT 可以在 这里 下载,因为内容比较多,我就不在这里一张张贴出来了.有些内容需要结合 PPT 才能理解,请多 ...

  6. MySQL之主键

    一.主键  primary key (唯一标识 .不能重复.不能为空) 1.主键-----是表中的字段,这个字段能唯一标识一条记录.例如 学生表(学号.姓名,年级)里的学号,不能重复.不能为空: 课程 ...

  7. T100——接口代码记录,jsonArray和json

    {<section id="cs_t1client.description" >} #應用 a00 樣板自動產生(Version:) #+ Version..: T10 ...

  8. Katu Puzzle POJ - 3678 (2 - sat)

    有N个变量X1X1~XNXN,每个变量的可能取值为0或1. 给定M个算式,每个算式形如 XaopXb=cXaopXb=c,其中 a,b 是变量编号,c 是数字0或1,op 是 and,or,xor 三 ...

  9. pg_ctl — 启动、停止、重启 PostgreSQL

    pg_ctl 名称 pg_ctl -- 启动.停止.重启 PostgreSQL 语法 pg_ctl start [-w] [-s] [-D datadir] [-l filename] [-o opt ...

  10. 数据结构-二叉搜索树Java实现

    1,Node.java 生成基础二叉树的结构 package com.cnblogs.mufasa.searchTree; /** * 节点配置父+左+右 */ public class Node{ ...