Difference between revisions of "7CC005 Workshop w6"

From mi-linux
Jump to navigationJump to search
Line 14: Line 14:
 
$ npm install --save-dev phantomjs
 
$ npm install --save-dev phantomjs
 
$ npm install --save-dev karma-phantomjs-launcher
 
$ npm install --save-dev karma-phantomjs-launcher
3. Change karma.conf.js
+
 
 +
== Change karma.conf.js ==
 +
 
 
// First change
 
// First change
 
require('karma-chrome-launcher') => require('karma-phantomjs-launcher')
 
require('karma-chrome-launcher') => require('karma-phantomjs-launcher')
 +
 
// Second change
 
// Second change
 
browsers: ['Chrome'] => browsers: ['PhantomJS']
 
browsers: ['Chrome'] => browsers: ['PhantomJS']
4. Install Quickstart App
+
 
 +
== Install Quickstart App ==
 
$ npm install
 
$ npm install
5. Run tests
+
 
 +
== Run tests ==
 
$ npm test
 
$ npm test
  
 +
== TypeError: undefined is not a function error ==
 +
 +
If you get this error:
 +
 +
<pre>
 
PhantomJS 2.1.1 (Linux 0.0.0) ERROR
 
PhantomJS 2.1.1 (Linux 0.0.0) ERROR
 
TypeError: undefined is not a function (evaluating 'System.config')
 
TypeError: undefined is not a function (evaluating 'System.config')
 
at karma-test-shim.js:30
 
at karma-test-shim.js:30
I have solved this issue appending system-polyfills.js to karma.conf.js:
+
 
 +
</pre>
 +
 
 +
Append system-polyfills.js to karma.conf.js:
 +
 
 +
<pre>
 
files: [
 
files: [
 
   // System.js for module loading
 
   // System.js for module loading
 
   'node_modules/systemjs/dist/system.src.js',
 
   'node_modules/systemjs/dist/system.src.js',
 
   'node_modules/systemjs/dist/system-polyfills.js',
 
   'node_modules/systemjs/dist/system-polyfills.js',
THEN IT WORKED.
+
</pre>

Revision as of 17:45, 28 February 2017

Main Page >> Web Technologies >> Workbook >> Week 07 - Automated Web Testing

This is how to get the QuickStart project to work with Karma and PhantomJS.

Clone the repository

$ git clone https://github.com/angular/quickstart.git
$ cd quickstart

Install phantomjs and phantomjs launcher

$ npm install --save-dev phantomjs $ npm install --save-dev karma-phantomjs-launcher

Change karma.conf.js

// First change require('karma-chrome-launcher') => require('karma-phantomjs-launcher')

// Second change browsers: ['Chrome'] => browsers: ['PhantomJS']

Install Quickstart App

$ npm install

Run tests

$ npm test

TypeError: undefined is not a function error

If you get this error:

PhantomJS 2.1.1 (Linux 0.0.0) ERROR
TypeError: undefined is not a function (evaluating 'System.config')
at karma-test-shim.js:30

Append system-polyfills.js to karma.conf.js:

files: [
  // System.js for module loading
  'node_modules/systemjs/dist/system.src.js',
  'node_modules/systemjs/dist/system-polyfills.js',