2010-10-14 17 views
24

Come si esegue nosetest da pycharm per eseguire tutti i test di unità?Come si esegue nosetest da pycharm?

So che pycharm supporta Python's unittest e py.test e che supporteranno correttamente nosetests in pycharm 1.1 ma mi chiedevo se ci fosse un lavoro in giro.

risposta

28

Nella versione attuale di Pycharm (2.6) dovrebbe essere presente un menu di scelta rapida "Esegui nosetest in ..." su un file di test. Se manca, andare su file->settings->Project Settings->python integrated tools e assicurarsi che il Runner di test predefinito sia Nosetest. Ovviamente devi installare Nosetests - pycharm lo offrirà se non lo fai.

Questo ha una limitazione. Se il file in questione non ha una classe derivata da unittest.TestCase, non lo mostrerà automaticamente. Se stai usando nose.tools o semplici asserzioni, questo non lo offrirà automaticamente. Questo è probabilmente un bug.

+0

Questo ha un limite. Se il file in questione non ha importato l'unittest (usa nose.tools, o mock assert o qualcos'altro), allora pycharm non offrirà automaticamente questa opzione di esecuzione. –

+8

In PyCharm 4 troverai questa opzione in File -> Impostazioni -> Strumenti -> Strumenti integrati Python. Runner test predefinito = "Nosetests". – Zymotik

+0

Zymotik - quel "file" iniziale è in tutte le versioni –

2

Se è possibile vivere senza il programma di test grafico, è sufficiente creare una configurazione di esecuzione "Script Python" ed eseguire i test mentre vengono eseguiti dalla riga di comando.

L'unico modo per ottenere i test del naso lavorando con il test runner grafico, temo, è quello di hackerare helper/pycharm/utrunner.py dalla distribuzione PyCharm.

+2

Speriamo che quando viene rilasciato pycharm 1.1 puoi modificare la tua risposta. :) –