* downgraded cypress, updated package * Fixed language test * Fix language test * Fixed routing tests to wait for popup * Publish test artifacts * Added better element to wait on * Fix routing tests for linux * Fix language tests on linux * Stablize tabs tests * Implement waiting for inner tree like in content tests * Assert that we are in settings section so we dont click an element that doesnt exist * Fixed rollback by not doing cy.reload() * Fix language test with correct wait * Stabilize dataTypes by moving API Call, and stabilize systemInformation.ts test by waiting for success notification * Fix dataTypes, tabs and template tests * Update node to newer version in package-lock.json and fix template test * Implemented cy.wait to test if it is because we are too fast * Added comments * Bigger wait * Try another wait instead of magic numbers Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
Umbraco Acceptance Tests
Prerequisites
- NodeJS 12+
- A running installed Umbraco on url: https://localhost:44331 (Default development port)
- Install using a
SqlServer/LocalDbas the tests execute too fast forSqlCEto handle.
- Install using a
Getting started
The tests are located in the project/folder as Umbraco.Tests.AcceptanceTests. Make sure you run npm install in that folder, or let your IDE do that.
The script will ask you to enter the username and password for a superadmin user of your Umbraco CMS.
Executing tests
There are two npm scripts that can be used to execute the test:
npm run test- Executes the tests headless.
npm run ui- Executes the tests in a browser handled by a cypress application.
In case of errors it is recommended to use the UI to debug.
Enviroment Configuration
The enviroment configuration is begin setup by the npm installation script.
This results in the creation of this file: cypress.env.json.
This file is already added to .gitignore and can contain values that are different for each developer machine.
The file has the following content:
{
"username": "<email for superadmin>",
"password": "<password for superadmin>"
}
You can change this if you like or run the config script to reset the values, type "npm run config" in your terminal.