Created
September 13, 2017 14:26
-
-
Save GelmanDan/377016b9a28021a970e43ba00d7f8de8 to your computer and use it in GitHub Desktop.
webpack&jasmine&karma install
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| module.exports = function(config) { | |
| config.set({ | |
| //root path location to resolve paths defined in files and exclude | |
| basePath: '', | |
| //files/patterns to exclude from loaded files | |
| exclude: [], | |
| //files/patterns to load in the browser | |
| files: [ | |
| {pattern: 'app/*.js', watched:true, served:false, included:false, nocache:false}, | |
| {pattern: 'spec/*.js',watched:true,served:true,included:true} | |
| /*parameters*/ | |
| //watched: if autoWatch is true all files that have set watched to true will be watched for changes | |
| //served: should the files be served by Karma's webserver? | |
| //included: should the files be included in the browser using <script> tag? | |
| //nocache: should the files be served from disk on each request by Karma's webserver? | |
| /*assets*/ | |
| //{pattern: '*.html', watched:true, served:true, included:false} | |
| //{pattern: 'images/*', watched:false, served:true, included:false} | |
| ], | |
| //executes the tests whenever one of watched files changes | |
| autoWatch: true, | |
| //if true, Karma will run tests and then exit browser | |
| singleRun:false, | |
| //if true, Karma fails on running empty test-suites | |
| failOnEmptyTestSuite:false, | |
| //reduce the kind of information passed to the bash | |
| logLevel: config.LOG_WARN, //config.LOG_DISABLE, config.LOG_ERROR, config.LOG_INFO, config.LOG_DEBUG | |
| //list of frameworks you want to use, only jasmine is installed automatically | |
| frameworks: ['jasmine'], | |
| //list of browsers to launch and capture | |
| browsers: ['Chrome'/*,'PhantomJS','Firefox','Edge','ChromeCanary','Opera','IE','Safari'*/], | |
| //list of reporters to use | |
| reporters: ['mocha','kjhtml'/*,'dots','progress','spec'*/], | |
| //address that the server will listen on, '0.0.0.0' is default | |
| listenAddress: '0.0.0.0', | |
| //hostname to be used when capturing browsers, 'localhost' is default | |
| hostname: 'localhost', | |
| //the port where the web server will be listening, 9876 is default | |
| port: 9876, | |
| //when a browser crashes, karma will try to relaunch, 2 is default | |
| retryLimit:0, | |
| //how long does Karma wait for a browser to reconnect, 2000 is default | |
| browserDisconnectTimeout: 5000, | |
| //how long will Karma wait for a message from a browser before disconnecting from it, 10000 is default | |
| browserNoActivityTimeout: 10000, | |
| //timeout for capturing a browser, 60000 is default | |
| captureTimeout: 60000, | |
| client: { | |
| //capture all console output and pipe it to the terminal, true is default | |
| captureConsole:false, | |
| //if true, Karma clears the context window upon the completion of running the tests, true is default | |
| clearContext:false, | |
| //run the tests on the same window as the client, without using iframe or a new window, false is default | |
| runInParent: false, | |
| //true: runs the tests inside an iFrame; false: runs the tests in a new window, true is default | |
| useIframe:true, | |
| jasmine:{ | |
| //tells jasmine to run specs in semi random order, false is default | |
| random: false | |
| } | |
| }, | |
| /*karma-webpack config*/ | |
| preprocessors: { | |
| //use webpack to support require() in test-suits .js files | |
| //use babel-loader from webpack to compile es2015 features in .js files | |
| //add webpack as preprocessor | |
| './tests/*.js': ['webpack'] | |
| }, | |
| webpackMiddleware: { | |
| //turn off webpack bash output when run the tests | |
| noInfo: true, | |
| stats: 'errors-only' | |
| }, | |
| /*karma-mocha-reporter config*/ | |
| mochaReporter: { | |
| output: 'noFailures' //full, autowatch, minimal | |
| } | |
| }); | |
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| npm install webpack-karma-jasmine | |
| npm install webpack-babel-loader |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| module: { | |
| rules: [ | |
| { | |
| test: /\.js$/, | |
| exclude:/(node_modules)/, | |
| loader:"babel-loader", | |
| query:{ | |
| presets:["env"] | |
| } | |
| } | |
| ] | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment