Ho scritto un pacchetto (http://github.com/anntzer/parsedcmd) che viene eseguito con Python2 e Python3. Tuttavia, ho dovuto scrivere test unitari separati (py.test) per Python2 e Python3 (principalmente perché voglio testare le funzionalità extra di Python3, in particolare argomenti solo per le parole chiave), quindi ho un test_py2.py
e un test_py3.py
in un sotto pacchetto test
. Ora, se corro, dico py.test2 mypkg
, test_py2
passaggi, ma test_py3
non riesce con uno SyntaxError
. Allo stesso modo, per, test_py3
passa ma test_py2
non riesce (potrei fare questo lavoro però, è solo un problema di StringIO
aver spostato a io
).py.test con Python2 e Python3
posso progettare il test
subpackage in modo che import mypkg.test
importa solo la versione corretta delle prove, ma a quanto pare py.test non si preoccupa - semplicemente vede due file corrispondenti test_*
e afferra tutte le prove in ciascuno di essi, ignorando cosa __init__.py
gli dice di importare.
Quindi adesso devo fare entrambi py.test2 mypkg/test/test_py2.py
e py.test3 mypkg/test/test_py3.py
. C'è un modo per impostare il tutto in modo che py.test2 mypkg
e py.test3 mypkg
"funzionino"?
Grazie.