在测试如下代码时
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形式导入时显示多余的程序主体部分.