因此,我正在为我的所有脚本创建单元测试,其中许多脚本都不是面向对象的,并且具有主循环代码。我想知道创建与受影响脚本相关的单元测试类的位置的标准是什么。单元测试是否应该在导入脚本的单独文件中,然后对主循环代码进行功能化?还是可以将它推到相关脚本的末尾?
请您参考如下方法:
您应该将您的测试分离到它们自己的文件中,并从您的 main 中提取函数以便它们可以被测试。
(提取函数后,您可能会注意到它们之间共享大量数据,暗示您应该创建一个类。)
您将拥有这样的文件:
def func_1():
...
def func_2():
...
def main():
....
if __name__ == '__main__':
main()
还有一个单独的测试文件,用于测试那些 func_* 函数。
另外,就像@eli-bendersky 说的那样,如果那些func_* 函数都足够相关,那么它们应该被提取到它们自己的模块中,这样它们就可以很容易地被其他脚本重用,但这是一个开始。
