Задайте потрібний стан прапорця.
Використовуйте бажаний стан для результату, а перемикання перевіряйте окремо.

Перекладне видання. Технічні ідентифікатори залишаються в оригінальній формі.

Налаштування вже увімкнене перед тестом. Клік для увімкнення його вимикає. Автор скопіював жест без початкового стану. Назвіть потрібний перехід або кінцеве значення.
Посібник із дій описує прапорці, Locator API метод setChecked(). За правильного стану метод одразу повертається. Інакше виконує дію й перевіряє результат. Це корисно для вимоги залишити дозволене тестове налаштування увімкненим.
Виразіть бажаний стан
Локальний Demo reminders починається увімкненим в одному випадку й вимкненим в іншому. Обидва задають однаковий результат і перевіряють повторюваним твердженням. Реальні повідомлення, дозволи чи акаунти не змінюються.
const reminders = page.getByRole('checkbox', { name: 'Demo reminders' });
await reminders.setChecked(true);
await expect(reminders).toBeChecked();Потрібні раннер та імпорт expect. Доводимо стан елемента, не збереження, доставку чи серверну настройку. Якщо вони входять у вимогу, перевірте через підтримуваний продуктом шлях.
Лічильник change залишається нулем, коли увімкненому знову викликають setChecked(true). Вимкнений стає увімкненим з однією подією. Повтор не змінює лічильник. Окремий звичайний клік вимикає.
Покажіть початкові вимоги
Бажаний стан може сховати неочікуваний початок без перевірки. Якщо потрібне вимкнене значення за замовчуванням, перевірте до увімкнення. Для перемикання встановіть початок і потрібну дію.
setChecked не доводить виконання кожного обробника. Одразу повертається за правильного стану, без потрібного кліку. Для спостереження change потрібні протилежний початок та перевірка ефекту.
Метод потребує відповідного checkbox чи radio. Тут нативний прапорець. Власний перемикач або кнопка потребують описаної семантики й дії. Не кожний елемент приймає той самий API. Доступність і клавіатуру перевіряйте окремо.
Повтор потребує безпечної межі
Приклад нешкідливий, але реальний прапорець може надсилати запити, повідомлення або платіжні зміни. Не переносіть повторюваність на виробничі настройки. Використовуйте дозволені staging-дані, вивчіть ефект та очищення.
Інтерфейс може не збігатися зі збереженим станом. Перезавантажте або використайте дозволений незалежний шлях читання. Запишіть початок, бажане значення, результат інтерфейсу та серверний доказ.
AnyTest описує дослідження й огляд тестів. Питайте, крок задає кінцевий стан чи припускає перемикання з невідомого початку. Конкретна реалізація прапорців не заявлена.
Стан та кількість подій відповідають на різні питання. Зберігайте обидва, щоб повтор без дії не став додатковим переходом. Назвіть потрібний подальший ефект до оголошення переходу завершеним.
Повторюване твердження перевіряє стан елемента після дії. Якщо потрібно довести початкове вимкнення за замовчуванням, окрема перевірка має стояти до зміни. Саме встановлення цілі цього не зберігає.
Загальні запитання
Чи завжди setChecked(true) натискає?
Ні. Якщо прапорець уже увімкнений, метод одразу повертається.
Чи доводить прапорець збережене налаштування?
Ні. Збереження та подальші ефекти потребують власних доказів.