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 Tkinter GUI编程入门介绍
Mar 10 Python
基于Python的文件类型和字符串详解
Dec 21 Python
wxPython的安装图文教程(Windows)
Dec 28 Python
Python Web编程之WSGI协议简介
Jul 18 Python
Python设计模式之原型模式实例详解
Jan 18 Python
对Python协程之异步同步的区别详解
Feb 19 Python
使用selenium模拟登录解决滑块验证问题的实现
May 10 Python
python全栈知识点总结
Jul 01 Python
Python list与NumPy array 区分详解
Nov 06 Python
Python request操作步骤及代码实例
Apr 13 Python
新手学习Python2和Python3中print不同的用法
Jun 09 Python
Python Django 后台管理之后台模型属性详解
Apr 25 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 图片水印类代码
2012/08/27 PHP
用mysql_fetch_array()获取当前行数据的方法详解
2013/06/05 PHP
ThinkPHP使用UTFWry地址库进行IP定位实例
2014/04/01 PHP
ThinkPHP关于session的操作方法汇总
2014/07/18 PHP
php跨站攻击实例分析
2014/10/28 PHP
php实现评论回复删除功能
2017/05/23 PHP
php实现的redis缓存类定义与使用方法示例
2017/08/09 PHP
解决 FireFox 下[使用event很麻烦] 的问题.
2006/08/22 Javascript
javascript下给元素添加事件的方法与代码
2007/08/13 Javascript
js函数的引用, 关于内存的开销
2012/09/17 Javascript
jquery图片轮播插件仿支付宝2013版全屏图片幻灯片
2014/04/03 Javascript
Javascript数组操作函数总结
2015/02/05 Javascript
文字垂直滚动之javascript代码
2015/07/29 Javascript
Bootstrap每天必学之折叠(Collapse)插件
2016/04/25 Javascript
AngularJS基于provider实现全局变量的读取和赋值方法
2017/06/28 Javascript
解决element ui select下拉框不回显数据问题的解决
2019/02/20 Javascript
nodejs读取图片返回给浏览器显示
2019/07/25 NodeJs
python类定义的讲解
2013/11/01 Python
python获取当前日期和时间的方法
2015/04/30 Python
Python中使用插入排序算法的简单分析与代码示例
2016/05/04 Python
tensorflow 报错unitialized value的解决方法
2020/02/06 Python
Python 从attribute到property详解
2020/03/05 Python
CSS3+JavaScript实现炫酷呼吸效果的示例代码
2020/06/15 HTML / CSS
Notino瑞典:购买香水和美容产品
2019/07/26 全球购物
Farfetch澳大利亚官网:Farfetch Australia
2020/04/26 全球购物
Hashtable 添加内容的方式有哪几种,有什么区别?
2012/04/08 面试题
工商技校毕业生自荐信
2013/11/15 职场文书
党员教师批评与自我批评发言稿
2014/10/15 职场文书
2014幼儿教师个人工作总结
2014/12/03 职场文书
2015年留守儿童工作总结
2015/05/22 职场文书
虎兄虎弟观后感
2015/06/12 职场文书
学校教代会开幕词
2016/03/04 职场文书
Mysql中有关Datetime和Timestamp的使用总结
2021/12/06 MySQL
常用的文件对应的MIME类型汇总
2022/04/26 HTML / CSS
springboot读取nacos配置文件
2022/05/20 Java/Android
win7配置本地ftp服务器的图文教程
2022/08/05 Servers