ci - split integration tests into parallel firefox and chrome runs

feature/default_network_editable
kumavis 7 years ago
parent ddc85354d3
commit 74502296ed
  1. 58
      .circleci/config.yml
  2. 4
      test/base.conf.js

@ -15,12 +15,20 @@ workflows:
- test-unit:
requires:
- prep-deps-npm
- test-integration-mascara:
- test-integration-mascara-chrome:
requires:
- prep-deps-npm
- prep-scss
- test-integration-mascara-firefox:
requires:
- prep-deps-npm
- prep-deps-firefox
- prep-scss
- test-integration-flat:
- test-integration-flat-chrome:
requires:
- prep-deps-npm
- prep-scss
- test-integration-flat-firefox:
requires:
- prep-deps-npm
- prep-deps-firefox
@ -99,7 +107,9 @@ jobs:
name: test:coverage
command: npm run test:coverage
test-integration-flat:
test-integration-flat-firefox:
environment:
browsers: ["Firefox"]
docker:
- image: circleci/node:8-browsers
steps:
@ -125,7 +135,28 @@ jobs:
name: test:integration:flat
command: npm run test:flat
test-integration-mascara:
test-integration-flat-chrome:
environment:
browsers: ["Chrome"]
docker:
- image: circleci/node:8-browsers
steps:
- checkout
- restore_cache:
key: dependency-cache-{{ checksum "package-lock.json" }}
- run:
name: Get Scss Cache key
# this allows us to checksum against a whole directory
command: find ui/app/css -type f -exec md5sum {} \; | sort -k 2 > scss_checksum
- restore_cache:
key: scss-cache-{{ checksum "scss_checksum" }}
- run:
name: test:integration:flat
command: npm run test:flat
test-integration-mascara-firefox:
environment:
browsers: ["Firefox"]
docker:
- image: circleci/node:8-browsers
steps:
@ -150,3 +181,22 @@ jobs:
- run:
name: test:integration:mascara
command: npm run test:mascara
test-integration-mascara-chrome:
environment:
browsers: ["Chrome"]
docker:
- image: circleci/node:8-browsers
steps:
- checkout
- restore_cache:
key: dependency-cache-{{ checksum "package-lock.json" }}
- run:
name: Get Scss Cache key
# this allows us to checksum against a whole directory
command: find ui/app/css -type f -exec md5sum {} \; | sort -k 2 > scss_checksum
- restore_cache:
key: scss-cache-{{ checksum "scss_checksum" }}
- run:
name: test:integration:mascara
command: npm run test:mascara

@ -46,7 +46,9 @@ module.exports = function(config) {
// start these browsers
// available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
browsers: ['Chrome', 'Firefox'],
browsers: process.env.browsers ?
JSON.parse(process.env.browsers)
: ['Chrome', 'Firefox'],
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits

Loading…
Cancel
Save