Comment puis-je résoudre “ReferenceError: attendre n'est pas défini” message d'erreur?
Je suis en train de tester le Javascript avec moka. J'ai ce bout de code:
describe('Array', function() {
describe('indexOf()', function() {
it("dovrebbe tornare -1 quando l'elemento non è presente", function() {
expect([1,2,3].indexOf(4)).to.equal(-1)
})
})
})
et un test/array.js
fichier. Moka a été installé avec
$ npm install -g mocha
Quand je lance
$ mocha
J'obtiens cette erreur:
$ mocha
․
0 passing (5ms)
1 failing
1) Array indexOf() dovrebbe tornare -1 quando l'elemento non è presente:
ReferenceError: expect is not defined
at Context.<anonymous> (/Users/simonegentili/Desktop/Javascipt Best Practice/test/array.js:4:4)
at Test.Runnable.run (/usr/local/lib/node_modules/mocha/lib/runnable.js:211:32)
at Runner.runTest (/usr/local/lib/node_modules/mocha/lib/runner.js:358:10)
at /usr/local/lib/node_modules/mocha/lib/runner.js:404:12
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:284:14)
at /usr/local/lib/node_modules/mocha/lib/runner.js:293:7
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:237:23)
at Object._onImmediate (/usr/local/lib/node_modules/mocha/lib/runner.js:261:5)
at processImmediate [as _immediateCallback] (timers.js:317:15)
Vous devez vous connecter pour publier un commentaire.
Moka est un framework de test; vous devez fournir votre propre affirmation lib comme https://mochajs.org/#assertions unis. Ainsi,
expect
est en effet pas défini parce que vous n'avez jamais défini.(Je recommande chai)
puis
(voir Amit Choukroune commentaire indiquant réellement besoin chai)
puis
var expect...
bits ne fonctionne pas pour moi.var expect = require('chai').expect,
const chai = require('chai')
au-dessus d'elle.var expect = (typeof require === 'undefined') ? chai.expect : require('chai').expect;
si vous souhaitez exécuter un test de moka sur une page dans le navigateur.Essayer
Tout d'abord, dans le terminal
npm install expect.js
Et dans votre code:
Après l'installation de Chai que les autres postes de suggérer, avec l'es6 syntaxe, vous devez placer l'importation en haut
Installer Expect.js ou Chai.js si vous utilisez Moka pour le TDD
Donc, ne
npm install expect
ounpm install chai
Dans mon cas d'utilisation, j'ai été l'exécution d'un moka spec par
karma
. La solution a été d'installer le karma intégrations pour mon framework de test libs:...et aussi d'ajouter des cadres à mon
karma.conf.js
:Espère que cela aide quelqu'un d'autre.
Ajouter cette balise script dans le fichier html
ou installer le paquet