2016-12-04 7 views
3

私はtoxを使用して私のpythonパッケージをテストしています。 Python 2.7.13にはリリース候補がありますので、現在のPython 2.7バージョンを通常の使用に置き換えずに、toxを使用してこのバージョンに対してどのようにテストしますか?リリース候補の一時的な使用pythonバージョンのtox

virtualenvを作成するときにPythonのパスを指定する方法を知っていて、py.testをインストールして実行できます。 Toxは独自のvirtualenvをビルドしています。選択したPythonバージョンに影響を与える方法はわかりません。py27py26py35

どうすればこの問題を解決できますか?

答えて

0

毒素を呼び出す前にPATHを拡張することで、PATHを使用してこれに影響を与えることができます(Linuxでは少なくともWindowsではそうでないかもしれません)。

さらに細かいコントロールを取得し、Windows上で動作させるには(AFAIKではUnix/Linuxのように1つのコマンドの使用に環境変数を設定できません)、tox拡張パッケージtox-globinterpreter(免責事項私はそのパッケージの作者です)あなたがpipでインストールすることができます。

パッケージには、Pythonの実行可能ファイルにpy27py36などから明示的なマッピングを書き出しtox--scanオプションが追加されます。

など。私がやる場合:/ opt /パイソン/ XYはは/ opt /パイソン/ XYZ(または場合は、最新バージョンにインストールされ Pythonのバージョンをリリースした最新へのリンクである私のLinuxベースのシステムで、上の

tox --scan /opt/python/{2,3}.?/bin/python /opt/python/pypy2/bin/pypy 

を私はスキャンを変更すると

interpreters: 
python2.6 /opt/python/2.6/bin/python 
python2.7 /opt/python/2.7/bin/python 
python3.2 /opt/python/3.2/bin/python 
python3.3 /opt/python/3.3/bin/python 
python3.4 /opt/python/3.4/bin/python 
python3.5 /opt/python/3.5/bin/python 
python3.6 /opt/python/3.6/bin/python 
pypy /opt/python/pypy2/bin/pypy 

は:

tox --scan /opt/python/2.6/bin/python /opt/python/2.7.13*/bin/python \ 
    /opt/python/3.?/bin/python /opt/python/pypy2/bin/pypy 

私が手:3.6などの開発版)の、これは出力として与え

interpreters: 
python2.6 /opt/python/2.6/bin/python 
python2.7 /opt/python/2.7.13rc1/bin/python 
python3.2 /opt/python/3.2/bin/python 
python3.3 /opt/python/3.3/bin/python 
python3.4 /opt/python/3.4/bin/python 
python3.5 /opt/python/3.5/bin/python 
python3.6 /opt/python/3.6/bin/python 
pypy /opt/python/pypy2/bin/pypy 

tox -e py27は2.7.13リリース候補を使用します。前後に切り替えると設定ファイル(~/.config/toxまたは%APPDATA%\tox)を保存できますが、スキャンの再実行はかなり高速です。そのためにシェルスクリプト/エイリアス/バッチファイルを作成します。

関連する問題