unittest: if __name__ == "__main__" 理解

Posted alantammm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unittest: if __name__ == "__main__" 理解相关的知识,希望对你有一定的参考价值。

if __name__ == "__main__":
一个Py文件有两种使用方法,第一种是直接运行,第二种是被import 调用
当直接运行的时候,if __name__ == "__main__":下面的执行,当被导入的时候,if __name__ == "__main__":下面的不执行

test1.py

print(‘test1 main前面‘)
if __name__=="__main__":
print("test1 main里面的方法")


直接运行test1.py 输出:test1 main前面 test1 main里面的方法

test2.py

import test

直接运行test2.py 输出:test1 main前面

 


每个python模块都包含内置的变量__name__,当运行模块被执行的时候,__name__等于文件名(包含了后缀.py);
如果import到其他模块中,则__name__等于模块名称(不包含后缀.py)。而“__main__”等于当前执行文件的名称(包含了后缀.py);
进而当模块被直接执行时,__name__ == ‘main‘结果为真。









以上是关于unittest: if __name__ == "__main__" 理解的主要内容,如果未能解决你的问题,请参考以下文章

Python 同一文件中,有unittest不执行“if __name__ == '__main__”,不生成HTMLTestRunner测试报告的解决方案

unittest单元测试框架之unittest 框架的总结2

unittest学习3:用例执行

unittest单元测试,基于java的junit测试框架

如何看python有没有unittest

python中自动化测试框架unittest