Actions

Checkbox and Radio Actions

Checkbox and Radio Actions: definition, detailed explanation, practical usage, examples, mistakes, interview notes, and practice for Playwright automation.

Definition and Brief Explanation

Definition: Checkbox and Radio Actions is a Playwright operation that performs a user-like interaction on a page element.

Explanation: Checkbox and Radio Actions should be used with a stable locator and followed by an assertion that proves the UI responded correctly. Playwright performs actionability checks before most actions, which means it waits for the element to be ready instead of clicking blindly.

Why It Matters

  • It simulates real user behavior instead of directly changing application state.
  • It lets Playwright perform actionability checks before interacting.
  • It exposes UI problems such as disabled, hidden, covered, or unstable elements.
  • It pairs naturally with assertions that prove the action worked.

How It Works

  1. Find the target with a reliable locator.
  2. Let Playwright wait for the element to be ready.
  3. Perform the action with only the options you truly need.
  4. Assert the visible or data result after the action.

Syntax and Examples

Example 1: Check checkbox

await page.getByLabel('I agree').check();
await expect(page.getByLabel('I agree')).toBeChecked();

Explanation: Selects a checkbox and verifies it.

Example 2: Uncheck checkbox

await page.getByLabel('Subscribe').uncheck();

Explanation: Clears a selected checkbox.

Common Mistakes

  • Using force before understanding why the action is blocked.
  • Clicking or filling without any assertion after it.
  • Using fragile selectors for interactive controls.
  • Adding fixed waits before actions.

Interview Notes

  1. What does Checkbox and Radio Actions do?
  2. What actionability checks can affect this action?
  3. What assertion should follow it?
  4. When would this action become flaky?

Practice Task

Create a small Playwright example for Checkbox and Radio Actions. Add one positive assertion, one note about what can go wrong, and one improvement that would make the test more maintainable.