zoukankan      html  css  js  c++  java
  • python入门-测试代码

    断言

    测试函数

    def get_formatted_name(first,last):
        """generate a neatly formattef full name"""
        full_name = first + ' '+last
        return full_name.title()

    测试类

    import unittest
    class NamesTestCase(unittest.TestCase):
        def test_first_last_name(self):
            formatted_name = get_formatted_name('janis','joplin')
            self.assertEqual(formatted_name,'Janis Joplin')
    unittest.main()

    运行结果

    Ran 1 test in 0.000s

    OK

    第2个例子 改进后的 2个测试函数

    def get_formatted_name(first,last,middle=''):
        """generate a neatly formattef full name"""
        if middle:
            full_name = first +' '+ middle+' '+last
        else:
            full_name = first +' '+last
        return full_name.title()
    
     
    
    import unittest
    class NamesTestCase(unittest.TestCase):
        def test_first_last_name(self):
            formatted_name = get_formatted_name('janis','joplin')
            self.assertEqual(formatted_name,'Janis Joplin')
    
        def test_first_last_middle_name(self):
            formatted_name = get_formatted_name('wolfgang', 'mozart', 'amadeus')
            self.assertEqual(formatted_name, 'Wolfgang Amadeus Mozart')
    unittest.main()

    Ran 2 tests in 0.001s

    OK

    2 下面来看测试类

    1)各种断言方法

    assertEqual(a,b)  a和b相等

    assertNotEqual(a,b)   a和b不相当

    assertTrue(x) X为真

    assertFalse(x)  X为假

    assertIn(item,list)  item在list中

    assertNotIn(item,list) item不在list中

    3)类的测试

    class AnonmousSurvery():
        def __init__(self,question):
            self.question = question
            self.responses = []
    
        def show_question(self):
            print(self.question)
    
        def store_question(self, new_response):
            self.responses.append(new_response)
    
        def show_results(self):
            print("Survey result:")
            for response in self.responses:
                print('-'+ response)
    
    question= "what lanaguage did you first learn to speak?"
    my_survey = AnonmousSurvery(question)
    
    my_survey.show_question()
    print("Enter q at any time to quit")
    while True:
        response = input("Lanaguage:")
        if response == 'q':
            break
        my_survey.store_question(response)
    
    print("
     thank you to everyone who participated in the survey")
    my_survey.show_results()
    import unittest
    from survery import AnonmousSurvery
    
    class TestAnnoymousSurvey(unittest.TestCase):
        def test_store_single_response(self):
            question = "What language did you first learn to speak?"
            my_survey = AnonmousSurvery(question)
            my_survey.store_question('English')
    
            self.assertIn('English', my_survey.responses)
    
    unittest.main()

    类的测试,创建类的实例,并测试类中的方法

    3)setUp方法的使用

    import unittest
    from survery import AnonmousSurvery
    
    class TestAnnoymousSurvey(unittest.TestCase):
    
        def setUp(self):
            question = "What language did you first learn to speak?"
            self.my_survey = AnonmousSurvery(question)
            self.responses = ['English', 'Spanish', 'Mandarin']
    
        def test_store_single_response(self):
            question = "What language did you first learn to speak?"
            my_survey = AnonmousSurvery(question)
            my_survey.store_question('English')
    
            self.assertIn('English', my_survey.responses)
    
        def test_store_thress_responses(self):
            for response in self.responses:
                self.my_survey.store_question(response)
            for response in self.responses:
                self.assertIn(response, self.my_survey.responses)
    
    unittest.main()
  • 相关阅读:
    菜鸟学存储:网络存储IP SAN与IB SAN
    读xml高手
    预先加载图片
    xred520
    最简单准确的硬盘整数分区设置操作方法
    Google 每天处理约 20000TB 的数据
    IE 8 无法正常使用网站后台编辑器问题
    常用的JS技术1
    adodb stream 使用说明
    [Tools] JDGUI(Java Decompiler)
  • 原文地址:https://www.cnblogs.com/baker95935/p/9475878.html
Copyright © 2011-2022 走看看