Login Sign Up
Advert
Your ad spot
Reserve this exclusive slot for the selected period.
Buy advertising →
Telegram community logo - QA Co-pilot
Added 06 Dec 2025

QA Co-pilot

@qa_copilot
Number of subscribers: 94
Photos: 298
Links: 47
Description:
QA Co-pilot 🚀 Ваш другий пілот у світі тестування. 👨‍💻 Для кого: Для тестувальників-практиків, які хочуть рости. 🎯 Про що: Делегуємо рутину нейромережам, прискорюємо роботу та звільняємо час на головне. ❌ Чого тут немає: Нудної теорії та води.
Source

QA Co-pilot | Ультимативна Шпаргалка: Ієрархія локаторів (від крихких до куленепроби...

Telegram community logo - QA Co-pilot QA Co-pilot @qa_copilot
26 Views/Reach 2026-06-24 13:20 Message №334
📝 Ультимативна Шпаргалка: Ієрархія локаторів (від крихких до куленепробивних)Скільки разів ваші автотести ставали "червоними" просто тому, що фронтендер змінив колір кнопки або обгорнув її в новий <div>?Сьогодні розбираємо піраміду локаторів для Playwright/Cypress. Збережіть це, щоб більше ніколи не витрачати години на фікси впавших селекторів. ☕️🔴 Рівень 1: Шлях у нікуди (CSS класи та XPath) Приклади: xpath=/html/body/div[2]/button або .btn.btn-primary.mt-2Чому це сміття: Вони прив'язані до візуального стилю або структури DOM. Верстальник перейменував клас або додав обгортку — ваш тест вмер. Використовувати тільки під дулом пістолета. 🟡 Рівень 2: Ілюзія надійності (ID елементів) Приклади: #submit-order-btnЧому це не ідеал: Звучить добре, але в сучасних фреймворках ID часто генеруються динамічно, щоб уникнути конфліктів. Плюс, розробники часто забувають робити їх унікальними на сторінці. 🟢 Рівень 3: Золотий стандарт тестувальника (Data-атрибути) Приклади: [data-testid="submit-order"] або [data-qa="login-button"]Чому це круто: Ці атрибути додаються виключно для QA. Дизайнер може повністю перемалювати сторінку, змінити теги та стилі, але data-testid залишиться на місці. Це ваш залізобетонний контракт із фронтенд-командою. 👑 Рівень 4: Рівень Архітектора (Accessibility / ARIA) Приклади: getByRole('button', { name: 'Оплатити' })Чому це топ: Це підхід сучасного Playwright. Користувач не шукає очима data-testid. Він шукає сутність "Кнопка" з текстом "Оплатити". Тестуючи через Accessibility (ролі), ви перевіряєте не просто наявність елемента, а те, чи правильно він доступний для користувачів (і скрінрідерів). Золоте правило: Якщо ви не можете знайти елемент через getByRole або getByText, вимагайте у розробників додати data-testid. Ніколи не прив'язуйтесь до CSS-класів!За що чіпляються ваші тести? 👇🔥 — Тільки data-testid або getByRole, мої тести куленепробивні!👀 — Пишу через класи (.button-active), страждаю під час кожного релізу.🤯 — Щойно скопіював XPath із DevTools на 5 рядків... Допоможіть!