在为项目构建epydoc文件时需要有关KeyError的帮助

时间:2010-10-29 19:50:20

标签: python pylons epydoc

我有一个带有大量功能测试的pylons项目,我希望我的手动QA能够不时读取,所以我使用epydoc在功能测试模块上构建html pydocs。

似乎工作正常。它会生成文档,我可以在没有任何明显问题的情况下浏览它们。

然而,当我运行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 :(得分:0)

最后,我最后做的只是在epydoc命令中包含--parse-only,强制它不要导入任何东西(因此解决了不可定位的导入问题,但没有真正回答为什么会发生这种情况)所有)。不是一个完美的解决方案,但它满足了要求......