2016-12-14 55 views
3

我爲我的python項目設置了Tox。對於不是Qt相關的測試,一切正常,但不幸的是我很難用tox安裝pyqt。在Tox中使用PyQt5(Python3.4和Python3.5)

我使用的python3.4,所以它是不可能從pip安裝PyQt5(我認爲) 但我也希望能夠測試這個應用程序與python3.5(和python 3.5 pyqt5可用與點)

所以,我想,我不能只是在我的setup.py添加pyqt5我requirements.txt,因爲它會爲python3.4失敗

最終(可能是黑客)我可以檢查當前python版本,根據當前的python版本,從requirements.txt寫入或刪除pyqt5,但它看起來很髒。

你該怎麼做?

我也有一個python3.4 virtualenv這個項目,其中包含pyqt和所有的依賴項。 是否有可能告訴Tox使用我現有的virtualenv for python3.4併爲python3.5創建一個新的?

這裏是我的TOX文件(python3.4只,爲python3.5,我只是更換版本)

[tox] 
envlist = py{34} 

[testenv] 
basepython = 
    py34: python3.4 

deps = 
    check-manifest 
    readme_renderer 
    flake8 
    pytest 
commands = 
    py{34}: python setup.py check -m -s 
    py.test tests/ 

[flake8] 
exclude = .tox,*.egg,build,data,test 
select = E,W,F 
max-line-length = 99 
+0

確保使用['pytest-xvfb'](https://github.com/pytest-dev/pytest-qt/issues/170#issuecomment-301019150)避免因'[DISPLAY'和'XAUTHORITY'不通過tox](https://github.com/pytest-dev/pytest-qt/issues/170#issuecomment-300937035)。 – ederag

回答

0

我沒有看到這裏所有參與任何requirements.txt。爲什麼不簡單地在deps中使用py35: PyQt5

對於其他Python版本,我寫了a script來將符號鏈接/複製到virtualenv系統範圍的安裝 - 這可能會有所幫助。

+0

requirements.txt位於setup.py中。如果我明白了,我可以更新我的tox.ini,並放入「deps」部分py35:PyQt5,它將安裝pyqt5僅用於python3.5而不用於python3.4?所以我可以用你的腳本將PyQt5鏈接到python3.4? – PyNico

相關問題