Crawler Test Scenarios

This page provides deliberate PASS and FAIL scenarios for XeoPix crawler checks #8, #9, #14, #47, #163, and #220. Each section is labelled with the check number and expected result so the script output can be validated against the expected state.

noindex — this page is intentionally excluded from search results

Check #9 — Broken Internal Links

CRITICAL

The script follows every <a href> pointing to an internal URL and records the HTTP status code. Anything non-200 (excluding intentional 301s) is flagged as broken.

Check #163 — Anchor Text Quality

IMPORTANT

The script reads every internal <a> element's visible text and flags any that match a generic phrase blocklist: "click here", "read more", "here", "this page", "learn more".

Check #8 & #220 — Redirect Verification

CRITICAL / IMPORTANT

The script requests each URL and inspects the HTTP response status. URLs that were moved must return 301 with a valid destination — never a bare 404. Redirect rules are defined in public/_redirects.

✗ FAIL — Moved page with no redirect (returns 404)

/moved-page-missing-redirect → 404 (no rule)

This URL was moved but has no entry in _redirects, so it returns a raw 404 — flagged by check #220.

Check #47 — Internal Linking Strategy

IMPORTANT

The script counts internal links per page and validates that link anchor text is keyword-relevant. Pages with fewer than 3 contextual internal links or no links to sibling content are flagged.

Check #14 — Crawl Depth

IMPORTANT

The script measures the shortest path from the homepage to each page. Pages requiring more than 3 clicks are flagged. This section links into a deliberate depth chain — the depth-4 page exceeds the 3-click limit.

URLDepthStatus
/0✓ Root
/crawl-test1✓ PASS
/crawl-test/depth-22✓ PASS
/crawl-test/depth-2/depth-33✓ PASS (boundary — linked from depth-2)
/crawl-test/depth-2/depth-3/depth-44✗ FAIL — exceeds 3-click limit

Broken Image Test

The script requests every <img src> and records the HTTP status. A non-200 response is flagged as a broken image.

✗ FAIL — Image src returns 404

Broken image test — heroBroken image test — logoBroken image test — team photo

✓ PASS — Image src returns 200

Xeopix SEO audit dashboard screenshotXeopix brand logoXeopix team member profile photo

Script Check Summary

Check #SignalFAIL scenario on this pagePASS scenario on this page
#9Broken internal links/this-page-does-not-exist-404/about, /blog, /contact
#163Anchor text quality"Click here", "Read more", "here"Descriptive keyword phrases
#8Redirects correct/moved-page-missing-redirect → 404/old-pricing → 301 → /contact
#220Moved pages → 301/moved-page-missing-redirect → 404/old-features → 301 → /
#47Internal linking5 keyword-rich internal links
#14Crawl depth ≤ 3/crawl-test/…/depth-4 (depth 4)/crawl-test/depth-2/depth-3 (depth 3)
Broken images/images/broken-hero-image.jpg → 404/placeholder.jpg → 200