https://github.com/levvolkov/dashboard-cypress-swagger
7. «Cypress 2»
https://github.com/levvolkov/dashboard-cypress-swagger
automated-testing-of-web-interfaces cypress cypress-dashboard swagger swagger-api
Last synced: about 1 year ago
JSON representation
7. «Cypress 2»
- Host: GitHub
- URL: https://github.com/levvolkov/dashboard-cypress-swagger
- Owner: levvolkov
- Created: 2024-07-23T09:31:44.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-07-23T11:13:47.000Z (over 1 year ago)
- Last Synced: 2025-01-07T15:21:30.891Z (about 1 year ago)
- Topics: automated-testing-of-web-interfaces, cypress, cypress-dashboard, swagger, swagger-api
- Language: JavaScript
- Homepage:
- Size: 7.81 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://cloud.cypress.io/projects/tfwkz8/runs)
# Домашнее задание к занятию «7. Cypress 2»
--------------------
## Что сделано:
* Написаны spec-тесты для проверки логина в админку.
* Написаны spec-тест с UI-тестом для бронирования фильма в доступный зал, название которого получено из админки.
* Написан набор тестов на работу серверного API.
* Добавлены фикстуры для хранения данных необходимых для тестов.
* Подключен Cypress Cloud [Dashboard](https://cloud.cypress.io/projects/tfwkz8/runs?branches=%5B%5D&committers=%5B%5D&flaky=%5B%5D&page=1&status=%5B%5D&tags=%5B%5D&tagsMatch=ANY&timeRange=%7B%22startDate%22%3A%222023-07-24%22%2C%22endDate%22%3A%222024-07-23%22%7D).
---------------------
## Задача 1. Cypress. Установка и настройка проекта
1. Изучите [приложение](https://github.com/Evgeniy-Varlamov/FS21-diplom) для работы с бронирование билетов в кино.
2. Приложение в процессе разработки, и многие функциональности ещё не готовы. Вы можете тестировать бронирование билетов, логин в админку.
3. Создайте новый проект для тестов на Cypress.
4. Создайте:
- spec-тест с тестами для проверки корректности отображения главной страницы;
- spec-тест для проверки логина в админку. Используйте фикстуру для хранения тестовых данных: минимум 2 набора — happy и sad path;
- spec-тест с UI-тестом для бронирования фильма в доступный зал, название которого вы получаете из админки.
1. Сделайте рефакторинг кода так, чтобы данные обо всех селекторах хранились в фикстурах.
2. Пришлите ссылку на репозиторий в качестве результата выполнения домашнего задания
* Не забывайте заводить issue в случае отклонений в поведении системы как приложения, так и в реализации тестов. Если технически невозможно реализовать тест по какой-либо причине, то добавьте issue, оставьте тест падающим. Тест должен присутствовать.
## Задача 2. Подключение Dashboard
1. Поключите ваш проект к Dashboard. Помните, что он будет иметь уникальные идентификаторы.
2. Запустите тесты так, чтобы результаты отображались на Dashboard.
3. Настройте публичный доступ к вашему проекту и пришлите ссылку на ваш Dashboard, как результат здания.
## Задача 3. Интеграционные тесты
1. Создайте новый проект с test suite (используйте `describe()`) с API-тестами для [проекта](https://petstore.swagger.io/#/).
В вашем наборе должны быть тесты для проверки:
- создания пользователя;
- правки пользователя;
- удаления пользователя.
Тесты должны быть независимыми друг от друга и выполняться в любом порядке. Рекомендуем использовать кастомные команды, так как вам придётся повторять одни и те же предусловия для разных тестов.
2. Поключите ваш проект к Dashboard. Помните, что он будет иметь уникальные идентификаторы.
3. Запустите тесты так, чтобы результаты отображались на Dashboard.
4. Настройте публичный доступ к вашему проекту и пришлите ссылку на ваш Dashboard, а также репозитарий с API тестами, как результат задания.
**Важно: не забывайте про использование принципа DRY везде, где это необходимо.**