2015-11-04 2 views
1

Я использую python 2.7 и пытаюсь собрать документацию для нашего тестового проекта с помощью pdoc.pdoc не может импортировать функцию из другого модуля

PDoc находится здесь: D: \ DEV \ python27 \ Scripts регрессии проекта здесь: C: \ Views \ md_LDB_RegressionTests_v03.1_laptop \ мтс \ Тесты \ БОД \ регрессионного \ Tests Мы используем хоботок для наших тестов и Я пытаюсь создать html-документацию для отдельной группы тестов, отдельный файл python в моем случае. Я бег такой команды:

D:\dev\Python27\Scripts>python pdoc --html "C:\views\md_LDB_RegressionTests_v03. 
1_laptop\mts\Tests\LDB\Regression\Tests\tests\check_system_management\check_capa 
bilities_encoding_problems.py" 

и получить такой ответ:

Traceback (most recent call last): 
    File "pdoc", line 458, in <module> 
    module = imp.load_source('__pdoc_file_module__', fp, f) 
    File "C:\views\md_LDB_RegressionTests_v03.1_laptop\mts\Tests\LDB\Regression\Te 
sts\tests\check_system_management\check_capabilities_encoding_problems.py", line 
4, in <module> 
    from common.builders.system_request import default_create_system, create_cap 
ability 
ImportError: No module named common.builders.system_request 

PDoc не может импортировать функции из других модулей в нашей регрессии ... Структуры нашего проекта выглядит следующим образом :

-Tests (C:\views\md_LDB_RegressionTests_v03.1_laptop\mts\Tests\LDB\Regression\Tests) 
    -"common" package (with init file) 
    -"builders" packege 
     -system_request.py 
    -"test" package 
     -check_system_management package 
     -check_capabilities_encoding_problems.py - this is the file i want to get documentation to 

конечно, есть много других пакетов, но им не уверен, если это имеет смысл, чтобы описать всю структуру в настоящее время

Ввоз часть check_capabilities_encoding_problems.py выглядит следующим образом:

import urllib 
from hamcrest import assert_that, all_of 
from proboscis import test, before_class, after_class 
from common.builders.system_request import default_create_system, create_capability 
from common.entity.LDBChecks import LDBChecks 

Как я могу указать на PDoc где искать функции других модулей? спасибо!

ответ

1

При использовании PDoc с моим Spyder IDE, я использую следующий сценарий, чтобы добавить каталог в путь PDoc

import pdoc 
libpath = r'C:\Path\To\Module' 
pdoc.import_path.append(libpath) 
mod = pdoc.import_module('ModuleName') 
doc = pdoc.Module(mod) 
string = doc.html() 

pdoc.import_path список используемых в настоящее время пути для поиска вашего модуля; pdoc.import_path равно sys.path по умолчанию. Более подробную информацию можно найти в документации pdoc.