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正则表达式操作指南(re使用)
Sep 06 Python
Python转换HTML到Text纯文本的方法
Jan 15 Python
python清除字符串里非数字字符的方法
Jul 02 Python
python 对dataframe下面的值进行大规模赋值方法
Jun 09 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
Dec 18 Python
使用python实现unix2dos和dos2unix命令的例子
Aug 13 Python
Python爬虫使用代理IP的实现
Oct 27 Python
Python笔记之工厂模式
Nov 20 Python
Python从文件中读取数据的方法步骤
Nov 18 Python
Python读取文件夹下的所有文件实例代码
Apr 02 Python
Python实现排序方法常见的四种
Jul 15 Python
python中的3种定义类方法
Nov 27 Python
python元组打包和解包过程详解
Aug 02 #Python
python字典进行运算原理及实例分享
Aug 02 #Python
Python中可变和不可变对象的深入讲解
Python基础数据类型tuple元组的概念与用法
Aug 02 #Python
opencv用VS2013调试时用Image Watch插件查看图片
基于python定位棋子位置及识别棋子颜色
Python 处理表格进行成绩排序的操作代码
You might like
DC的38部超级英雄动画电影
2020/03/03 欧美动漫
一个SQL管理员的web接口
2006/10/09 PHP
php中文字母数字验证码实现代码
2008/04/25 PHP
php smarty 二级分类代码和模版循环例子
2011/06/01 PHP
jQuery EasyUI API 中文文档 - DateBox日期框
2011/10/15 PHP
PHP中将网页导出为Word文档的代码
2012/05/25 PHP
Thinkphp中的volist标签用法简介
2014/06/18 PHP
php ActiveMQ的安装与使用方法图文教程
2020/02/23 PHP
JS写的数字拼图小游戏代码[学习参考]
2008/10/29 Javascript
JavaScript 继承详解(二)
2009/07/13 Javascript
struts2 jquery 打造无限层次的树
2009/10/23 Javascript
jMessageBox 基于jQuery的窗口插件
2009/12/09 Javascript
修复IE9&safari 的sort方法
2011/10/21 Javascript
JavaScript中常用的运算符小结
2012/01/18 Javascript
图片延迟加载的实现代码(模仿懒惰)
2013/03/29 Javascript
ScrollDown的基本操作示例
2013/06/09 Javascript
解决css和js的{}与smarty定界符冲突问题的两种方法
2013/09/10 Javascript
js判断字符长度及中英文数字等
2014/03/19 Javascript
Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法
2014/09/01 Javascript
jQuery mobile 移动web(4)
2015/12/20 Javascript
轻松掌握JavaScript享元模式
2016/08/27 Javascript
vue.js实现刷新当前页面的方法教程
2017/07/05 Javascript
jQuery轮播图实例详解
2018/08/15 jQuery
快速解决vue动态绑定多个class的官方实例语法无效的问题
2018/09/05 Javascript
JavaScript深入V8引擎以及编写优化代码的5个技巧
2019/06/24 Javascript
Python实现Linux下守护进程的编写方法
2014/08/22 Python
Python基于动态规划算法计算单词距离
2015/07/25 Python
如何查看Django ORM执行的SQL语句的实现
2020/04/20 Python
python如何编写win程序
2020/06/08 Python
如何用python批量调整视频声音
2020/12/22 Python
英国购买威士忌网站:Master of Malt
2019/09/26 全球购物
优秀部门获奖感言
2014/02/14 职场文书
小学安全教育材料
2014/02/17 职场文书
摄影专业毕业生求职信
2014/03/13 职场文书
服务员态度差检讨书
2014/10/28 职场文书
初一英语教学反思
2016/02/15 职场文书