Шпаргалка по Cypress

Инсталляция

// Install Cypress via npm
npm install cypress --save-dev

Открыть тест-раннер

// Open Cypress Test Runner
npx cypress open

Открыть URL

// Visit a URL
cy.visit('https://www.example.com');

Получить элемент по его селектору

// Get an element by selector
cy.get('#elementId');

Вставить текст в поле

// Type text into an input field
cy.get('#inputId').type('text to type');

Кликнуть по веб-элементу

// Click on an element
cy.get('.buttonClass').click();

Assert текста элемента

// Assert an element's text
cy.get('.result').should('have.text', 'expected text');

Assert видимости элемента

// Assert an element's visibility
cy.get('.element').should('be.visible');

Assert значения атрибута

// Assert an element's attribute value
cy.get('.element').should('have.attr', 'attributeName', 'expectedValue');

Ожидание видимости элемента

// Wait for an element to be visible
cy.get('.element').should('be.visible');

Ожидание невидимости элемента

// Wait for an element to not be visible
cy.get('.element').should('not.be.visible');

Assert URL’а

// Assert the URL
cy.url().should('include', '/expected-url');

Assert тайтла страницы

// Assert the page title
cy.title().should('include', 'Expected Title');

iframes: переключение на, и действия с

// Working with iframes:
// Switch to an iframe
cy.iframe('.iframeClass').within(() => {
  // Perform actions within the iframe
  cy.get('.iframeElement').click();
});

Assertions и ожидания

// Assertions and expectations:
cy.get('.element').should('exist');
cy.get('.element').should('not.exist');
cy.get('.element').should('be.visible');
cy.get('.element').should('not.be.visible');
cy.get('.element').should('have.text', 'expected text');
cy.get('.element').should('have.attr', 'attributeName', 'expectedValue');
cy.get('.element').should('have.class', 'className');
cy.get('.element').should('have.value', 'expectedValue');

Выпадающие списки

// Working with dropdowns:
cy.get('.dropdown').select('optionValue');
cy.get('.dropdown').select('optionText');

Действия с чекбоксами и радиокнопками

// Interacting with checkboxes and radio buttons:
cy.get('.checkbox').check();
cy.get('.radio').check('optionValue');
cy.get('.checkbox').uncheck();

С клавиатурой

// Keyboard actions:
cy.get('.input').type('text');
cy.get('.input').type('{enter}');
cy.get('.input').type('{tab}');
cy.get('.input').type('{backspace}');

С мышой

// Mouse actions:
cy.get('.element').click();
cy.get('.element').dblclick();
cy.get('.element').rightclick();
cy.get('.element').trigger('mouseover');

Алерты

// Working with alerts:
cy.on('window:alert', (text) => {
  // Handle alert
});

Cookies

// Working with cookies:
cy.getCookie('cookieName').should('have.property', 'value', 'expectedValue');
cy.setCookie('cookieName', 'cookieValue');
cy.clearCookie('cookieName');

Сетевые запросы

// Handling network requests:
cy.intercept('GET', '/api/endpoint').as('alias');
cy.wait('@alias');

Кастомные команды

// Custom commands:
Cypress.Commands.add('customCommand', () => {
  // Custom command logic
});

cy.customCommand();

Источник

Здесь все шпаргалки, обучающие статьи, гайды-туториалы, инструменты и все что касается автоматизации. Поиск по каналу удобнее чем на сайте — между прочим

Какой была ваша первая зарплата в QA и как вы искали первую работу?

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

5 КОММЕНТАРИИ

Подписаться
Уведомить о
guest

5 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Игорь
Игорь
3 месяцев назад

откуда взялась команда cy.iframe? её же нет в cypress

Игорь
Игорь
3 месяцев назад
Ответить на  testengineer.ru

почему на официальном сайте cypress этого нет?

Игорь
Игорь
3 месяцев назад
Ответить на  testengineer.ru

т.е. нужно ставить плагин? в статье же нет ничего про доп установку плагина

Мы в Telegram

Наш официальный канал
Полезные материалы и тесты
Готовимся к собеседованию
Project- и Product-менеджмент

? Популярное

? Telegram-обсуждения

Наши подписчики обсуждают, как искали первую работу в QA. Некоторые ищут ее прямо сейчас.
Наши подписчики рассказывают о том, как не бояться задавать тупые вопросы и чувствовать себя уверенно в новой команде.
Обсуждаем, куда лучше податься - в менеджмент или по технической ветке?
Говорим о конфликтных ситуациях в команде и о том, как их избежать
$1100*
медианная зарплата в QA в июне 2023

*по результатам опроса QA-инженеров в нашем телеграм-канале

Собеседование

19%*
IT-специалистов переехало или приняло решение о переезде из России по состоянию на конец марта 2022

*по результатам опроса в нашем телеграм-канале

live

Обсуждают сейчас