send/test
Danny Coates 1e62aa976d reimplemented l10n using dynamic import() ()
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() () 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() () 2018-11-20 09:50:59 -05:00
testServer.js reimplemented l10n using dynamic import() () 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() () 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.