tutorial test karma jasmine karma-runner karma-jasmine

test - karma jasmine tutorial



Actualizando la versión de Jasmine usada en karma-jazmín (2)

Preguntas

Fondo

He instalado Karma y karma-jasmine usando Yeoman de la siguiente manera:

$ npm install -g generator-angular $ mkdir myapp && cd $_ $ yo angular

Dado que myapp/bower.json no myapp/bower.json Jasmine como uno de los paquetes frontales de Bower instalados, pero myapp/karma.conf.js enumeró a Jasmine como el marco de prueba predeterminado, me sorprendió que la grunt test del comando grunt test funcionara. (Los Gruntfile.js , bower.json y karma.conf.js se crearon todos como parte del proceso de andamiaje yo angular ).

Tras una inspección más cercana de los paquetes myapp/node_modules , me di cuenta de que el karma-jasmine no apunta a una instalación separada de Jasmine . El plugin karma-jasmine realmente instala Jasmine :

▼ myapp/ ▼ karma_jasmine/ ▼ lib/ adapter.js index.js jasmine.js

Dado que karma-jasmine dice que es un " adaptador para el marco de prueba de Jasmine ", me sorprendió un poco que karma-jasmine no requiriera que instalaramos Jasmine separado.

Versiones de paquete

Aquí están las diversas versiones de paquete utilizadas:

  • Karma : "~ 0.10.8" por contenido de myapp/package.json
  • karma-jasmine : "~ 0.1.4" por contenido de myapp/package.json
  • Yeoman : "1.0.6" por npm list -g | grep yo resultados del comando npm list -g | grep yo
  • Jasmine : Desconocida pero basada en algunos diffs, casi me pregunto si karma-jasmine incluye una versión personalizada de Jasmine para trabajar con Karma .

Es una mejor opción quedarse con la versión de jazmín en karma-jazmín y actualizar todo el paquete. Puede usar el siguiente comando para obtener la versión de todos los paquetes instalados:

npm ls

Para obtener la versión de los paquetes globales instalados:

npm ls -g

Para ver la última versión disponible en CDN, use:

npm view karma-jasmine version

Antes de actualizar, puede ver todas las versiones en el CDN usando:

npm view karma-jasmine versions

Para instalar una versión específica:

npm install karma-jasmine@~0.2.2

(0.2.2 es el último disponible).


Puede conocer la versión de jazmín que está utilizando ejecutando la siguiente especificación:

describe(''Test to print out jasmine version'', function() { it(''prints jasmine version'', function() { console.log(''jasmine-version:''); console.log(jasmine.version || (jasmine.getEnv().versionString && jasmine.getEnv().versionString())); }); });

y luego verificando el resultado del karma en su consola o navegador. Debería ser algo así como:

LOG: ''jasmine-version:'' LOG: ''2.3.4''

La biblioteca de jazmín está incluida en el plugin jasmine-runner como ya has descubierto. Puede encontrar el lugar exacto donde se carga este archivo en el código fuente del complemento: https://github.com/karma-runner/karma-jasmine/blob/master/lib/index.js (línea 7)

Puede intentar modificar el complemento para que sea posible una actualización y enviar una solicitud de extracción al karma (consulte http://karma-runner.github.io/0.10/dev/contributing.html )