我的Python包setup.py
。它在聲明install_requires
經常依賴和發展依賴於tests_require
聲明,例如flake8
。如何讓Travis CI安裝tests_require中聲明的Python依賴關係?
我以爲pip install -e .
或運行python setup.py test
也將安裝我的開發依賴關係,他們將可用。然而,顯然他們不是,我很難設置我的Travis CI版本。
install:
- "pip install -e ."
script:
- "python setup.py test"
- "flake8"
生成如上述將失敗配置,因爲flake8
不會被發現爲有效的命令。我也試圖(通過subprocess
)從python setup.py test
命令內部調用flake8
,也沒有成功。
而且我討厭的事實,flake8
不能輕易作出python setup.py test
命令的組成部分,但這是另一個故事。
這可能是迄今爲止最好的解決方案。 FWIW,我在野外也看到的是在setup.py中使用'extras_require'和'pip install -e。[tests]'。將它保持DRY並將測試需求定義爲分配給'extras_require ['tests']'和tests_require'的單獨列表也很容易。 (請參閱我的圖書館https://github.com/honzajavorek/fiobank/) –