Dashboard e2e tests in CI
This is a very large issue.
General steps:
- Set up a cypress framework for running tests against the dashboard. #138 (closed)
- Run tests from Stackspin CI. stackspin#1536 (closed)
-
Run tests in the dashboard CI. This is harder, because it requires some other components to function: single-sign-on-database, hydra, kratos at least. It also requires a cluster to install on, but we could re-use
gitlab.stackspin.net
which we already use for nextcloud in the same way.
Some possibilities of tests:
- Check that the documentation link is visible.
- Test the "Configure profile" modal a bit.
- Test the "Authentication settings" page a bit, i.e., the Kratos settings.
- In particular, enable TOTP and test logging in with TOTP, using cypress-otp.
- Check that some app tile is visible on the landing page. This is not trivial because we should make sure that that app is installed first if necessary.
- Test that the module menu items are visible. Ideally do this separately as admin and non-admin user because the results are different.
- Check that the Users module shows some user in the listing.
- Open a user configuration modal and check that some field in there is populated.
- Test creating a new user.
- Check that the Apps module shows some apps. Again this needs the app to be installed first.