План на курса
Ден 1 – Въведение и основи
Въведение
- Ролята на Cypress в пирамидата за тестване
- Настройка на околната среда за автоматизирано тестване (Node LTS, npm)
- Създаване на минимален проект с Cypress
- Първият "smoke" тест в режим на графичен интерфейс и без главно прозорче (headless mode)
Основни концепции
- Фундаментални основи на Cypress, ред на командите, автоматична проба
- Използване на хуки: before, beforeEach, afterEach, after
- Псевдоними и повторно използване (.as(), cy.get('@alias'))
API (Контракт) Тестване
- Прякото API тестване с Cypress (cy.request())
- Моделиране на API с cy.intercept() за гранични случаи
- Гарантиране на стабилността при интеграцията между фронтенда и бекенда
Потребителски команди на Cypress
- Организация на повтарящи се действия (вход, навигация) в потребителски команди
- Чист и поддържам код с повторно използване (cy.login())
Расписание: теория + демонстрация + ръчни упражнения Присъствени: основно знание на JavaScript, VSCode, Git
Ден 2 – Напреднали практики и CI/CD
Построяване на комплексни тестове
- Автоматизиране на цели потребителски процеси
- Контрол на състоянията с cy.intercept и cy.session
- Избягване на нестабилни тестове, подобряване на стабилността и скоростта
Тестуване с данни
- Съхраняване на тестови данни в JSON файлове (fixtures)
- Параметризираните тестове, които изпълняват същата логика с различни входни параметри
Плагини на Cypress
- Съобщения: mochawesome, allure-cypress, junit-reporter
- Взаимодействия: cypress-file-upload, cypress-real-events
- Достъпност: cypress-axe, cypress-audit
- Визуална регресия: cypress-image-snapshot
- Поддържаемост: @testing-library/cypress, cypress-plugin-tab
CI/CD с Cypress
- Интеграция с GitHub Actions
- Настройка на околната среда Node.js и Cypress, изпълнение в без Главно прозорче (headless mode)
- Автоматично изпълнение на тестовете при push/PR
- Безопасна обработка на секретни данни
Резюме и заключение
Изисквания
- Разбирање на софтуерното тестване
Целева група
- Софтуерни тествери
Отзиви от потребители (3)
Търпението и темпото на лектора.
Jace - Vodacom
Курс - Test Automation with Selenium
Машинен превод
Ключовите теми могат да бъдат обсъjudени и споразумени предварително с треньора. Успокояваща и приятна атмосфера по време на семинарните дни.
Lorenz - Continentale Lebensversicherung AG
Курс - Advanced Selenium
Машинен превод
Придобих нови познания и съм доста уверен в тях. Ничего не ми е непонятно.
Barbara - Titian Software Poland Sp. z o.o.
Курс - Selenium WebDriver in C#
Машинен превод