UnitTest 用法
功能
1.能组织多个用例去执行
2.提供丰富的断言方法
3.提供丰富的日志与测试结果
核心要素
1.TestCase
2.TestSuite
3.TextTestRunner
4.Fixture
用法
1.TestCase
import unittest
'''
类,方法必须以test开头
''' def add(a,b):
return a+b class TestCase01(unittest.TestCase):
def testcase_01(self):
print("testcase_01")
print(add(2,2))
self.assertEqual(3,add(2,2)) def testcase_02(self):
#alt +鼠标连选,一起修改
print("testcase_02") def testcase_03(self):
print("testcase_03")
print(add(3,2)) class TestCase02(unittest.TestCase):
def testcase_01(self):
print("TestCase02_testcase_01")def testcase_02(self):
print("TestCase02_testcase_02") def testcase_03(self):
print("TestCase02_testcase_03")if __name__=='__main__':
#用main来执行,多线程没有规律
unittest.main()
该文件可以执行单个测试用例,鼠标选中要执行的用例,右键,

也可以整个类一起执行,鼠标点中要执行的class,右键选择上图同样的按钮
还可以整个文件一起运行,利用main函数

2.TestSuite,3.TextTestRunner
挑选用例执行,最大范围是测试类
TextTestRunner执行测试用例
import unittest
#导入类
from unitTest.testcase import TestCase01, TestCase02 suite=unittest.TestSuite()
#添加测试用例:以测试用例类中的每一种方法为单位进行添加
suite.addTest(TestCase02("testcase_02")) #添加测试用例:以测试用例类为单位进行添加
suite.addTest(unittest.makeSuite(TestCase01))
#cltrl+d 复制粘贴 #利用TextTestRunner运行测试用例
runner=unittest.TextTestRunner()
runner.run(suite)
总结:
以测试用例类中的每一种方法为单位进行添加
suite.addTest(TestCase02("testcase_02"))
以测试用例类为单位进行添加
suite.addTest(unittest.makeSuite(TestCase01))
4、discover
挑选用例执行,可以选择python文件
import unittest #用例文件的路径 ./cases 路径,test*.py 执行操作的文件
discover = unittest.defaultTestLoader.discover("./cases",pattern='test*.py')
runner=unittest.TextTestRunner()
runner.run(discover)
5、断言
import unittest
'''
类,方法必须以test开头
''' def add(a,b):
return a+b class TestCase01(unittest.TestCase):
def testcase_01(self):
print("testcase_01")
print(add(2,2))
try:
self.assertEqual(4,add(1,2))
except AssertionError as e:
print("报错信息",e)
raise
UnitTest 用法的更多相关文章
- 常见的python的unittest用法
python的unittest好处是通过python脚本编写用例,每个用例可以单独调试初始化和清理动作,因为都是用例都是代码所以调试起来也很方便:它的缺点是得先学会python,难易程度见仁见智吧,对 ...
- python接口自动化(二十一)--unittest简介(详解)
简介 前边的随笔主要介绍的requests模块的有关知识个内容,接下来看一下python的单元测试框架unittest.熟悉 或者了解java 的小伙伴应该都清楚常见的单元测试框架 Junit 和 T ...
- Tornado学习
为什么用Tornado? 异步编程原理 服务器同时要对许多客户端提供服务,他的性能至关重要.而服务器端的处理流程,只要遇到了I/O操作,往往需要长时间的等待. 屏幕快照 2018-10-31 上午 ...
- Pytest学习(三) - setup和teardown的使用
一.前言 从文章标题可以看出,就是初始化和释放的操作,根据我的java习惯来学习pytest,个人感觉没差太多,理解上也不是很难. 哦,对了,差点跑题了,这个框架是基于Python语言的,在学习的时候 ...
- 测试教程网.unittest教程.2. 基本用法
From: http://www.testclass.net/pyunit/basic_example/ 我们通过最简单的例子来看一下unittest的基本用法,下面的代码测试了3个python字符串 ...
- PyUnit (unittest) 的用法
PyUnit(unittest) 是 Python 自带的单元测试框架,用于编写和运行可重复的测试.PyUnit 是 xUnit 体系的一个成员,xUnit 是众多测试框架的总称,PyUnit 主要用 ...
- unittest 的用法
一.discover方法 discover方法可以根据标准加载用例,并将结果返回给测试套件(suite),start_dir:待测试的目录,pattern:测试用例文件名的匹配规. 如: start_ ...
- unittest框架概要
unittest是Python语言自带的单元测试框架,原名PyUnit. 认识unittest 在unittest框架中有4个重要概念:test fixture.test case.test suit ...
- unittest单元测试框架总结
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...
随机推荐
- JUC下工具类CountDownLatch用法以及源码理解
CountDownLoatch是JUC下一个用于控制计数的计数器,比如我需要从6开始计数,每个线成运行完之后计数减一,等计数器到0时候开始执行其他任务. public static void main ...
- 并发王者课-铂金1:探本溯源-为何说Lock接口是Java中锁的基础
欢迎来到<并发王者课>,本文是该系列文章中的第14篇. 在黄金系列中,我们介绍了并发中一些问题,比如死锁.活锁.线程饥饿等问题.在并发编程中,这些问题无疑都是需要解决的.所以,在铂金系列文 ...
- WEB 页面认证
1:安装htpasswd工具生成加密文件 安装工具 # yum install httpd-tools # htpasswd -cm /etc/httpd/passwd/password useraN ...
- Netty 框架学习 —— EventLoop 和线程模型
EventLoop 接口 Netty 是基于 Java NIO 的,因此 Channel 也有其生命周期,处理一个连接在其生命周期内发生的事件是所有网络框架的基本功能.通常来说,我们使用一个线程来处理 ...
- csps考前的一些总结(然而可能并没有用)
记录考前的一些复习和总结,如果没有特殊情况不再写新的题解了 图论: 一.最短路: 1.spfa算法中的vis数组记录的是有没有入队,防止多次入队,通过松弛操作来达到最优解 2.dijkstra算法的v ...
- Pandas高级教程之:处理text数据
目录 简介 创建text的DF String 的方法 columns的String操作 分割和替换String String的连接 使用 .str来index extract extractall c ...
- Golang写文件的坑
Golang写文件一般使用os.OpenFile返回文件指针的Write方法或者WriteString或者WriteAt方法,但是在使用这三个方法时候经常会遇到写入的内容和实际内容有出入,因为这几个函 ...
- 基于C#的多边形冲突检测
之前在项目上碰到了一个多边形冲突检测的问题,经百度.bing.google,发现目前已有的方案,要么是场景覆盖不全,要么是通过第三方类库实现(而这些第三方类库几乎是无法逆向反编译的),而项目中禁止使用 ...
- FastApi持续更新
FastAPI 框架,高性能,易于学习,高效编码,生产可用 官方文档: https://fastapi.tiangolo.com FastAPI 是一个用于构建 API 的现代.快速(高性能)的 ...
- 温故知新,CSharp遇见字符串比较(String Comparison),更佳科学的比较字符串
背景 在C#中,我们经常会遇到需要比较字符串的场景,有时候甚至因为外部输入的不确定性,我们需要忽略大小写来进行比较,以达到判断业务的述求. 对字符串用法的建议 使用.NET进行开发时,请遵循以下简要建 ...