【发布时间】:2011-11-18 05:25:03
【问题描述】:
这是一个有点奇怪的问题,但我有一堆自动化脚本(使用 Sikuli/Jython),我想从父脚本运行以进行回归。现在我还有一种方法可以捕获要记录到文本文件的异常。所以这是它目前的工作方式:
Master Script --> specific test script
--> specific test script
--> etc (how ever many scripts there are)
我和我的一个朋友聊天,他建议每个脚本处理自己的错误,并且父脚本只打开一个文件,使文件位置成为全局变量,子脚本只是附加到该文件.
基本上,我是否需要在 python 中做一些特别的事情才能使这成为可能?还是主脚本基本上只是“接触”其他脚本可以使用的文件。
这里是一个“父脚本”的例子(里面没有任何处理错误的代码,也没有打开文件,只是执行脚本)
for dirpath, dirnames, filenames in os.walk("c:\directory\to\the\scripts"):
for filename in [f for f in filenames if f.endswith(".py")]:
directory.append(os.path.join(dirpath, filename))
for entry in directory:
execfile(entry)
【问题讨论】:
-
是否需要在两个脚本之间同步,否则为什么不写入该文件的副本,然后在其他地方关闭文件句柄时更新?
-
脚本之间的同步不是很重要,不是。我只想要一些灵活的东西,因为可能有多层父脚本(例如,运行父脚本的父脚本,然后运行类似的测试脚本)。这个想法是日志文件将被命名为
_uiTest.log (或类似的东西)。