学习笔记之测试

245 阅读1分钟

在测试如下代码时

import unittest
from name_function import get_formatted_name


class NamesTestCase(unittest.TestCase):
    """测试用例"""

    def test_first_last_name(self):
        """能正确处理么只有姓和名么?"""
        formatted_name = get_formatted_name('xiao', 'ming')
        self.assertEqual(formatted_name, 'Xiao Ming')

unittest.main()

出现测试结果

Ran 0 test in 0.000s

与实际情况不符,若改为

if __name__ == "__main__":
    unittest.main()   

则输出正确结果 若删除unittest.main()也能够得到正确结果.

if name == 'main'的意思是:当.py文件被直接运行时,if name == 'main'之下的代码块将被运行;当.py文件以模块形式被导入时,if name == 'main'之下的代码块不被运行。 可以防止以import形式导入时显示多余的程序主体部分.