[英]How integrate mocha test file with webpack process?
我有一個想為其編寫測試的JS類。 我安裝了摩卡咖啡。 在項目根目錄中創建了文件test.js
我現在可以像這樣在其中進行測試
var assert = require('assert');
describe('Arithmetic', function() {
describe('Plus', function() {
it('1 + 1 equals 2', function() {
assert.equal(1+1, 2);
});
});
});
都好! 我不確定的是如何測試我的文件,因為它包含很多ES6內容。 例如,諸如import someDependency from 'resources/assets/js/someDependencyToMyClass';
我該如何做才能使mocha知道我的package.json / webpack進程? 還是應該只測試代碼的編譯版本?
另外,如有必要,這是我的項目package.json。
{ "private": true, "scripts": { "dev": "npm run development", "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch-poll": "npm run watch -- --watch-poll", "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js", "prod": "npm run production", "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" }, "devDependencies": { "axios": "^0.17", "babel-preset-react": "^6.23.0", "cross-env": "^5.1", "jquery": "^3.2", "laravel-mix": "^1.0", "lodash": "^4.17.4", "mocha": "^5.0.0", "react": "^15.4.2", "react-dom": "^15.4.2", "testing": "^1.1.1" }, "dependencies": { "bootstrap": "^4.0.0", "popper.js": "^1.12.9", "react-redux": "^5.0.6", "redux": "^3.7.2" } }
您可能想引入mocha-webpack
( https://github.com/zinserjan/mocha-webpack ),以便根據您的webpack配置預編譯代碼。 然后,您可以在package.json
簡單地創建一個測試腳本,指向您的webpack配置,如下所示:
"scripts": { "test": "mocha-webpack --webpack-config=webpack.config.js tests/*.js" }
。
然后運行npm test
將正確地預編譯您的代碼。 希望它為您指明了正確的方向。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.