【发布时间】:2011-09-14 11:40:12
【问题描述】:
我有一个模块 applications/webapp/modules/a.py,其中包含一个 local_import 来导入 applications/webapp/modules/b.py。我想对 a.py 和 b.py 进行 doctest。带有“-T”选项的 web2py shell 部分工作,但在说“在 a.py 中查找测试:class”后会抱怨下面粘贴的异常。
我知道这是因为“-T”选项仅用于测试控制器。但是由于 a.py 中的 local_import,没有简单的方法可以在 web2py 环境之外对 a.py 进行 doctest。那么我应该如何重构模块以便对它们进行 doctest 呢?
回溯(最近一次通话最后一次):
文件“web2py.py”,第 19 行,在 gluon.widget.start(cron=True) 文件 "/home/.../web2py/gluon/widget.py", 第 796 行,开始 测试(options.test,verbose=options.verbose)文件 "/home/.../web2py/gluon/shell.py", 第 326 行,测试中 doctest_object(name, obj) 文件 "/home/.../web2py/gluon/shell.py", 第 322 行,在 doctest_object 中 doctest_object(attr_name, o) 文件 "/home/.../web2py/gluon/shell.py", 第 321 行,在 doctest_object o = eval('%s.%s' % (name, attr_name), globs) 文件 "", 第 1 行,在 NameError: name 'class' 未定义
【问题讨论】:
标签: web2py doctest web2py-modules