学python中会发现要测试某个函数的功能是否如你预期的一样,用python提供的unittest中的TestCase将会更加的简单,而且更加好用。

单元测试:

单元:

def get_formatted_name(first, last, middle=''):
    """Generate a neatly formatted full name."""
    if middle:
        full_name = first + ' ' + middle + ' ' + last
    else:
        full_name = first + ' ' + last
    return full_name.title()

测试:

import unittest
from name_function import get_formatted_name
"""单元测试"""
class NamesTestCase(unittest.TestCase):
    """的测试name_function.py"""
    def test_first_last_name(self):
        """能够正确的处理像Janis Joplin这样的姓名吗?"""
        formatted_name = get_formatted_name('janis', 'joplin')
        self.assertEqual(formatted_name, 'Janis Joplin')

def test_first_middle_last_name(self):
        """能够正确的处理像Wolfgang Amadeus Mozart这样的姓名吗?"""
        formatted_name = get_formatted_name('wolfgang', 'amadeus', 'mozart')
        self.assertEqual(formatted_name, 'Wolfgang Mozart Amadeus')

unittest.main()

类的测试:

类:

class AnonymousSurvey():
    """"收集匿名调查的问卷的答案"""
    def __init__(self, question):
        """存储一个问题,并为存储答案做准备"""
        self.question = question
        self.responses = []
    def show_question(self):
        """显示调查问卷"""
        print(self.question)
    def store_response(self, new_response):
        """存储单份调查答卷"""
        self.responses.append(new_response)
    def show_results(self):
        """显示收集到的所有调查答卷"""
        print("Survey results:")
        for response in self.responses:
            print("- " + response)

测试:

import unittest
from survey import AnonymousSurvey

class TestAnonymousSurvey(unittest.TestCase):
    """针对AnonymousSurvey类的测试"""
    def setUp(self):
        """创建一个测试对象和测试结果"""
        question = "What language did you first learn to speak?"
        self.my_survey = AnonymousSurvey(question)
        self.responses = ['English', 'Spanish', 'Mandarin']

def test_store_single_response(self):
        """测试单个答案会被妥善保存"""
        self.my_survey.store_response(self.responses[0])
        self.assertIn(self.responses[0], self.my_survey.responses)

def test_store_three_response(self):
        """测试三个答案会被妥善保存"""
        for response in self.responses:
            self.my_survey.store_response(response)
        for response in self.responses:
            self.assertIn(response, self.my_survey.responses)
unittest.main()

Python中单元测试和类的测试相关推荐

  1. python创建类的实例方法-Python中动态创建类实例的方法

    简介 在Java中我们可以通过反射来根据类名创建类实例,那么在Python我们怎么实现类似功能呢? 其实在Python有一个builtin函数import,我们可以使用这个函数来在运行时动态加载一些模 ...

  2. Python中的元类是什么?

    元类是什么,我们将它们用于什么? #1楼 请注意,此答案适用于2008年编写的Python 2.x,元类在3.x中略有不同. 元类是使"类"工作的秘诀. 新样式对象的默认元类称为& ...

  3. python中若干关于类的问题

    文章目录 前言 类的构造 类的方法 前言 本文介绍python中若干关于类的难题,这些问题或者概念竟然让人无法理解或者混淆.因而记录下来,若想到新的会继续更新. 类的构造 我们只知道__init__( ...

  4. python叫什么-python中什么叫类

    python中什么叫类? 可以视为种类或者类型的同义词.所有的对象都属于某一个类,称为类的实例. 例如:鸟就是"鸟类"的实例.这就是一个有很多子类的一般(抽象)类:看到的鸟可能属于 ...

  5. python简介怎么写-python中如何写类

    类的定义 Python中,定义类是通过class关键字,例如我们定义一个存储学生信息的类: class Student(object): pass class后面紧接着是类名,即Student,类名通 ...

  6. python中的定制类(转载)

    python中的定制类(转载)<?xml version="1.0" encoding="UTF-8"?> 看到类似__slots__这种形如__x ...

  7. Python中的元类及元类实现的单例模式

    https://www.cnblogs.com/tkqasn/p/6524879.html 在看一些框架源代码的过程中碰到很多元类的实例,看起来很吃力很晦涩:在看python cookbook中关于元 ...

  8. Python中的property类和@property装饰器

    Python中的property类和@property装饰器 在Python的类中,为了避免使用者直接在类的外部操作属性和方法,我们可以将属性和方法设置成私有属性和私有方法. 如果我们需要访问私有属性 ...

  9. python定义类的程序_python扫码签到程序python中如何定义类

    什么是类? 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 什么是方法? 类中的函数即为方法 如何定义一个类? 定义类,语法格式如下: < ...

最新文章

  1. udp,tcp软件udp客户端发消息,udp服务器收不到,C#网络编程,多级路由间,UDP发送消息客户端接收不正常?...
  2. 统计计量 | 统计学中常用的数据分析方法汇总
  3. python【蓝桥杯vip练习题库】ADV-150 周期字串
  4. dpkg: 处理软件包 update-notifier-common (--configure)时出错:
  5. 小甲鱼python视频解读_小甲鱼python视频弟十二讲(关于字符串的方法及注释下)...
  6. 计算机专业英语词汇mp3,【听单词】计算机专业英语词汇音频106,计算机英语单词MP3...
  7. 求最小连续和(洛谷P1614题题解,Java语言描述)
  8. [VJ][bfs]Catch That Cow
  9. 防爆知识:危险场所划
  10. python小程序设计4s店_python自写的车牌识别小程序,完全自主实现。图片处理
  11. Access denied for user ‘root‘@‘localhost‘ (using password: YES)
  12. c++中的MFC可视化编程
  13. 2核4G阿里云服务器被黑客抓鸡??然鹅一个操作就搞定
  14. 夜天之书 #19 The ZeroMQ Community
  15. can滤波 dsp_CAN dsp 28335 CAN通信使用例程,已测试,可以正常 ,欢迎交流学习 DSP program 267万源代码下载- www.pudn.com...
  16. 第五届安洵杯网络挑战赛WP
  17. 运行时错误91问题汇总
  18. 动手学区块链学习笔记(二):区块链以及工作量证明算法
  19. 微信订阅号通过获取Openid并获取用户基本信息
  20. 阿里云ECS领取试题参考

热门文章

  1. 计算机专业b区大学,b区考研学校,b区考研学校排名。
  2. 读书笔记:《量化投资实务》
  3. 向日葵远程桌面连接教程(Windows与Linux互连)
  4. java 加密word_Java 加密和解密PDF文档
  5. Fedora 常用软件推荐
  6. windows设置路由信息
  7. ToolStrip控件的使用
  8. win10 安装oracle11g完整教程
  9. java dwr 漏洞_DWR异常情况处理常见方法解析
  10. kali2021 JDK配置与安装(独一无二的详细)