send/test/readme.md
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

1.2 KiB

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.