libreoffice-online/cypress_test
Tamás Zolnai c4f66b32b7 mobile: Fix a console error triggered by a cypress test.
Now idea whether it happens in real life.

Change-Id: I172bf265dd2b8fdbc1d2759d8669bd90f9097336
2020-01-27 17:17:04 +01:00
..
data cypress: Make empty.odt test docs actually empty. 2020-01-26 06:42:53 +01:00
integration_tests mobile: Fix a console error triggered by a cypress test. 2020-01-27 17:17:04 +01:00
plugins cypress: Use eslint to check coding conventions during build. 2020-01-21 16:13:01 +01:00
.eslintignore cypress: Add node_modules to eslintignore 2020-01-24 09:30:48 +01:00
.gitignore cypress: Move plugins folder out of cypress subfolder 2020-01-21 16:13:01 +01:00
cypress.json cypress: Move general cypress options to cypress.json 2020-01-21 16:13:01 +01:00
Makefile.am cypress: Introduce an --enable-cypress config option. 2020-01-23 14:55:43 +01:00
package.json cypress: Use a better wait method for loolwsd server 2020-01-21 17:37:28 +01:00
README cypress: Update README 2020-01-23 14:55:50 +01:00

Cypress based test framework for LibreOffice Online
====================================================

Installation
------------------
In a normal desktop environment you only need to install npm
packages for running cypress tests. This is done by the build
system, so running 'make check' will do the basic installation.
https://docs.cypress.io/guides/getting-started/installing-cypress.html#npm-install

For CI you might need to install some additional dependencies:
https://docs.cypress.io/guides/guides/continuous-integration.html#Dependencies

Running tests
------------------

All tests are part of the make check build. So you can
just execute it from the root folder or under the
cypress_test folder to run cypress tests only.

    make check

To run cypress test cases selectively, you need to
go in to the cypress_test folder first and run one of
the following commands.

To run all desktop tests:

    make check-desktop

To run all mobile tests:

    make check-mobile

To run one specific test suit of desktop tests:

    make check-desktop spec=example_desktop_test_spec.js

To run one specific test suit of mobile tests:

    make check-mobile spec=toolbar_spec.js

To run one test case of a test suit you can use Mocha's
'only' feature. Just replace the it(...) function with
it.only(...) in the spec file for the selected test case
and run the test suit using the spec parameter (see above).
This 'only' feature affects both make check and make run
commands.

Openning interactive test runner
----------------------------------

Cypress has an interactive test runner application which
runs the test in the browser. So you can see the result of
the different steps your test makes in the browser. It's useful
during writing new tests or checking why an existing
test fails.
https://docs.cypress.io/guides/core-concepts/test-runner.html

To open desktop tests in the test runner:

    make run-desktop

To open mobile tests in the test runner:

    make run-mobile

During the build we run the tests with Chrome browser, so make sure
you select Chrome browser on the GUI while checking tests.
We are using different configuration and environment variables for
mobile and desktop tests, that's why there are two separate commands
for them and there is no option to open all the tests in the
test runner.