2024-02-22 18:56:13 +01:00
2024-02-22 12:06:07 +01:00
2024-02-22 18:56:13 +01:00
2024-02-22 18:55:47 +01:00
2024-02-19 18:44:06 +01:00
2024-02-22 18:55:47 +01:00
2024-02-19 17:56:22 +01:00
2024-02-22 18:56:13 +01:00
2023-11-20 18:40:35 +01:00
2024-02-22 18:53:53 +01:00
2024-02-22 18:53:53 +01:00
2024-02-20 18:18:32 +01:00
2024-02-22 18:56:13 +01:00

boilerplate-e2e-cypress-cucumber

The IT4C Boilerplate for End-to-End Testing with Cypress and Cucumber in Typescript

Requirements & Technology

To be able to build this project you need nodejs, npm and optional docker.

Commands

The following commands are available:

Command Description
npm install Project setup
Run Linter
npm run test:lint Run all linters
npm run test:lint:eslint Run linter eslint
Run Cypress
npm run cypress:open Open Cypress GUI
npm run cypress:run Run all Cypress tests headless in CLI
Documentation
npm run docs:dev Run Documentation in development mode
npm run docs:build Build static documentation

Docker

Docker can be run in development mode utilizing docker-compose.overwrite.yml:

docker compose up

Docker can be run in production mode:

docker compose -f docker-compose.yml up

Update

You can get a list of packes to update by running npm run update.

Appending -u will also update the packages in the package.json. You have to run npm install again after.

npm run update -- -u
npm install

How to use as part of a project

If you want to use this as part of a larger project, e.g. in conjunction with a frontend also utilizing a boilerplate you cannot use the template mechanic provided by github for this repository.

You can use the following commands to include the whole git history of the boilerplate and be able to update according to changes to this repo using another remote.

git remote add xxx_boilerplate_backend git@github.com:IT4Change/boilerplate-backend.git
git fetch xxx_boilerplate_backend
git merge -s ours --no-commit --allow-unrelated-histories xxx_boilerplate_backend/master
git read-tree --prefix=xxx/ -u xxx_boilerplate_backend/master
git commit -m "Imported boilerplate_backend as a subtree under xxx/."

To update the subtree you can use

git subtree pull -P xxx/ xxx_boilerplate_backend master
git commit -m "Updated boilerplate_backend in subtree under xxx/."

Where xxx refers to the folder and product part you want to use the boilerplate in. This assumes that you might need several copies of the frontend boilerplate for you product.

This mechanic was taken from this source

Database setup

The project is set up for a sqlite database. In order to run the project against a mysql database adjust prisma/schema.prisma, copy the .env.dist file to .env and configure the database connection appropriately. Then run npm run db:migrate to generate the database. It might be required to delete the migration folder beforehand.

License

Apache 2.0

Description
A boiler plate for end-to-end testing with Cypress and Cucumber in Typescript
Readme Apache-2.0 48 MiB
Languages
JavaScript 62.7%
TypeScript 35%
Gherkin 2.3%