构建项目epydoc文件时遇到KeyError问题求助
我有一个使用pylons的项目,里面有很多功能测试。我希望我的手动测试人员能不时查看这些测试,所以我用epydoc来生成功能测试模块的HTML文档。
看起来一切正常。它能生成文档,我也可以顺利浏览这些文档,没有明显的问题。
不过,当我运行epydoc构建时,出现了一个奇怪的错误,我不知道该怎么解决:
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| In project.tests.functional.resource:
| Import failed (but source code parsing was successful).
| Error: KeyError: '__file__' (line 28)
|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| In /Eclipse/product/project/server/src/project/tests/functional/resource/ftest_module1.py:
| Import failed (but source code parsing was successful).
| Error: KeyError: '__file__' (line 28)
|
+------------------------------------------------------------------------------------------
总共有2个包和8个模块出现了这个问题。我起初以为可能是模块头部或者包的__init__里缺少文档字符串,但加上后也没有解决这个问题。
这是专门为功能测试写的epydoc配置文件的副本:
[epydoc]
modules: project.tests.functional.resource,project.tests.functional.views
output: html
sourcecode: yes
#graph: none
target: ../pydoc/ftests
name: PROJECT
# exclude: test
private: no
imports: no
verbosity: 0
include-log: yes
这是用来执行它的shell脚本的副本:
#!/usr/bin/env bash
basedir=${0%/*}
cd "$basedir/../src"
etc="../etc"
pydoc="../pydoc"
pydoc_ftests="../pydoc/ftests"
mkdir -p $pydoc
mkdir -p $pydoc_ftests
epydoc -v --config $etc/epydoc.config
epydoc -v --config $etc/epydoc.ftests.config
有什么建议吗?
1 个回答
0
最后我做的就是在epydoc命令中加上--parse-only这个选项,这样可以强制它不去导入任何东西(这样就绕过了无法找到导入的问题,但并没有真正解决为什么会出现这个问题)。这不是一个完美的解决办法,但满足了我的需求...