Python unittest基本使用方法代码实例


Posted in Python onJune 29, 2020

基本使用

import unittest
class Testcase(unittest.TestCase):
  @classmethod
  def setUpClass(cls):
    pass
  @classmethod
  def tearDownClass(cls):
    pass
  
  def setUp(self):
    pass
  def tearDown(self):
    pass
  def test01(self):
    print("01")
  def test02(self):
    print("02")
if __name__ == "__main__":
  unittest.main()

断言的使用

unittest的执行顺序:

并不是按照代码顺序,而是按照函数名称顺序;

通过添加执行的顺序

if __name__ == "__main__":
#unittest.main()
suite = unittest.TestSuite()
'''
suite.addTest(TestCase01('test_06'))
suite.addTest(TestCase01('test_04'))
suite.addTest(TestCase01('test_02'))
suite.addTest(TestCase01('test_05'))
suite.addTest(TestCase01('test_01'))
suite.addTest(TestCase01('test_07'))
'''
tests =[TestCase01('test_06'),TestCase01('test_02'),TestCase01('test_03'),TestCase01('test_05'),TestCase01('test_01')]
suite.addTests(tests)
runner = unittest.TextTestRunner()
runner.run(suite)

unittest中套件的运用

有多个测试脚本py文件时,需要一次性执行测试脚本

import unittest
import sys
sys.path.append("dir")添加当前工程目录
from Unittest.test_case01 import Testcase01
from Unittest.test_case01 import Testcase02
testcase01 = unittest.TestLoader().loadTestsFromTestCase(Testcase01)
testcase02 = unittest.TestLoader().loadTestsFromTestCase(Testcase02)
suote = unittest.TestCase([testcase01,testcase02])
unittest.TextTestRunner().run(suote)

unittest 中条件控制跳过case

@unittest.skip("这个case不执行")
def test_07(self):
  print("执行case07")
  flag = "adfadfadfadfadsfaqeewr"
  s = "fads"
  self.assertIn(s, flag, msg="不包含")
@unittest.skipIf(4==5,"执行")
def test_01(self):
  print("执行case01")
  # res = requests.get(url=url,params=data).json()
  data1 = {
    "user": "11111"
  }
  self.assertDictEqual(data1, data)

unittest中case的批量管理

import unittest
import sys
import os
sys.path.append("dir")添加当前工程目录
from Unittest.test_case01 import Testcase01
from Unittest.test_case01 import Testcase02

case_path = os.getcwd() + '/Unittestcase'
discover = unittest.defaultTestLoader.discover(case_path)

unittest.TextTestRunner().run(discover)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python字符串格式化
Jun 15 Python
python with提前退出遇到的坑与解决方案
Jan 05 Python
python查找指定文件夹下所有文件并按修改时间倒序排列的方法
Oct 21 Python
Python在图片中插入大量文字并且自动换行
Jan 02 Python
Python不同目录间进行模块调用的实现方法
Jan 29 Python
Python根据服务获取端口号的方法
Sep 25 Python
Pycharm如何运行.py文件的方法步骤
Mar 03 Python
有趣的Python图片制作之如何用QQ好友头像拼接出里昂
Apr 22 Python
python对execl 处理操作代码
Jun 22 Python
matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析
Jan 05 Python
详解python日志输出使用配置文件格式
Feb 10 Python
pycharm无法导入lxml的解决办法
Mar 31 Python
解决keras使用cov1D函数的输入问题
Jun 29 #Python
快速了解Python开发环境Spyder
Jun 29 #Python
使用Keras构造简单的CNN网络实例
Jun 29 #Python
基于K.image_data_format() == 'channels_first' 的理解
Jun 29 #Python
Python enumerate() 函数如何实现索引功能
Jun 29 #Python
解决Keras中CNN输入维度报错问题
Jun 29 #Python
Python字符串split及rsplit方法原理详解
Jun 29 #Python
You might like
乱谈我对耳机、音箱的感受
2021/03/02 无线电
一段php加密解密的代码
2006/10/09 PHP
PHP生成静态页面详解
2006/12/05 PHP
php递归法读取目录及文件的方法
2015/01/30 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
jquery实现图片灯箱明暗的遮罩效果
2013/11/15 Javascript
使用firebug进行调试javascript的示例
2013/12/16 Javascript
javascript中eval和with用法实例总结
2015/11/30 Javascript
JavaScript截取指定长度字符串点击可以展开全部代码
2015/12/04 Javascript
jQuery插件cxSelect多级联动下拉菜单实例解析
2016/06/24 Javascript
浅谈JS中String()与 .toString()的区别
2016/10/20 Javascript
JavaScript中捕获与冒泡详解及实例
2017/02/03 Javascript
AngularJS日程表案例详解
2017/08/15 Javascript
最新Javascript程序员面试试题和解题方法
2017/11/23 Javascript
Vue中CSS动画原理的实现
2019/02/13 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
JS 遍历 json 和 JQuery 遍历json操作完整示例
2019/11/11 jQuery
JS寄快递地址智能解析的实现代码
2020/07/16 Javascript
ES11屡试不爽的新特性,你用上了几个
2020/10/21 Javascript
uni-app实现获取验证码倒计时功能
2020/11/01 Javascript
python封装对象实现时间效果
2020/04/23 Python
在Python的Flask框架中使用模版的入门教程
2015/04/20 Python
Python实现调用另一个路径下py文件中的函数方法总结
2018/06/07 Python
Python3实现将本地JSON大数据文件写入MySQL数据库的方法
2018/06/13 Python
详解Python下Flask-ApScheduler快速指南
2018/11/04 Python
python中的split()函数和os.path.split()函数使用详解
2019/12/21 Python
基于HTML5的WebSocket的实例代码
2018/08/15 HTML / CSS
娇韵诗加拿大官网:Clarins加拿大
2017/11/20 全球购物
荷兰手表网站:Watch2Day
2018/07/02 全球购物
信息部岗位职责
2013/11/12 职场文书
护理助产毕业生的求职信
2014/03/02 职场文书
高校优秀辅导员事迹材料
2014/05/07 职场文书
英镑符号 £
2022/02/17 杂记
分享五个Node.js开发的优秀实践 
2022/04/07 NodeJs
Java 写一个简单的图书管理系统
2022/04/26 Java/Android
聊聊CSS粘性定位sticky案例解析
2022/06/01 HTML / CSS