valor recorrer lista diccionarios diccionario dentro declaracion crear comparar como buscar python nose

recorrer - ¿Cómo hacer pruebas en el uso de python3?



lista dentro de un diccionario python (4)

Trato de hacer nosetests
❯ pruebas ''/ pathTo / test''

pero usa python 2.7 para mis pruebas:

sys.version_info(major=2, minor=7, micro=5, releaselevel=''final'', serial=0)

Así que algunos de ellos fallan, porque fueron escritos en python 3.3 .

Trabajo y entorno virtual instalado:

pyvenv-3.3 py3env

Activado:

source ~/py3env/bin/activate

Compruebe la virsión de Python en un entorno virtual:

❯ python --version ⏎ Python 3.3.3 (py3env)

De acuerdo. Sin embargo, nosetest aún usa python2.7 incluso en un entorno virtual:

sys.version_info(major=2, minor=7, micro=5, releaselevel=''final'', serial=0)

Así que mis pruebas fallan. ¿Cómo hacer que la nariz use python3?


En Python 3.4 y versiones superiores: con el fin de hacer uso de la nariz python3 simplemente ejecute ...

python3 -m "nose"

... en el directorio de destino con las pruebas.

Las configuraciones del entorno no son necesarias.


Encontré la forma de utilizar las pruebas de red con python3 sin entorno:

cd /Library/Frameworks/Python.framework/Versions/3.3/bin

Y entonces:

❯ nosetests-3.3 ''/folder/with/tests''

nosetests-3.3 utiliza python 3

Eso es.

Y si quiere usar el comando nosetests lugar de nosetests-3.3 , agregue ~/.bash_profile :

nosetests() { /Library/Frameworks/Python.framework/Versions/3.3/bin/nosetests-3.3 $1 }

Ahora puedes usar:

nosetests ''/folder/with/tests''

desde cualquier directorio. Utiliza python3 .


Esto no es un problema virtualenv tanto como un problema de Linux.

Esto significa que cuando usa el comando nosetests de la terminal, linux busca dentro de sus rutas disponibles ( /bin , /sbin , o lo que sea que sea) para un archivo ejecutable de este tipo.

Tu nosetests global de python 2 se encuentra primero y se ejecuta.

Tu prueba nosetests python3 nosetests está más adelante en la lista de rutas disponibles y, por lo tanto, nunca se ha alcanzado.

Yo sugeriría que solo instale nose o cualquier otro comando de Python por entorno virtual.


Instalar:

sudo apt-get install python-nose python3-nose

Correr:

nosetests-2.7 ; nosetests3

Esto ejecuta el conjunto de pruebas tanto en PY2 como en PY3.