tamper[box]

Locator Fragility Checker

Find brittle selectors before tests fail

Tests breaking after UI changes? Inspect a rendered website or pasted HTML to discover and check locators.

Inspect a rendered website or pasted HTML to discover locator candidates, count CSS and XPath matches, and identify brittle selectors before tests fail. Jump to: What does it mean?, How to fix it, Break it, Ask your agent.

Captured example Captured example from tamperbox.dev: the SSL Certificate Checker link matches once through a position-dependent path.

1 match · 50/100 heuristic fragility. Position-dependent locator.

Website mode captures a rendered DOM; checks use that snapshot locally. Playwright syntax is a static approximation. Risk scores do not predict flakiness.

Pasted HTML and selectors stay here. The page reads and checks it locally as you type.

Website inspection uses our server. Only the website address is sent when you choose Inspect website.

Findings

3 checks and notes
  • Check Position-dependent locator

    A sibling insertion or reorder can select a different element. Prefer a stable identity when available.

  • Check Deep structural path

    Several ancestor relationships must remain unchanged.

  • Pass One match in this snapshot

    Runtime visibility and clickability have not been checked.

Evidence

Fragility score50Higher is more brittle
Interpretation0–100 heuristic, not a probability of flakiness
Snapshot matches1Elements the selector finds in the snapshot

Alternative selectors

1 row

Matched elements

1 row
<a class="tb-tool-card" href="/ssl-checker" data-name="SSL Certificate Checker" data-keywords="ssl checker|ssl certificate checker|tls checker|certificate expiry|certificate chain|intermediate certificate|pem decoder|x509|https certificate|A certificate warning or renewal coming up? Check what your server presents." data-category="security" data-runs="server" data-added="2026-10-16" data-featured-new="false"><span class="tb-tool-card__glyph" aria-hidden="true">SSL</span><span class="tool-card-text"><b class="tb-tool-card__name" title="SSL Certificate Checker">SSL Certificate Checker</b><span class="tb-tool-card__purpose">A certificate warning or renewal coming up? Check what your server presents.</span><span class="tb-tool-card__summary">Check a certificate chain: trust, names, expiry, key and the TLS version negotiated.</span><span class="card-meta"><span class="card-runs" data-runs="server" title="Your input is sent to our server to do the lookup.">Runs on server</span></span></span></a>

Discovered locator candidates

6 rows

Locator report

Show the locator report 6 lines · 104 characters
{
  "selector": "#security > ul > li:nth-child(6) > a",
  "kind": "css",
  "score": 50,
  "matches": 1
}

What this result means

Written for the example.

  • Ask for a review of the findings and a test that verifies the proposed fix. Input values are not included automatically.

  • Captured example from tamperbox.dev: the SSL Certificate Checker link matches once through a position-dependent path.

  • Captured example from tamperbox.dev: the SSL Certificate Checker link matches once through a position-dependent path.

  • Check representative input and one deliberate failure. Confirm the result in the application that consumes it.

  • Read the findings before changing the input. Break it lets you inspect a failure, and Heal it restores the previous input.

  • Heuristic risk is not a flakiness probability. Playwright matching supports a small static subset, without a browser automation runtime.

How it works

Inspect a public HTTPS website with JavaScript on our server, or paste HTML that stays in your browser. Discover candidate selectors and check CSS, XPath or a bounded Playwright syntax against the resulting snapshot. The full method, every rule and worked examples are on docs.tamperbox.dev.

Limits and interpretation

Website inspection starts only when you choose Inspect website. It uses a fresh session, a 1440 × 900 viewport and a bounded wait; login, clicks, frames, shadow roots, service workers and non-GET requests are not supported. Blocked resources and late content can change the snapshot. Only the address is sent to our server; pasted HTML and selectors stay local. A unique match does not prove visibility, clickability or future stability. Playwright syntax uses a static approximation, not the Playwright runtime. Snapshots are limited to 1,000,000 characters and 10,000 elements; discovery lists the first 30 identifiable controls, links and test hooks.

Frequently asked questions

Can I inspect a website address?

Yes. Enter a public HTTPS address and choose Inspect website. Our server loads the page with JavaScript and returns its rendered DOM snapshot for local locator checks.

Is pasted HTML uploaded?

No. Pasted HTML and selectors stay in the current tab. The explicit website action sends only the website address to our server.

Does one match prove my test will work?

No. A match describes this snapshot. Verify the intended element, visibility, accessible name and action in your actual test runner and repeat after a meaningful page change.

References

Playwright locator guidance and DOM selector matching.

Are you an AI agent? You are in the right place.

Read this tool as plain text with its methods and limits. Use the website interface; no dedicated MCP operation is available.