A Karma egy tesztfuttató fejlesztői környezet.
Globális teleptés:
npm install -g karma-cli
mkdir app01 cd app01 npm install karma --save-dev npm install karma-chrome-launcher --save-dev npm install karma-jasmine --save-dev
Interaktív program indítása a futtató beállításkonfiguráció-fájl készítéséhez.
karma init
$ karma init Which testing framework do you want to use ? Press tab to list possible options. Enter to move to the next question. > jasmine Do you want to use Require.js ? This will add Require.js plugin. Press tab to list possible options. Enter to move to the next question. > no Do you want to capture any browsers automatically ? Press tab to list possible options. Enter empty string to move to the next question. > Chrome > What is the location of your source and test files ? You can use glob patterns, eg. "js/*.js" or "test/**/*Spec.js". Enter empty string to move to the next question. > tests/**/*.js 01 09 2021 19:42:48.223:WARN [init]: There is no file matching this pattern. > Should any of the files included by the previous patterns be excluded ? You can use glob patterns, eg. "**/*.swp". Enter empty string to move to the next question. > Do you want Karma to watch all the files and run the tests on change ? Press tab to list possible options. > yes
Minden maradhat alapértelmezés, de a tesztek helyét meg kell adnunk. Például:
> tests/**/*.js
describe('Első teszt', function(){ it('Egyszerűen true értéket várunk', function(){ var actual = true; expect(actual).toBe(true); }) })
A teszt indítása:
karma start karma.conf.js
A karma.conf.js az alapértelmezés, elhagyható:
karma start
A tesztek böngészőben futnak, de parancssorban látjuk az eredményt.
A tesztelendő fájlok helyét megadhatjuk a „karma init” futtatása soron, vagy utólag szerkeszthetjük a karma.conf.js fájlt.
Háromféle lehetőség:
files: [ 'test/**/*spec.js' ],
files: [ { pattern: 'test/*.spec.js', included: true } ],
files: [ 'test/test01.spec.js' ],