È possibile eseguire py.test
con diverse versioni di python senza plug-in (come xdist
) o tox
?Come eseguire py.test contro diverse versioni di python?
risposta
VirtualEnv è fatto per gestire questi casi.
virtualenv è uno strumento per creare ambienti Python isolati.
Utilizzando virtualenv, sarete in grado di creare più ambienti, ognuno con un plug-in desiderato.
Nota che devi installare pytest nel tuo virtualenv, piuttosto che richiamare la versione che potresti aver installato nel tuo PATH normale. –
È possibile creare uno script pytest autonomo con
py.test --genscript=mypytest
e poi fare
pythonXY mypytest
per eseguire test con una particolare versione di Python.
Non è necessario installare pytest per quella particolare versione di Python poichè pytest è completamente contenuto nello script "mypytest".
'--genscript' non è più supportato da' pytest 3.0.0' – Pasha
Utilizzando xdist plugin di questo può essere easily done:
py.test -d --tx popen//python=pythonX
piste versione python X (2 o 3).
Dal momento che questo è il primo risultato di Google di "pytest test multiple versions"
sto postando questo, tuttavia, mi rendo conto che questa non è una risposta alla domanda del PO di come fare questo senza plugin.
Il modo più semplice per farlo è eseguendo il modulo pytest direttamente con -m
, ad esempio:
python2.6 -m pytest
Nota che devi avere installato pytest per quella versione di Python. Inoltre, è necessario installare tutti i plugin pytest che si stanno utilizzando per con la versione di Python.
tox non è un plug-in! – plaes