Test fixture38 tests · 10 categories

A website that
passes and fails
on command.

Passfail.no is a controlled test fixture for the Teste.no web monitoring platform — but most tests produce standard signals that work with any scanner. Toggle security headers, SEO signals, performance sabotage, accessibility issues, and API behavior, then point your monitoring tool at it.

38
Test fixtures
10
Categories
Subdomains
9
Webhook modes

Everything a scanner can test,
toggleable in one place.

Each test maps to a real scanner check. Flip a toggle, point your monitoring tool at the URL, and verify exactly what it detects. Built for Teste.no, but most tests use standard signals that any web monitoring platform can pick up.

Security & Headers

6 tests

HSTS, CSP, CORS, cookies, mixed content, cache headers, sensitive file exposure.

SEO & Metadata

11 tests

Meta tags, structured data, robots.txt, sitemap, broken links, images, accessibility.

Performance

5 tests

Response time, Core Web Vitals, third-party scripts, render-blocking resources.

API & Endpoints

3 tests

Health check, latency benchmark, GraphQL introspection exposure.

AI & LLM Readiness

4 tests

llms.txt, AI crawler rules, FAQ schema, HowTo markup, source code review signals.

Webhook Receiver

9 modes

9 modes: success, timeout, error, rate-limit, slow, flaky, bad-json, empty, recover.

38 tests across 10 categories

Every test maps to a standard scanner check. Toggle individually or by category.

Security & Headers

6
  • csp-deep-auditContent Security Policy depth
  • mixed-contentMixed content
  • security-headersSecurity headers
  • cookie-complianceCookie compliance
  • cache-header-auditCache headers
  • cors-auditCORS policy

SEO & Metadata

4
  • seo-meta-tagsSEO meta tags
  • redirect-chainRedirect chain
  • structured-data-validatorStructured data
  • deep-404-scannerDeep 404 scanner

Content Quality

7
  • mobile-friendlinessMobile friendliness
  • accessibility-scanAccessibility (axe)
  • accessibility-deepAccessibility deep
  • broken-linksBroken links
  • image-optimizationImage optimization
  • w3c-html-validationHTML validity (W3C)
  • mobile-responsiveMobile responsive signals

Performance

5
  • core-web-vitalsCore Web Vitals
  • response-timeResponse time
  • third-party-script-perfThird-party scripts
  • http-protocol-checkHTTP/2 or HTTP/3
  • visual-regressionVisual regression

Analytics & Tracking

1
  • analytics-auditAnalytics setup

Forms

2
  • form-submission-validationForm validation
  • contact-formContact page

Infrastructure & Root Files

4
  • sensitive-file-exposureSensitive file exposure
  • robots-txtRobots.txt
  • sitemap-validationSitemap XML
  • ai-search-readinessAI search readiness

API & Endpoints

3
  • api-health-checkAPI health check
  • api-latency-benchmarkAPI latency
  • graphql-introspectionGraphQL introspection

AI & LLM Readiness

3
  • ai-source-reviewAI source review
  • ai-citability-checkAI citability
  • ai-platform-readinessAI platform readiness

E-commerce & User Flows

3
  • login-flowLogin flow
  • product-page-healthProduct page
  • search-functionalitySearch functionality
Multi-tenant

Isolated subdomains
for every test scenario.

Create a subdomain instance like mysite.passfail.no and configure its fail state independently. Each instance persists its own test configuration — no interference between users or test runs.

  • Auto-created on first visit. No signup needed.
  • SQLite-backed persistence. State survives restarts.
  • Wildcard TLS via Caddy + Cloudflare DNS-01.

Instances

Each instance is an isolated subdomain with its own persistent test state. Create one, configure tests, then point Teste.no or PullPush at it.

.passfail.no
clintall pass

clint.newtest.passfail.office01.yob-yob.com · 1h ago

Open
newtestall pass

newtest.newtest.passfail.office01.yob-yob.com · 1h ago

Open

Ready to test?

Read the docs, create an instance, and start scanning.

Passfail.no — Test fixture for Teste.no scanners