Pyton-常用断言方法

断言方法

简介

断言方法检测该满足的条件是否确实满足。如果该条件满足,对程序行为的假设就得到了确认,就可以确信其中没有错误。如果认为应该满足的条件实际上并不满足,Python将引发异常。

unittest Module中的断言方法

序号 方法 用途
1 assertEqual(a,b) 核实a == b
2 assertNotEqual(a,b) 核实a != b
3 assertTrue(x) 核实x为True
4 assertFalse(x) 核实x为False
5 assertIn(item,list) 核实item在list中
6 assertNotIn(item,list) 核实item不在list中

具体实例

1.创建一个命名为 survey 的文件(文件名称可以另取),内容是帮助管理匿名调查的类 AnonymousSurvey

class AnonymousSurvey():
    """收集匿名调查问卷的答案"""

    def __init__(self,question):
        """存储一个问题,并为存储答案做准备"""
        self.question=question
        self.responses=[]

    def show_question(self):
        """显示调查问卷"""
        print(self.responses)

    def store_responses(self,new_responses):
        """存储调查问卷"""
        self.responses.append(new_responses)

    def show_results(self):
        """显示收集到的所有答案"""
        print("Survey results:")
        for respose in self.responses:
            print('-'+respose)

2.创建文件test_survey,对 AnonymousSurvey 类的行为的一个方面进行验证:如果用户面对调查问题时只提供一个答案,这个答案也能被妥善地存储,使用方法assertIn来核实它包含在答案列表中:

import unittest

from survey import AnonymousSurvey

class TestAnonymousSurvey(unittest.TestCase):
    """针对AnonymousSurvey类的测试"""

def test_store_single_response(self):
    """测试单个答案被妥善地存储"""
    question='What language did you first lean to say?'
    my_survey=AnonymousSurvey(question)
    my_survey.store_responses('English')

    self.assertIn('English', my_survey.responses)

unittest.main()

3.运行test_survey时,测试通过了

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK

猜你喜欢

转载自blog.csdn.net/liuwei_q/article/details/83052896