Python: 测试文件可以导入为 "module" 吗?
Python: can a test file be imported NOT as "module"?
所以在 python 文档 https://docs.python.org/3/library/unittest.html#deprecated-aliases 的“命令行界面”部分中指出“如果你想执行一个不能作为模块导入的测试文件,你应该而是直接执行文件。".
我的问题是:测试文件(或与此相关的任何 python 文件)是否可以不作为模块导入?直到现在,我假设每次你在 python 中导入一些东西时,你都会将它作为一个模块导入...我的意思是一个模块基本上只是一个带有语句和定义的 python 文件,对吗?什么条件不能“作为模块导入”?
干杯!
My question is: can a test file (or any python file for that matter) be imported not as a module?
没有。 “作为模块导入”是一个单一的概念,你引用的是关于测试文件的不是,这意味着它们只能作为脚本执行。
What qualifies to not being "importable as a module"?
它们根本不会导入(因为它们会因 PYTHONPATH 分歧而崩溃),或者因为它们会立即启动 运行ning 代码并且在导入时会出现异常。
这里的上下文是单元测试 运行ner 正在 运行 的文件,该测试 运行ner 期望一个相对特定的契约(特别命名为 TestCase
子类,或 load_tests
函数)。但是有很多较旧的测试套件,您可以在其中直接 运行 文件,并尝试通过单元测试 运行 来 运行 它们可能会导致奇怪的行为。
所以在 python 文档 https://docs.python.org/3/library/unittest.html#deprecated-aliases 的“命令行界面”部分中指出“如果你想执行一个不能作为模块导入的测试文件,你应该而是直接执行文件。".
我的问题是:测试文件(或与此相关的任何 python 文件)是否可以不作为模块导入?直到现在,我假设每次你在 python 中导入一些东西时,你都会将它作为一个模块导入...我的意思是一个模块基本上只是一个带有语句和定义的 python 文件,对吗?什么条件不能“作为模块导入”?
干杯!
My question is: can a test file (or any python file for that matter) be imported not as a module?
没有。 “作为模块导入”是一个单一的概念,你引用的是关于测试文件的不是,这意味着它们只能作为脚本执行。
What qualifies to not being "importable as a module"?
它们根本不会导入(因为它们会因 PYTHONPATH 分歧而崩溃),或者因为它们会立即启动 运行ning 代码并且在导入时会出现异常。
这里的上下文是单元测试 运行ner 正在 运行 的文件,该测试 运行ner 期望一个相对特定的契约(特别命名为 TestCase
子类,或 load_tests
函数)。但是有很多较旧的测试套件,您可以在其中直接 运行 文件,并尝试通过单元测试 运行 来 运行 它们可能会导致奇怪的行为。