PhpStorm și Mocha pentru Vue

PhpStorm și Mocha pentru Vue

Azi am petrecut aproape două ore încercând să fac un lucru extrem de complex: să conving PhpStorm să ruleze testele de JS. Scopul era să pot rula fiecare test individual la click:

Configurarea e simplă: Run -> Edit configuration, adaugi un Mocha cu următoarele configurări:

Mocha package:

PROJECT_PATH\node_modules\mocha-webpack

Extra Mocha options:

--webpack-config=PROJECT_PATH\node_modules\laravel-mix\setup\webpack.config.js --require PROJECT_PATH\tests\JS\setup.js

PROJECT_PATH este calea absolută a proiectului.

Ai putea crede că asta e tot. Doar că nu, trebuie să editezi valorile astea în Templates:

De ce am pierdut atât de mult timp? Pentru că în toate ferestrele cu setări din editor există șmecheria asta „for current project”:

Dar la run/debug? Nu era. Și nu modificam, că nu voiam să bușesc editorul.

Și înainte să spui că „hai mă, nu ai cum să bușești editorul”, gândește-te că ăsta e singurul editor care îți permite să dezactivezi toate plugin-urile. Și care a implementat functionalități vitale ca plugin-uri. Nu știu dacă îți dai seama ce înseamnă treaba asta de fapt, dar dacă nu te prinzi, îți zic eu: poți dezactiva plugin-urile și să te trezești cu un editor care nu mai pornește.


Instalezi deps:

npm i expect jsdom jsdom-global mocha mocha-webpack vue-test-utils --save-dev

În setup.js ai:

require( 'jsdom-global')();

Opțional, dacă vrei să rulezi testele și în CLI, poți adăuga în package.json:

"scripts": {
    "test": "mocha-webpack --webpack-config=node_modules/laravel-mix/setup/webpack.config.js --require tests/JS/setup.js tests/JS/**/*.spec.js"
}

Adaugă un comentariurăspuns pentru

Poți adăuga bucăți de cod folosind [code]codul tău aici[/code], [js][/js], [php][/php] etc.

Link-urile în context sunt binevenite. Comentariile fără nume/email valid sunt șterse.
PS: Comentariul NU este editabil.

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.

Site-ul blog.iamntz.com utilizează cookie-uri. Continuarea navigării presupune acceptarea lor. Mai multe informații.

windows apple dropbox facebook twitter