python unittest单元测试的步骤分析


Posted in Python onAugust 02, 2021

说明

1、导入unittest模块。

2、导入被测对象。

3、创建测试类unittest.TestCase。

4、重写setUp和tearDown(如果有初始化和结束)

5、以函数的形式写测试项目:函数名以test_开头。

6、unittest运行测试用例。

实例

import unittest
class LoginCheckTest(unittest.TestCase):
  
      def setUp(self) -> None:
          print("每条用例")
  
      def test_login(self):
          self.assertEqual(0, login_check('lemon','123456').get('code'))
  
      def test_password_error(self):
          self.assertEqual(1,login_check('lemon','8888222').get('code'))
  
      def test_user_error(self):
          self.assertEqual(1, login_check('aaaabc', '123456').get('code'))
  
      if __name__ == '__main__':
          unittest.main()

实例扩展:

python unittest单元测试实例

import unittest

class MyTest(unittest.TestCase): # 继承unittest.TestCase
  def tearDown(self):
    # 每个测试用例执行之后做操作
    print('111')

  def setUp(self):
    # 每个测试用例执行之前做操作
    print('22222')

  @classmethod
  def tearDownClass(self):
  # 必须使用 @ classmethod装饰器, 所有test运行完后运行一次
     print('4444444')
  @classmethod
  def setUpClass(self):
  # 必须使用@classmethod 装饰器,所有test运行前运行一次
    print('33333')

  def test_a_run(self):
    self.assertEqual(1, 1) # 测试用例
    
  def test_b_run(self):
    self.assertEqual(2, 2) # 测试用例
    
if __name__ == '__main__':
  unittest.main()#运行所有的测试用例

生成一个测试报告

import HTMLTestRunner    
    import unittest
    class MyTest(unittest.TestCase):#继承unittest.TestCase
      def tearDown(self):
        #每个测试用例执行之后做操作
        print('111')
      def setUp(self):
        #每个测试用例执行之前做操作
        print(22222)
      def test_run(self):
        # self.assertEqual(1,1)
        self.assertIs(1,1)
        #测试用例
      def test_run2(self):
        # self.assertEqual(1,1)
        self.assertIs(1,1)
        #测试用例
      def test_run3(self):
        # self.assertEqual(1,1)
        self.assertIs(1,1)
        #测试用例
      def test_run1(self):
        # self.assertEqual(1,1)
        self.assertIs(1,1)
        #测试用例
    if __name__ == '__main__':
      test_suite = unittest.TestSuite()#创建一个测试集合
      test_suite.addTest(MyTest('test_run1'))#测试套件中添加测试用例
      #test_suite.addTest(unittest.makeSuite(MyTest))#使用makeSuite方法添加所有的测试方法
      fp = open('res.html','wb')#打开一个保存结果的html文件
      runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title='api测试报告',description='测试情况')
      #生成执行用例的对象
      runner.run(test_suite)
      #执行测试套件

到此这篇关于python unittest单元测试的步骤分析的文章就介绍到这了,更多相关python unittest单元测试的过程内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python二叉树的定义及常用遍历算法分析
Nov 24 Python
python深度优先搜索和广度优先搜索
Feb 07 Python
Python堆排序原理与实现方法详解
May 11 Python
windows下python安装pip图文教程
May 25 Python
python日期时间转为字符串或者格式化输出的实例
May 29 Python
Python3 使用cookiejar管理cookie的方法
Dec 28 Python
Python自定义一个类实现字典dict功能的方法
Jan 19 Python
python 绘制拟合曲线并加指定点标识的实现
Jul 10 Python
Python3.8对可迭代解包的改进及用法详解
Oct 15 Python
使用Python画了一棵圣诞树的实例代码
Nov 27 Python
python实现猜拳游戏项目
Nov 30 Python
告别网页搜索!教你用python实现一款属于自己的翻译词典软件
Jun 03 Python
python元组打包和解包过程详解
Aug 02 #Python
python字典进行运算原理及实例分享
Aug 02 #Python
Python中可变和不可变对象的深入讲解
Python基础数据类型tuple元组的概念与用法
Aug 02 #Python
opencv用VS2013调试时用Image Watch插件查看图片
基于python定位棋子位置及识别棋子颜色
Python 处理表格进行成绩排序的操作代码
You might like
PHP 开发环境配置(Zend Server安装)
2010/04/28 PHP
IIS7.X配置PHP运行环境小结
2011/06/09 PHP
php关联数组快速排序的方法
2015/04/17 PHP
WordPress网站性能优化指南
2015/11/18 PHP
PHP浮点数的一个常见问题
2016/03/10 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
php+croppic.js实现剪切上传图片功能
2018/08/14 PHP
Avengerls vs Newbee BO3 第三场2.18
2021/03/10 DOTA
JavaScript中的anchor()方法使用详解
2015/06/08 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
2016/04/01 Javascript
jQuery插件Easyui设置datagrid的pageNumber导致两次请求问题的解决方法
2016/08/06 Javascript
jQuery EasyUI编辑DataGrid用combobox实现多级联动
2016/08/29 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
2017/08/25 Javascript
详解基于Vue+Koa的pm2配置
2017/10/24 Javascript
详解Vue-cli中的静态资源管理(src/assets和static/的区别)
2018/06/19 Javascript
js中获取URL参数的共用方法getRequest()方法实例详解
2018/10/24 Javascript
JQuery获取元素尺寸、位置及页面滚动事件应用示例
2019/05/14 jQuery
浅谈使用nodejs搭建web服务器的过程
2020/07/20 NodeJs
Python3的介绍、安装和命令行的认识(推荐)
2018/10/20 Python
Python实现直播推流效果
2019/11/26 Python
Python基础之字符串常见操作经典实例详解
2020/02/26 Python
用CSS3的box-reflect来制作倒影效果
2016/11/15 HTML / CSS
Canvas实现放大镜效果完整案例分析(附代码)
2020/11/26 HTML / CSS
HUGO BOSS美国官方网上商店:世界知名奢侈品牌
2017/08/04 全球购物
你所在的项目是如何确定版本号的
2015/12/28 面试题
物业消防安全责任书
2014/07/23 职场文书
纪念九一八事变演讲稿:牢记九一八,屈辱怎能忘
2014/09/14 职场文书
党员干部反四风民主生活会对照检查材料思想汇报
2014/10/12 职场文书
公安个人四风问题对照检查及整改措施
2014/10/28 职场文书
幼儿园园长工作总结2015
2015/05/25 职场文书
董存瑞观后感
2015/06/11 职场文书
停发工资证明范本
2015/06/12 职场文书
2015国庆节66周年标语
2015/07/30 职场文书
goland 恢复已更改文件的操作
2021/04/28 Golang