Automation Test Engineer question bank
100 questions. Filter by level and skill, track what you've solved, and see how many people get each one right.
- Choosing a stable locator
- Waiting for an element
- Page Object Model
- A test without assertions
- Headless mode
- Structure of a good test
- API or UI test
- Where test code lives
- The test pyramid
- Reading a CSS selector
- A missing await
- toBe versus toEqual
- What a pytest fixture does
- BeforeEach or BeforeAll
- Status code for a created resource
- Which method is idempotent
- Postman collections in CI
- Smoke suite or regression suite
- What makes a test flaky
- How Selenium talks to a browser
- Browsers Playwright covers
- Running tests in Docker
- Passwords in test code
- Why validate a JSON schema
- Boundary value inputs
- Equivalence partitioning
- What an end-to-end test is
- Using the trace viewer
- Running only tagged tests
- Screenshots on failure
- Triggering a workflow
- Naming a test
- Reviewing test code
- Matching runner to language
- Web-first assertions
- StaleElementReferenceException
- Speeding up logged-in tests
- Testing an error state
- Failures only in parallel
- Checking an API response
- Debugging a CI-only failure
- Same test, many inputs
- Click intercepted by an overlay
- Duplicate email on sign-up
- A custom Playwright fixture
- Counting parametrized tests
- Shared driver in parallel runs
- Reading a REST Assured test
- Tests fail after an hour
- 401 or 403
- GraphQL error with status 200
- A matrix build
- Slow dependency install in CI
- Splitting a suite across machines
- Using retries wisely
- Waiting for a request in Cypress
- Cypress values are not returned
- An explicit wait in Selenium
- Mobile locators in Appium
- Reading a k6 threshold
- Load, stress or soak
- Tests that fail at midnight
- Passes in the suite, fails alone
- If statements inside a test
- Tests for several user roles
- Showing results in CI
- Testing with a payment provider
- Page objects and navigation
- Handling flaky tests at scale
- Breaking changes between services
- Clean state for each test
- Hidden race in a test
- Element inside an iframe
- Noisy screenshot comparisons
- A 90-minute test suite
- Choosing a tool for multi-tab flows
- How small flakiness adds up
- Missing the response you wait for
- Retries hiding a real bug
- Asserting on eventual consistency
- Waiting for network idle
- Can I deploy this service
- Green tests, broken production
- Leftover test data
- Worker-scoped fixtures
- Limits of automated accessibility checks
- Virtual users or arrival rate
- One shared staging for everyone
- Feature flags and tests
- High coverage, weak tests
- Running only affected tests
- Copying production data for tests
- Reusing one page for speed
- Testing an event consumer
- Emulators or real devices
- Snapshot tests with changing fields
- DRY or DAMP tests
- Ordering pipeline stages
- Tests that run in production
- What WebDriver BiDi adds