2015-09-13 27 views
12

Ho installato Naso su Mac OSX 10.10.5 con Python2.7.9 utilizzando easy_install. L'installazione è apparso per avere successo:Naso installato ma non può essere utilizzato sulla riga di comando

Collecting nose 
    Downloading nose-1.3.7-py2-none-any.whl (154kB) 
    100% |████████████████████████████████| 155kB 2.3MB/s 
Installing collected packages: nose 
Successfully installed nose-1.3.7 

Ma ora, quando provo anche roba di base con nosetests sulla riga di comando, come nosetests -h o which nosetests ottengo solo:

bash: nosetests: command not found 

Ho provato a disinstallare, la reinstallazione con pip, ha provato l'installazione con sudo e quindi l'esecuzione di sudo nostests nelle directory con script di test come suggerito da altri post, ma nulla sembra funzionare.

Lo scopo originale per l'installazione era utilizzare nose per eseguire alcuni test di base con script di test che avevo scritto per queste semplici app web.py. Ma niente funziona, continua a ricevere la risposta command not found.

Cosa c'è di strano è che, quando apro l'interprete Python in Terminal, e fare qualcosa di simile:

import nose 
nose.main() 

ottengo il risultato atteso:

. 
---------------------------------------------------------------------- 
Ran 1 test in 0.135s 

OK 

Così chiaramente la sua installazione. ...da qualche parte. Qualche suggerimento su cosa diavolo sta succedendo qui?

+0

Prova 'nosetests-2.7'. –

+1

@RolandSmith Ho appena provato 'nosetests-2.7 -h' e sto ancora ottenendo:' zsh: comando non trovato: nosetests-2.7' – AdjunctProfessorFalcon

+0

Penso che il comando 'nosetests' dovrebbe essere in/usr/local/bin'. Questa parte del tuo '$ PATH' in' zsh'? –

risposta

7

Sui sistemi UNIX-like come OS X, lo script dovrebbe essere in /usr/local/bin. Assicurati che la directory sia nella variabile di ambiente PATH nella shell che usi.

In caso contrario, è anche possibile individuarlo utilizzando find, per esempio:

find/-type f -name 'nosetests*' -perm +111 -print -quit 

Ciò significa; cercare un file il cui nome inizia con nosetests, che ha impostato le autorizzazioni di esecuzione. Stampa il nome del percorso e fermati.

+0

Grazie per il comando, sembra che sia ritornato:' /Library/Frameworks/Python.framework/Versions/2.7/bin/nosetests 'Sapendo che, come dovrei adattare il mio approccio all'utilizzo del comando Nosetests? – AdjunctProfessorFalcon

+2

Aggiungi '/ Library/Frameworks/Python.framework/Versions/2.7/bin /' al tuo 'PATH'. Come/dove farlo dipende dalla shell che usi. –

+0

Grazie per l'aiuto! C'è una soluzione alternativa in modo che quando sono in una directory di progetto non devo usare questo lungo percorso di file per utilizzare Nosetests? Impostare PYTHONPATH = su qualcosa quando sono nella directory funziona? – AdjunctProfessorFalcon

0

In primo luogo, è possibile eseguire "python" dalla riga di comando? nosetests dovrebbero essere nella stessa directory:

rich bin $ which python 
/home/rich/anaconda/bin/python 
rich bin $ which nosetests 
/home/rich/anaconda/bin/nosetests 

Dovrebbe anche essere nel pacchetto naso scaricato:

rich bin $ find /home/rich/anaconda -name nosetests 
/home/rich/anaconda/pkgs/nose-1.3.3-py27_0/bin/nosetests 
/home/rich/anaconda/pkgs/nose-1.3.7-py27_0/bin/nosetests 
/home/rich/anaconda/bin/nosetests 
+0

Sì, posso sicuramente eseguire python dalla riga di comando. Quando eseguo 'which python' ottengo:'/usr/local/bin/python' ma come ho accennato nel mio post, non posso eseguire 'which nosetests' – AdjunctProfessorFalcon

2

ho trovato che andare a

Library/usr/bin 

e funzionante

sudo easy_install nose 

sembra che a volte non si installa automaticamente il naso (e quindi nosetests funzionalità). Fai le linee precedenti e dovresti essere a-ok.

Vorrei avere una spiegazione migliore del perché questo è successo, ma sono ancora piuttosto nuovo, me stesso.

15

Si sono verificati numerosi errori durante l'utilizzo dei pacchetti di installazione pip in Mac OS. Quindi ti consiglio di installare nose usando easy_install.

$ pip uninstall nose

$ sudo easy_install nose

allora si può provare nosetests ora :)

8

ho avuto questo problema esatto su OS X EI capitano con Python 2.7.10.

Per prima cosa ho installato naso utilizzando pip:

$sudo pip install nose 

che non è riuscito al primo tentativo. Sono andato al secondo tentativo. Ma il comando nosetests non ha funzionato.

Al fine di risolvere questo problema:

Fase 1: Non disinstallare naso se è stato installato già utilizzando pip come nel mio caso.

Fase 2:

$cd /usr/bin 

$sudo easy_install nose 

Sopra comando trova lo script nosetests (che è stato installato da pip prima) & imposta sotto /usr/local/bin

Step 3: Try nosetests 

$nosetests 

---------------------------------------------------------------------- 
Ran 0 tests in 0.047s 

OK