send/test
Danny Coates 1e62aa976d reimplemented l10n using dynamic import() (#1012)
this should greatly reduce the complexity of the l10n code
and build pipeline and eliminate the most common error
seen in sentry logs (no translate function)
2018-11-20 09:50:59 -05:00
..
backend made download count and expiry options server configurable 2018-09-24 15:08:39 -07:00
frontend formatting update 2018-11-16 12:39:36 -08:00
integration reimplemented l10n using dynamic import() (#1012) 2018-11-20 09:50:59 -05:00
.eslintrc.yml Ignore console statements in test/ directory because yolo 2017-07-23 00:06:24 -07:00
readme.md reimplemented l10n using dynamic import() (#1012) 2018-11-20 09:50:59 -05:00
testServer.js reimplemented l10n using dynamic import() (#1012) 2018-11-20 09:50:59 -05:00
wdio.circleci.conf.js cleaned up integration test flow 2018-10-04 15:06:39 -07:00
wdio.common.conf.js cleaned up integration test flow 2018-10-04 15:06:39 -07:00
wdio.docker.conf.js reimplemented l10n using dynamic import() (#1012) 2018-11-20 09:50:59 -05:00
wdio.local.conf.js cleaned up integration test flow 2018-10-04 15:06:39 -07:00
wdio.remote.config.js cleaned up integration test flow 2018-10-04 15:06:39 -07:00
wdio.saucelabs.config.js cleaned up integration test flow 2018-10-04 15:06:39 -07:00

Tests

To run all the tests use npm test. This will run the tests and produce a code coverage report at coverage/index.html. The full test suite is run as a hook on each git push. Mocha is our preferred test runner.

Frontend

Unit tests reside in test/frontend/tests.

Frontend tests can be ran in the browser by running npm start and then browsing to http://localhost:8080/test. Doing it this way will watch for changes and rerun the suite automatically.

You can also run them in headless Chrome by using npm run test:frontend. The results will be printed to the console.

Backend

Unit tests reside in test/backend

Backend test can be run with npm run test:backend. Sinon and proxyquire are used for mocking.

Integration

Integration tests include UI tests that run with Selenium.

The preferred way to run these locally is with npm run test-integration which requires docker. To watch the tests connect with VNC. On mac enter vnc://localhost:5900 in Safari and use the password secret to connect. For info on debugging a test see the wdio debug docs.