Summary
Website Quality Score
Performance 10.0
SEO 7.7
Security 6.5
Accessibility 5.0
Best Practices 6.7
- ⛔ Skipped URLs - 381 skipped URLs found.
- ⛔ 404 CRITICAL - 142 non-existent pages found.
- ⛔ Security - 575 pages(s) with critical finding(s).
- ⚠️ The description '' exceeds the allowed 10% duplicity. 100% of pages have this same description.
- ⚠️ 433 page(s) do not support Brotli compression.
- ⚠️ No WebP image found on the website.
- ⚠️ No AVIF image found on the website.
- ⚠️ 575 page(s) with missing quotes on attributes.
- ⚠️ 58 page(s) with skipped heading levels.
- ⚠️ 4 page(s) without form labels.
- ⚠️ 433 page(s) without aria labels.
- ⚠️ 433 page(s) without role attributes.
- ⏩ Loaded robots.txt for domain 'playwright.dev': status code 200, size 455 B and took 56 ms.
- ⏩ External URLs - 381 external URL(s) found.
- ⏩ DNS IPv6: domain playwright.dev does not support IPv6 (DNS server: 127.0.0.53).
- ✅ Redirects - no redirects found.
- ✅ SSL/TLS certificate is valid until May 22 16:34:40 2026 GMT. Issued by C = US, O = Let's Encrypt, CN = R12. Subject is CN = playwright.dev.
- ✅ SSL/TLS certificate issued by 'C = US, O = Let's Encrypt, CN = R12'.
- ✅ Performance OK - all non-media URLs are faster than 3 seconds.
- ✅ HTTP headers - found 21 unique headers.
- ✅ All 424 unique title(s) are within the allowed 10% duplicity. Highest duplicity title has 0%.
- ✅ All pages have inline SVGs smaller than 5120 bytes.
- ✅ All pages have inline SVGs with less than 5 duplicates.
- ✅ All pages have valid or none inline SVGs.
- ✅ All pages without multiple <h1> headings.
- ✅ All pages have <h1> heading.
- ✅ All pages have DOM depth less than 30.
- ✅ All pages have clickable (interactive) phone numbers.
- ✅ All pages have valid HTML.
- ✅ All pages have image alt attributes.
- ✅ All pages have lang attribute.
- ✅ DNS IPv4 OK: domain playwright.dev resolved to 185.199.111.153, 185.199.109.153, 185.199.110.153, 185.199.108.153 (DNS server: 127.0.0.53).
Visited URLs
Found 575 row(s).
Best practices
Found 12 row(s).
| Analysis name | OK | Notice | Warning | Critical |
|---|---|---|---|---|
| Invalid inline SVGs | 13 | 0 | 0 | 0 |
| Duplicate inline SVGs (> 5 and > 1024 B) | 13 | 0 | 0 | 0 |
| DOM depth (> 30) | 575 | 0 | 0 | 0 |
| Non-clickable phone numbers | 11 | 0 | 0 | 0 |
| Heading structure | 808 | 0 | 67 | 0 |
| Large inline SVGs (> 5120 B) | 13 | 0 | 0 | 0 |
| Missing quotes on attributes | 0 | 0 | 16066 | 0 |
| Title uniqueness (> 10%) | 424 | 0 | 0 | 0 |
| Description uniqueness (> 10%) | 0 | 0 | 1 | 0 |
| Brotli support | 0 | 0 | 433 | 0 |
| WebP support | 0 | 0 | 1 | 0 |
| AVIF support | 0 | 0 | 1 | 0 |
| No rows found, please edit your search term. | ||||
Large inline SVGs
No problems found.
Duplicate inline SVGs
No problems found.
Invalid inline SVGs
No problems found.
Missing quotes on attributes
Found 200 row(s).
| Severity | Occurs | Detail | Affected URLs (max 5) |
|---|---|---|---|
| warning | 4620 | The attribute 'href' has a value '#theme-svg-external-link' not enclosed in quotes in tag <use href=#theme-svg-external-link /> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 1735 | The attribute 'title' has a value 'string' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 1725 | The attribute 'content' has a value 'en' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 1150 | The attribute 'content' has a value 'https://repository-images.githubusercontent.com/221981891/8c5c6942-c91f-4df1-825f-4cf474056bd***' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 816 | The attribute 'title' has a value 'bool' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 786 | The attribute 'content' has a value 'docs-default-stable' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 786 | The attribute 'content' has a value 'stable' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 737 | The attribute 'title' has a value 'str' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 680 | The attribute 'title' has a value 'Object' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 659 | The attribute 'title' has a value 'Number' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 590 | The attribute 'title' has a value 'void' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 582 | The attribute 'src' has a value '/img/playwright-logo.svg' not enclosed in quotes in tag <img class="themedComponent_* themedComponent-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 579 | The attribute 'href' has a value 'https://aka.ms/playwright/discord' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 579 | The attribute 'href' has a value 'https://learn.microsoft.com/en-us/training/modules/build-with-playwright/' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 579 | The attribute 'href' has a value 'https://dev.to/playwright' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 579 | The attribute 'href' has a value 'https://www.youtube.com/channel/UC46Zj8pDH5tDosqm1gd7WTg' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 579 | The attribute 'href' has a value 'https://twitter.com/playwrightweb' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | The attribute 'href' has a value '#__docusaurus_skipToContent_fallback' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | The attribute 'href' has a value 'https://stackoverflow.com/questions/tagged/playwright' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | The attribute 'href' has a value 'https://aka.ms/playwright/discord' not enclosed in quotes in tag <a class="navbar_* navbar_* header-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | The attribute 'content' has a value 'summary_large_image' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | The attribute 'href' has a value 'https://www.linkedin.com/company/playwrightweb' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | The attribute 'href' has a value 'https://K09ICMCV6X-dsn.algolia.net' not enclosed in quotes in tag <link> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | The attribute 'href' has a value '#' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 562 | The attribute 'title' has a value 'String' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 532 | The attribute 'title' has a value 'Promise' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 503 | The attribute 'title' has a value 'Boolean' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 429 | The attribute 'href' has a value 'https://playwright.dev/404.html' not enclosed in quotes in tag <link> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 408 | The attribute 'title' has a value 'float' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 373 | The attribute 'href' has a value '/docs/intro' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 362 | The attribute 'title' has a value 'boolean' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 358 | The attribute 'content' has a value 'Introduction' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 348 | The attribute 'content' has a value 'default' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 334 | The attribute 'title' has a value 'double' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 303 | The attribute 'href' has a value 'https://github.com/microsoft/playwright' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 300 | The attribute 'href' has a value '/community/feature-videos' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 299 | The attribute 'href' has a value '/community/learn-videos' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 293 | The attribute 'href' has a value '/community/ambassadors' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'href' has a value 'https://github.com/microsoft/playwright' not enclosed in quotes in tag <a class="navbar_* navbar_* header-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'href' has a value '/assets/css/styles.befe8a3f.css' not enclosed in quotes in tag <link> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'src' has a value '/assets/js/main.a8b11210.js' not enclosed in quotes in tag <script> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'href' has a value '/' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'href' has a value '/opensearch.xml' not enclosed in quotes in tag <link> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'src' has a value '/js/redirection.js' not enclosed in quotes in tag <script> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'href' has a value '/img/playwright-logo.ico' not enclosed in quotes in tag <link> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 291 | The attribute 'src' has a value '/assets/js/runtime~main.df6444b3.js' not enclosed in quotes in tag <script> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 283 | The attribute 'href' has a value '/community/welcome' not enclosed in quotes in tag <a class="navbar_* navbar_*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 263 | The attribute 'title' has a value 'None' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 253 | The attribute 'title' has a value 'int' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 226 | The attribute 'title' has a value 'Array' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 225 | The attribute 'href' has a value '/docs/api/class-playwright' not enclosed in quotes in tag <a class="navbar_* navbar_*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 219 | The attribute 'href' has a value '/docs/intro' not enclosed in quotes in tag <a class="navbar_* navbar_*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 208 | The attribute 'href' has a value '/docs/api/class-locator' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 203 | The attribute 'href' has a value '#version-***' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4 |
| warning | 203 | The attribute 'href' has a value '#version-***' not enclosed in quotes in tag <a class="table-* toc-*"> | URL 1, URL 2, URL 3, URL 4 |
| warning | 202 | The attribute 'href' has a value '/docs/actionability' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 194 | The attribute 'src' has a value '/java/img/playwright-logo.svg' not enclosed in quotes in tag <img class="themedComponent_* themedComponent-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 193 | The attribute 'title' has a value 'Dict' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 189 | The attribute 'title' has a value 'List' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 188 | The attribute 'src' has a value '/dotnet/img/playwright-logo.svg' not enclosed in quotes in tag <img class="themedComponent_* themedComponent-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 186 | The attribute 'src' has a value '/python/img/playwright-logo.svg' not enclosed in quotes in tag <img class="themedComponent_* themedComponent-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 180 | The attribute 'href' has a value '/docs/locators' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 180 | The attribute 'href' has a value '#browser-versions-***' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4 |
| warning | 179 | The attribute 'href' has a value '#introduction' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 179 | The attribute 'href' has a value '#introduction' not enclosed in quotes in tag <a class="table-* toc-*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 174 | The attribute 'title' has a value 'Pattern' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 172 | The attribute 'title' has a value 'null' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 170 | The attribute 'href' has a value '/python/docs/actionability' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 169 | The attribute 'href' has a value '/java/docs/actionability' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 168 | The attribute 'href' has a value '/dotnet/docs/actionability' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 168 | The attribute 'href' has a value '/java/docs/api/class-locator' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 167 | The attribute 'href' has a value '/dotnet/docs/api/class-locator' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 163 | The attribute 'href' has a value '#methods' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 163 | The attribute 'href' has a value '#methods' not enclosed in quotes in tag <a class="table-* toc-*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 162 | The attribute 'href' has a value '/python/docs/api/class-locator' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 145 | The attribute 'href' has a value '/java/***' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 145 | The attribute 'href' has a value '/dotnet/***' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 145 | The attribute 'href' has a value '/python/***' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 144 | The attribute 'href' has a value '/java/docs/locators' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 144 | The attribute 'href' has a value '/java/docs/intro' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 143 | The attribute 'href' has a value '/dotnet/docs/api/class-browsercontext#browser-context-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 143 | The attribute 'href' has a value '/' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 143 | The attribute 'content' has a value 'https://playwright.dev/404.html' not enclosed in quotes in tag <meta> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 143 | The attribute 'href' has a value '/python/docs/locators' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 143 | The attribute 'href' has a value '/***' not enclosed in quotes in tag <a class="dropdown_* undefined dropdown_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 142 | The attribute 'href' has a value '/dotnet/docs/locators' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 142 | The attribute 'href' has a value '/dotnet/docs/intro' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 140 | The attribute 'href' has a value '/python/docs/intro' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 138 | The attribute 'href' has a value '/python/docs/api/class-browsercontext#browser-context-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 138 | The attribute 'href' has a value '/java/docs/api/class-browsercontext#browser-context-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 133 | The attribute 'href' has a value '/docs/api/class-test' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 129 | The attribute 'href' has a value '/docs/api/class-page#page-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 129 | The attribute 'href' has a value '/dotnet/docs/api/class-page#page-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 128 | The attribute 'href' has a value '/docs/api/class-browsercontext#browser-context-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 127 | The attribute 'href' has a value '/java/docs/api/class-page#page-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 125 | The attribute 'href' has a value '/python/docs/api/class-page#page-set-default-timeout' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 116 | The attribute 'href' has a value '/docs/api/class-page' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 111 | The attribute 'href' has a value '/docs/api/class-elementhandle' not enclosed in quotes in tag <a> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 110 | The attribute 'title' has a value 'RegExp' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 108 | The attribute 'href' has a value 'https://github.com/microsoft/playwright-java' not enclosed in quotes in tag <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| You have reached the limit of 100 rows as a protection against very large output or exhausted memory. | |||
| No rows found, please edit your search term. | |||
DOM depth
No problems found.
Heading structure
| Severity | Occurs | Detail | Affected URLs (max 5) |
|---|---|---|---|
| warning | 54 | Heading structure is skipping levels: found an <h4> after an <h2>. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 37 | Heading structure is skipping levels: found an <h6> after an <h3>. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 19 | Heading structure is skipping levels: found an <h6> after an <h2>. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 12 | Heading structure is skipping levels: found an <h4> after an <h1>. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 4 | Heading structure is skipping levels: found an <h3> after an <h1>. | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | Heading structure is skipping levels: found an <h6> after an <h4>. | URL 1, URL 2, URL 3, URL 4 |
Non-clickable phone numbers
No problems found.
Title uniqueness
No problems found.
Description uniqueness
No problems found.
Accessibility
| Analysis name | OK | Notice | Warning | Critical |
|---|---|---|---|---|
| Missing image alt attributes | 230 | 0 | 0 | 0 |
| Missing roles | 0 | 0 | 11 | 0 |
| Missing aria labels | 2267 | 0 | 161 | 3 |
| Missing html lang attribute | 1 | 0 | 0 | 0 |
| Missing form labels | 0 | 0 | 3 | 0 |
Valid HTML
No problems found.
Missing image alt attributes
No problems found.
Missing form labels
Missing aria labels
Found 200 row(s).
| Severity | Occurs | Detail | Affected URLs (max 5) |
|---|---|---|---|
| critical | 12 | <input ***> | URL 1, URL 2, URL 3, URL 4 |
| warning | 25773 | <a ***> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 19127 | <a class="menu_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 7584 | <a class="list-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 5196 | <a class="footer_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 4932 | <a class="table-* toc-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 1299 | <a class="dropdown_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 963 | <a class="menu_* menu_* menu_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 877 | <a class="navbar_* navbar_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 866 | <a class="navbar_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 772 | <a class="pagination-* pagination-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 557 | <a class="menu_* menu_* menu_* menu_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 433 | <a class="dropdown_* undefined dropdown_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 433 | <a class="skipToContent_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 422 | <a class="navbar_* navbar_* navbar_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 399 | <a class="menu_* menu_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 396 | <button class="clean-* tocCollapsibleButton_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 40 | <button> | URL 1, URL 2, URL 3, URL 4 |
| warning | 20 | <a class="menu_* menuExternalLink_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 8 | <button ***> | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="frame-wait-for-navigation-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-request-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="frame-wait-for-navigation-option-url" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-response-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-request-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-response-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="browser-type-connect-over-cdp-option-endpoint-url" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-navigation-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-navigation-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-response-option-url-or-predicate" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-request-option-url-or-predicate" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="frame-wait-for-navigation-option-wait-until" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-navigation-option-url" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="page-wait-for-navigation-option-wait-until" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 5 | <a class="list-*" id="frame-wait-for-navigation-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-page-option-viewport" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-assertions-to-contain-class-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="mouse-wheel-option-delta-y" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-locator-get-by-label-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-name-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-title-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-page-option-extra-http-headers" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-page-option-reduced-motion" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-set-checked-option-trial" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="tracing-start-option-screenshots" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-wait-for-console-message-option-predicate" *** > | URL 1, URL 2, URL 3 |
| warning | 4 | <a class="list-*" id="locator-assertions-to-have-count-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-reload-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-assertions-to-be-checked-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-assertions-to-be-editable-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-context-option-service-workers" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-type-launch-persistent-context-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="element-handle-fill-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-locator-get-by-placeholder-option-exact" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-goto-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-type-launch-persistent-context-option-user-agent" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-eval-on-selector-all-option-selector" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-page-option-locale" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-add-style-tag-option-path" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-nth-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="element-handle-select-text-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-eval-on-selector-option-arg" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-uncheck-option-force" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="element-handle-query-selector-all-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-assertions-to-have-attribute-option-value" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-context-option-geolocation" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-frame-locator-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="js-handle-evaluate-handle-option-expression" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-get-by-alt-text-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-locator-option-has-not-text" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="element-handle-get-attribute-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-get-by-alt-text-option-exact" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-dblclick-option-no-wait-after" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-set-checked-option-force" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="element-handle-dblclick-option-button" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-context-option-bypass-csp" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-get-by-text-option-exact" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-is-enabled-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-context-option-color-scheme" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-route-option-handler" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-page-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-type-launch-persistent-context-option-ignore-default-args" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-goto-option-url" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-page-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-press-sequentially-option-text" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="api-response-dispose-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-all-text-contents-return" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-drag-to-option-steps" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-type-option-no-wait-after" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="api-request-new-context-option-proxy" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-screenshot-option-type" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-click-option-modifiers" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="browser-new-page-option-strict-selectors" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-get-by-role-option-selected" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-focus-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-inner-html-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="frame-dblclick-option-delay" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="locator-assertions-to-contain-class-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="element-handle-set-input-files-option-files" *** > | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <a class="list-*" id="page-is-disabled-option-timeout" *** > | URL 1, URL 2, URL 3, URL 4 |
| You have reached the limit of 100 rows as a protection against very large output or exhausted memory. | |||
| No rows found, please edit your search term. | |||
Missing roles
Found 14 row(s).
| Severity | Occurs | Detail | Affected URLs (max 5) |
|---|---|---|---|
| warning | 433 | <nav class="theme-* navbar navbar-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 433 | <footer class="theme-* footer footer-*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 401 | <nav class="docusaurus-* pagination-*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 401 | <header> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 398 | <nav class="menu thin-* menu_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 398 | <main class="docMainContainer_*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 398 | <aside class="theme-* docSidebarContainer_*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 398 | <nav class="theme-* breadcrumbsContainer_*" *** > | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 24 | <nav class="container"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 24 | <main class="margin-*"> | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 4 | <main> | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <header class="hero hero-* heroBanner_*"> | URL 1, URL 2, URL 3, URL 4 |
| warning | 4 | <main class="container margin-*"> | URL 1, URL 2, URL 3, URL 4 |
| warning | 3 | <main class="docMainContainer_* docMainContainerEnhanced_*"> | URL 1, URL 2, URL 3 |
| No rows found, please edit your search term. | |||
Missing html lang attribute
No problems found.
Security
Found 10 row(s).
| Header | OK | Notice | Warning | Critical | Recommendation |
|---|---|---|---|---|---|
| Content-Security-Policy | 0 | 0 | 0 | 575 | Content-Security-Policy header is not set. It restricts resources the page can load and prevents XSS attacks. |
| Access-Control-Allow-Origin | 0 | 0 | 575 | 0 | Access-Control-Allow-Origin is set to '*' which allows any origin to access the resource. This can be a security risk. |
| X-Frame-Options | 0 | 0 | 575 | 0 | X-Frame-Options header is not set. It prevents clickjacking attacks when set to 'deny' or 'sameorigin. |
| X-Content-Type-Options | 0 | 0 | 575 | 0 | X-Content-Type-Options header is not set. It stops MIME type sniffing and mitigates content type attacks. |
| Referrer-Policy | 0 | 0 | 575 | 0 | Referrer-Policy header is not set. It controls referrer header sharing and enhances privacy and security. |
| Feature-Policy | 0 | 0 | 575 | 0 | Feature-Policy header is not set. It allows enabling/disabling browser APIs and features for security. Not important if Permissions-Policy is set. |
| Permissions-Policy | 0 | 0 | 575 | 0 | Permissions-Policy header is not set. It allows enabling/disabling browser APIs and features for security. |
| Server | 0 | 575 | 0 | 0 | Server header is set to 'GitHub.com'. It is better not to reveal used technologies. |
| Strict-Transport-Security | 575 | 0 | 0 | 0 | |
| X-XSS-Protection | 575 | 0 | 0 | 0 | |
| No rows found, please edit your search term. | |||||
Security headers
| Severity | Occurs | Detail | Affected URLs (max 5) |
|---|---|---|---|
| critical | 575 | Content-Security-Policy header is not set. It restricts resources the page can load and prevents XSS attacks. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | Access-Control-Allow-Origin is set to '*' which allows any origin to access the resource. This can be a security risk. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | X-Frame-Options header is not set. It prevents clickjacking attacks when set to 'deny' or 'sameorigin. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | Referrer-Policy header is not set. It controls referrer header sharing and enhances privacy and security. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | Permissions-Policy header is not set. It allows enabling/disabling browser APIs and features for security. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | X-Content-Type-Options header is not set. It stops MIME type sniffing and mitigates content type attacks. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| warning | 575 | Feature-Policy header is not set. It allows enabling/disabling browser APIs and features for security. Not important if Permissions-Policy is set. | URL 1, URL 2, URL 3, URL 4, URL 5 |
| notice | 575 | Server header is set to 'GitHub.com'. It is better not to reveal used technologies. | URL 1, URL 2, URL 3, URL 4, URL 5 |
TOP non-unique titles
| Count 🔽 | Title |
|---|---|
| 2 | Fixtures | Playwright |
| 2 | Trace viewer | Playwright Python |
| 2 | Trace viewer | Playwright .NET |
| 2 | Clock | Playwright .NET |
| 2 | Trace viewer | Playwright Java |
| 2 | Clock | Playwright Python |
| 2 | Trace viewer | Playwright |
| 2 | Clock | Playwright Java |
| 2 | Clock | Playwright |
TOP non-unique descriptions
| Count 🔽 | Description |
|---|---|
| 433 |
SEO metadata
Found 200 row(s).
| URL 🔼 | Indexing | Title | H1 | Description | Keywords |
|---|---|---|---|---|---|
| / | Allowed | Fast and reliable end-to-end testing for modern web apps | Playwright | Playwright enables reliable end-to-end testing for modern web apps. | Cross-browser end-to-end testing for modern web apps | |
| /404 | Allowed | Page Not Found | Playwright | This page is not available for Node.js. | ||
| /community/ambassadors | Allowed | Ambassadors | Playwright | Ambassadors | Our Mission is to build an amazing Playwright community with the help of our ambassadors who are sharing their knowledge and passion for Playwright though live streams, video courses, conference talks and more. | |
| /community/conference-videos | Allowed | Conference Videos | Playwright | Conference Videos | Check out the latest conference talks on Playwright | |
| /community/feature-videos | Allowed | Feature Videos | Playwright | Feature Videos | Check out the latest Playwright feature videos | |
| /community/learn-videos | Allowed | Learn Videos | Playwright | Learn Videos | Check out the latest videos for learning Playwright | |
| /community/live-streams | Allowed | Live Streams | Playwright | Live Streams | Check out the latest Playwright live streams | |
| /community/mcp-videos | Allowed | MCP Videos | Playwright | MCP Videos | Learn about Model Context Protocol (MCP) integration with Playwright | |
| /community/release-videos | Allowed | Release Videos | Playwright | Release Videos | Check out the latest Playwright release videos | |
| /community/welcome | Allowed | Welcome | Playwright | Welcome | Welcome to the Playwright Community. We are so glad to have you here. In our community section take a look at our videos section to see videos on conference talks, live streams, feature videos and release videos. | |
| /docs/accessibility-testing | Allowed | Accessibility testing | Playwright | Accessibility testing | Introduction | |
| /docs/actionability | Allowed | Auto-waiting | Playwright | Auto-waiting | Introduction | |
| /docs/api-testing | Allowed | API testing | Playwright | API testing | Introduction | |
| /docs/api/class-android | Allowed | Android | Playwright | Android | Playwright has experimental support for Android automation. This includes Chrome for Android and Android WebView. | |
| /docs/api/class-androiddevice | Allowed | AndroidDevice | Playwright | AndroidDevice | AndroidDevice] represents a connected device, either real hardware or emulated. Devices can be obtained using [android.devices(). | |
| /docs/api/class-androidinput | Allowed | AndroidInput | Playwright | AndroidInput | --- | |
| /docs/api/class-androidsocket | Allowed | AndroidSocket | Playwright | AndroidSocket | AndroidSocket] is a way to communicate with a process launched on the [AndroidDevice]. Use [androidDevice.open() to open a socket. | |
| /docs/api/class-androidwebview | Allowed | AndroidWebView | Playwright | AndroidWebView | AndroidWebView] represents a WebView open on the [AndroidDevice]. WebView is usually obtained using [androidDevice.webView(). | |
| /docs/api/class-apirequest | Allowed | APIRequest | Playwright | APIRequest | Exposes API that can be used for the Web API testing. This class is used for creating APIRequestContext] instance which in turn can be used for sending web requests. An instance of this class can be obtained via [playwright.request. For more information see [APIRequestContext]. | |
| /docs/api/class-apirequestcontext | Allowed | APIRequestContext | Playwright | APIRequestContext | This API is used for the Web API testing. You can use it to trigger API endpoints, configure micro-services, prepare environment or the service to your e2e test. | |
| /docs/api/class-apiresponse | Allowed | APIResponse | Playwright | APIResponse | APIResponse] class represents responses returned by [apiRequestContext.get() and similar methods. | |
| /docs/api/class-apiresponseassertions | Allowed | APIResponseAssertions | Playwright | APIResponseAssertions | The [APIResponseAssertions] class provides assertion methods that can be used to make assertions about the [APIResponse] in the tests. | |
| /docs/api/class-browser | Allowed | Browser | Playwright | Browser | A Browser is created via browserType.launch(). An example of using a [Browser] to create a [Page]: | |
| /docs/api/class-browsercontext | Allowed | BrowserContext | Playwright | BrowserContext | BrowserContexts provide a way to operate multiple independent browser sessions. | |
| /docs/api/class-browserserver | Allowed | BrowserServer | Playwright | BrowserServer | --- | |
| /docs/api/class-browsertype | Allowed | BrowserType | Playwright | BrowserType | BrowserType provides methods to launch a specific browser instance or connect to an existing one. The following is a typical example of using Playwright to drive automation: | |
| /docs/api/class-cdpsession | Allowed | CDPSession | Playwright | CDPSession | The CDPSession instances are used to talk raw Chrome Devtools Protocol: | |
| /docs/api/class-clock | Allowed | Clock | Playwright | Clock | Accurately simulating time-dependent behavior is essential for verifying the correctness of applications. Learn more about clock emulation. | |
| /docs/api/class-consolemessage | Allowed | ConsoleMessage | Playwright | ConsoleMessage | ConsoleMessage] objects are dispatched by page via the [page.on('console') event. For each console message logged in the page there will be corresponding event in the Playwright context. | |
| /docs/api/class-coverage | Allowed | Coverage | Playwright | Coverage | Coverage gathers information about parts of JavaScript and CSS that were used by the page. | |
| /docs/api/class-dialog | Allowed | Dialog | Playwright | Dialog | Dialog] objects are dispatched by page via the [page.on('dialog') event. | |
| /docs/api/class-download | Allowed | Download | Playwright | Download | Download] objects are dispatched by page via the [page.on('download') event. | |
| /docs/api/class-electron | Allowed | Electron | Playwright | Electron | Playwright has experimental support for Electron automation. You can access electron namespace via: | |
| /docs/api/class-electronapplication | Allowed | ElectronApplication | Playwright | ElectronApplication | Electron application representation. You can use electron.launch() to obtain the application instance. This instance you can control main electron process as well as work with Electron windows: | |
| /docs/api/class-elementhandle | Allowed | ElementHandle | Playwright | ElementHandle | * extends: [JSHandle] | |
| /docs/api/class-filechooser | Allowed | FileChooser | Playwright | FileChooser | FileChooser] objects are dispatched by the page in the [page.on('filechooser') event. | |
| /docs/api/class-fixtures | Allowed | Fixtures | Playwright | Fixtures | Playwright Test is based on the concept of the test fixtures. Test fixtures are used to establish environment for each test, giving the test everything it needs and nothing else. | |
| /docs/api/class-frame | Allowed | Frame | Playwright | Frame | At every point of time, page exposes its current frame tree via the page.mainFrame() and frame.childFrames() methods. | |
| /docs/api/class-framelocator | Allowed | FrameLocator | Playwright | FrameLocator | FrameLocator represents a view to the iframe on the page. It captures the logic sufficient to retrieve the iframe and locate elements in that iframe. FrameLocator can be created with either locator.contentFrame(), page.frameLocator() or locator.frameLocator() method. | |
| /docs/api/class-fullconfig | Allowed | FullConfig | Playwright | FullConfig | Resolved configuration which is accessible via testInfo.config and is passed to the test reporters. To see the format of Playwright configuration file, please see [TestConfig] instead. | |
| /docs/api/class-fullproject | Allowed | FullProject | Playwright | FullProject | Runtime representation of the test project configuration. It is accessible in the tests via testInfo.project and workerInfo.project and is passed to the test reporters. To see the format of the project in the Playwright configuration file please see [TestProject] instead. | |
| /docs/api/class-genericassertions | Allowed | GenericAssertions | Playwright | GenericAssertions | The GenericAssertions] class provides assertion methods that can be used to make assertions about any values in the tests. A new instance of [GenericAssertions] is created by calling [expect(): | |
| /docs/api/class-jshandle | Allowed | JSHandle | Playwright | JSHandle | JSHandle represents an in-page JavaScript object. JSHandles can be created with the page.evaluateHandle() method. | |
| /docs/api/class-keyboard | Allowed | Keyboard | Playwright | Keyboard | Keyboard provides an api for managing a virtual keyboard. The high level api is keyboard.type(), which takes raw characters and generates proper keydown, keypress/input, and keyup events on your page. | |
| /docs/api/class-location | Allowed | Location | Playwright | Location | Represents a location in the source code where [TestCase] or [Suite] is defined. | |
| /docs/api/class-locator | Allowed | Locator | Playwright | Locator | Locators are the central piece of Playwright's auto-waiting and retry-ability. In a nutshell, locators represent a way to find element(s) on the page at any moment. A locator can be created with the page.locator() method. | |
| /docs/api/class-locatorassertions | Allowed | LocatorAssertions | Playwright | LocatorAssertions | The [LocatorAssertions] class provides assertion methods that can be used to make assertions about the [Locator] state in the tests. | |
| /docs/api/class-logger | Allowed | Logger | Playwright | Logger | This class is deprecated. The logs pumped through this class are incomplete. Please use tracing instead. | |
| /docs/api/class-mouse | Allowed | Mouse | Playwright | Mouse | The Mouse class operates in main-frame CSS pixels relative to the top-left corner of the viewport. | |
| /docs/api/class-page | Allowed | Page | Playwright | Page | Page provides methods to interact with a single tab in a Browser], or an [extension background page in Chromium. One [Browser] instance might have multiple [Page] instances. | |
| /docs/api/class-pageassertions | Allowed | PageAssertions | Playwright | PageAssertions | The [PageAssertions] class provides assertion methods that can be used to make assertions about the [Page] state in the tests. | |
| /docs/api/class-playwright | Allowed | Playwright Library | Playwright | Playwright Library | Playwright module provides a method to launch a browser instance. The following is a typical example of using Playwright to drive automation: | |
| /docs/api/class-playwrightassertions | Allowed | PlaywrightAssertions | Playwright | PlaywrightAssertions | Playwright gives you Web-First Assertions with convenience methods for creating assertions that will wait and retry until the expected condition is met. | |
| /docs/api/class-reporter | Allowed | Reporter | Playwright | Reporter | Test runner notifies the reporter about various events during test execution. All methods of the reporter are optional. | |
| /docs/api/class-request | Allowed | Request | Playwright | Request | Whenever the page sends a request for a network resource the following sequence of events are emitted by [Page]: | |
| /docs/api/class-response | Allowed | Response | Playwright | Response | [Response] class represents responses which are received by page. | |
| /docs/api/class-route | Allowed | Route | Playwright | Route | Whenever a network route is set up with page.route() or browserContext.route(), the Route object allows to handle the route. | |
| /docs/api/class-selectors | Allowed | Selectors | Playwright | Selectors | Selectors can be used to install custom selector engines. See extensibility for more information. | |
| /docs/api/class-snapshotassertions | Allowed | SnapshotAssertions | Playwright | SnapshotAssertions | Playwright provides methods for comparing page and element screenshots with expected values stored in files. | |
| /docs/api/class-suite | Allowed | Suite | Playwright | Suite | Suite is a group of tests. All tests in Playwright Test form the following hierarchy: | |
| /docs/api/class-test | Allowed | Playwright Test | Playwright | Playwright Test | Playwright Test provides a test function to declare tests and expect function to write assertions. | |
| /docs/api/class-testcase | Allowed | TestCase | Playwright | TestCase | TestCase corresponds to every test() call in a test file. When a single test() is running in multiple projects or repeated multiple times, it will have multiple TestCase objects in corresponding projects' suites. | |
| /docs/api/class-testconfig | Allowed | TestConfig | Playwright | TestConfig | Playwright Test provides many options to configure how your tests are collected and executed, for example timeout or testDir. These options are described in the TestConfig] object in the [configuration file. This type describes format of the configuration file, to access resolved configuration parameters at run time use [FullConfig]. | |
| /docs/api/class-testerror | Allowed | TestError | Playwright | TestError | Information about an error thrown during test execution. | |
| /docs/api/class-testinfo | Allowed | TestInfo | Playwright | TestInfo | TestInfo contains information about currently running test. It is available to test functions, test.beforeEach(), test.afterEach(), test.beforeAll() and test.afterAll() hooks, and test-scoped fixtures. TestInfo provides utilities to control test execution: attach files, update test timeout, determine which test is currently running and whether it was retried, etc. | |
| /docs/api/class-testinfoerror | Allowed | TestInfoError | Playwright | TestInfoError | Information about an error thrown during test execution. | |
| /docs/api/class-testoptions | Allowed | TestOptions | Playwright | TestOptions | Playwright Test provides many options to configure test environment, [Browser], [BrowserContext] and more. | |
| /docs/api/class-testproject | Allowed | TestProject | Playwright | TestProject | Playwright Test supports running multiple test projects at the same time. This is useful for running tests in multiple configurations. For example, consider running tests against multiple browsers. This type describes format of a project in the configuration file, to access resolved configuration parameters at run time use [FullProject]. | |
| /docs/api/class-testresult | Allowed | TestResult | Playwright | TestResult | A result of a single [TestCase] run. | |
| /docs/api/class-teststep | Allowed | TestStep | Playwright | TestStep | Represents a step in the [TestRun]. | |
| /docs/api/class-teststepinfo | Allowed | TestStepInfo | Playwright | TestStepInfo | TestStepInfo contains information about currently running test step. It is passed as an argument to the step function. TestStepInfo provides utilities to control test step execution. | |
| /docs/api/class-timeouterror | Allowed | TimeoutError | Playwright | TimeoutError | * extends: [Error] | |
| /docs/api/class-touchscreen | Allowed | Touchscreen | Playwright | Touchscreen | The Touchscreen class operates in main-frame CSS pixels relative to the top-left corner of the viewport. Methods on the touchscreen can only be used in browser contexts that have been initialized with hasTouch set to true. | |
| /docs/api/class-tracing | Allowed | Tracing | Playwright | Tracing | API for collecting and saving Playwright traces. Playwright traces can be opened in Trace Viewer after Playwright script runs. | |
| /docs/api/class-video | Allowed | Video | Playwright | Video | When browser context is created with the recordVideo option, each page has a video object associated with it. | |
| /docs/api/class-weberror | Allowed | WebError | Playwright | WebError | WebError] class represents an unhandled exception thrown in the page. It is dispatched via the [browserContext.on('weberror') event. | |
| /docs/api/class-websocket | Allowed | WebSocket | Playwright | WebSocket | The [WebSocket] class represents WebSocket connections within a page. It provides the ability to inspect and manipulate the data being transmitted and received. | |
| /docs/api/class-websocketroute | Allowed | WebSocketRoute | Playwright | WebSocketRoute | Whenever a WebSocket route is set up with page.routeWebSocket() or browserContext.routeWebSocket(), the WebSocketRoute object allows to handle the WebSocket, like an actual server would do. | |
| /docs/api/class-worker | Allowed | Worker | Playwright | Worker | The Worker class represents a WebWorker. worker event is emitted on the page object to signal a worker creation. close event is emitted on the worker object when the worker is gone. | |
| /docs/api/class-workerinfo | Allowed | WorkerInfo | Playwright | WorkerInfo | WorkerInfo contains information about the worker that is running tests and is available to worker-scoped fixtures. WorkerInfo is a subset of [TestInfo] that is available in many other places. | |
| /docs/aria-snapshots | Allowed | Snapshot testing | Playwright | Snapshot testing | Overview | |
| /docs/auth | Allowed | Authentication | Playwright | Authentication | Introduction | |
| /docs/best-practices | Allowed | Best Practices | Playwright | Best Practices | Introduction | |
| /docs/browser-contexts | Allowed | Isolation | Playwright | Isolation | Introduction | |
| /docs/browsers | Allowed | Browsers | Playwright | Browsers | Introduction | |
| /docs/canary-releases | Allowed | Canary releases | Playwright | Canary releases | Introduction | |
| /docs/chrome-extensions | Allowed | Chrome extensions | Playwright | Chrome extensions | Introduction | |
| /docs/ci | Allowed | Continuous Integration | Playwright | Continuous Integration | Introduction | |
| /docs/ci-intro | Allowed | Setting up CI | Playwright | Setting up CI | Introduction | |
| /docs/clock | Allowed | Clock | Playwright | Clock | Introduction | |
| /docs/codegen | Allowed | Test generator | Playwright | Test generator | Introduction | |
| /docs/codegen-intro | Allowed | Generating tests | Playwright | Generating tests | Introduction | |
| /docs/debug | Allowed | Debugging Tests | Playwright | Debugging Tests | VS Code debugger | |
| /docs/dialogs | Allowed | Dialogs | Playwright | Dialogs | Introduction | |
| /docs/docker | Allowed | Docker | Playwright | Docker | Introduction | |
| /docs/downloads | Allowed | Downloads | Playwright | Downloads | Introduction | |
| /docs/emulation | Allowed | Emulation | Playwright | Emulation | Introduction | |
| /docs/evaluating | Allowed | Evaluating JavaScript | Playwright | Evaluating JavaScript | Introduction | |
| /docs/events | Allowed | Events | Playwright | Events | Introduction | |
| /docs/extensibility | Allowed | Extensibility | Playwright | Extensibility | Custom selector engines | |
| /docs/frames | Allowed | Frames | Playwright | Frames | Introduction | |
| /docs/getting-started-vscode | Allowed | Getting started - VS Code | Playwright | Getting started - VS Code | Introduction | |
| /docs/handles | Allowed | Handles | Playwright | Handles | Introduction | |
| /docs/input | Allowed | Actions | Playwright | Actions | Introduction | |
| /docs/intro | Allowed | Installation | Playwright | Installation | Introduction | |
| /docs/languages | Allowed | Supported languages | Playwright | Supported languages | Introduction | |
| /docs/library | Allowed | Library | Playwright | Library | Introduction | |
| /docs/locators | Allowed | Locators | Playwright | Locators | Introduction | |
| /docs/mock | Allowed | Mock APIs | Playwright | Mock APIs | Introduction | |
| /docs/mock-browser-apis | Allowed | Mock browser APIs | Playwright | Mock browser APIs | Introduction | |
| /docs/navigations | Allowed | Navigations | Playwright | Navigations | Introduction | |
| /docs/network | Allowed | Network | Playwright | Network | Introduction | |
| /docs/other-locators | Allowed | Other locators | Playwright | Other locators | Introduction | |
| /docs/pages | Allowed | Pages | Playwright | Pages | Pages | |
| /docs/pom | Allowed | Page object models | Playwright | Page object models | Introduction | |
| /docs/protractor | Allowed | Migrating from Protractor | Playwright | Migrating from Protractor | Migration Principles | |
| /docs/puppeteer | Allowed | Migrating from Puppeteer | Playwright | Migrating from Puppeteer | Migration Principles | |
| /docs/release-notes | Allowed | Release notes | Playwright | Release notes | Version 1.58 | |
| /docs/running-tests | Allowed | Running and debugging tests | Playwright | Running and debugging tests | Introduction | |
| /docs/screenshots | Allowed | Screenshots | Playwright | Screenshots | Introduction | |
| /docs/selenium-grid | Allowed | Selenium Grid (experimental) | Playwright | Selenium Grid (experimental) | Introduction | |
| /docs/service-workers | Allowed | Service Workers | Playwright | Service Workers | Introduction | |
| /docs/test-agents | Allowed | Agents | Playwright | Playwright Test Agents | Introduction | |
| /docs/test-annotations | Allowed | Annotations | Playwright | Annotations | Introduction | |
| /docs/test-assertions | Allowed | Assertions | Playwright | Assertions | Introduction | |
| /docs/test-cli | Allowed | Command line | Playwright | Command line | Playwright provides a powerful command line interface for running tests, generating code, debugging, and more. The most up to date list of commands and arguments available on the CLI can always be retrieved via npx playwright --help. | |
| /docs/test-components | Allowed | Components (experimental) | Playwright | Components (experimental) | Introduction | |
| /docs/test-configuration | Allowed | Configuration | Playwright | Configuration | Introduction | |
| /docs/test-fixtures | Allowed | Fixtures | Playwright | Fixtures | Introduction | |
| /docs/test-global-setup-teardown | Allowed | Global setup and teardown | Playwright | Global setup and teardown | Introduction | |
| /docs/test-parallel | Allowed | Parallelism | Playwright | Parallelism | Introduction | |
| /docs/test-parameterize | Allowed | Parameterize tests | Playwright | Parameterize tests | Introduction | |
| /docs/test-projects | Allowed | Projects | Playwright | Projects | Introduction | |
| /docs/test-reporters | Allowed | Reporters | Playwright | Reporters | Introduction | |
| /docs/test-retries | Allowed | Retries | Playwright | Retries | Introduction | |
| /docs/test-sharding | Allowed | Sharding | Playwright | Sharding | Introduction | |
| /docs/test-snapshots | Allowed | Visual comparisons | Playwright | Visual comparisons | Introduction | |
| /docs/test-timeouts | Allowed | Timeouts | Playwright | Timeouts | Playwright Test has multiple configurable timeouts for various tasks. | |
| /docs/test-typescript | Allowed | TypeScript | Playwright | TypeScript | Introduction | |
| /docs/test-ui-mode | Allowed | UI Mode | Playwright | UI Mode | Introduction | |
| /docs/test-use-options | Allowed | Configuration (use) | Playwright | Configuration (use) | Introduction | |
| /docs/test-webserver | Allowed | Web server | Playwright | Web server | Introduction | |
| /docs/testing-library | Allowed | Migrating from Testing Library | Playwright | Migrating from Testing Library | Migration principles | |
| /docs/touch-events | Allowed | Touch events (legacy) | Playwright | Touch events (legacy) | Introduction | |
| /docs/trace-viewer | Allowed | Trace viewer | Playwright | Trace viewer | Introduction | |
| /docs/trace-viewer-intro | Allowed | Trace viewer | Playwright | Trace viewer | Introduction | |
| /docs/videos | Allowed | Videos | Playwright | Videos | Introduction | |
| /docs/webview2 | Allowed | WebView2 | Playwright | WebView2 | Introduction | |
| /docs/writing-tests | Allowed | Writing tests | Playwright | Writing tests | Introduction | |
| /dotnet/ | Allowed | Fast and reliable end-to-end testing for modern web apps | Playwright .NET | Playwright enables reliable end-to-end testing for modern web apps. | Cross-browser end-to-end testing for modern web apps | |
| /dotnet/404 | Allowed | Page Not Found | Playwright .NET | This page is not available for .NET. | ||
| /dotnet/community/ambassadors | Allowed | Ambassadors | Playwright .NET | Ambassadors | Our Mission is to build an amazing Playwright community with the help of our ambassadors who are sharing their knowledge and passion for Playwright though live streams, video courses, conference talks and more. | |
| /dotnet/community/conference-videos | Allowed | Conference Videos | Playwright .NET | Conference Videos | Check out the latest conference talks on Playwright | |
| /dotnet/community/feature-videos | Allowed | Feature Videos | Playwright .NET | Feature Videos | Check out the latest Playwright feature videos | |
| /dotnet/community/learn-videos | Allowed | Learn Videos | Playwright .NET | Learn Videos | Check out the latest videos for learning Playwright | |
| /dotnet/community/live-streams | Allowed | Live Streams | Playwright .NET | Live Streams | Check out the latest Playwright live streams | |
| /dotnet/community/mcp-videos | Allowed | MCP Videos | Playwright .NET | MCP Videos | Learn about Model Context Protocol (MCP) integration with Playwright | |
| /dotnet/community/release-videos | Allowed | Release Videos | Playwright .NET | Release Videos | Check out the latest Playwright release videos | |
| /dotnet/community/welcome | Allowed | Welcome | Playwright .NET | Welcome | Welcome to the Playwright Community. We are so glad to have you here. In our community section take a look at our videos section to see videos on conference talks, live streams, feature videos and release videos. | |
| /dotnet/docs/actionability | Allowed | Auto-waiting | Playwright .NET | Auto-waiting | Introduction | |
| /dotnet/docs/api-testing | Allowed | API testing | Playwright .NET | API testing | Introduction | |
| /dotnet/docs/api/class-apirequest | Allowed | APIRequest | Playwright .NET | APIRequest | Exposes API that can be used for the Web API testing. This class is used for creating APIRequestContext] instance which in turn can be used for sending web requests. An instance of this class can be obtained via [Playwright.APIRequest. For more information see [APIRequestContext]. | |
| /dotnet/docs/api/class-apirequestcontext | Allowed | APIRequestContext | Playwright .NET | APIRequestContext | This API is used for the Web API testing. You can use it to trigger API endpoints, configure micro-services, prepare environment or the service to your e2e test. | |
| /dotnet/docs/api/class-apiresponse | Allowed | APIResponse | Playwright .NET | APIResponse | APIResponse] class represents responses returned by [ApiRequestContext.GetAsync() and similar methods. | |
| /dotnet/docs/api/class-apiresponseassertions | Allowed | APIResponseAssertions | Playwright .NET | APIResponseAssertions | The [APIResponseAssertions] class provides assertion methods that can be used to make assertions about the [APIResponse] in the tests. | |
| /dotnet/docs/api/class-browser | Allowed | Browser | Playwright .NET | Browser | A Browser is created via BrowserType.LaunchAsync(). An example of using a [Browser] to create a [Page]: | |
| /dotnet/docs/api/class-browsercontext | Allowed | BrowserContext | Playwright .NET | BrowserContext | BrowserContexts provide a way to operate multiple independent browser sessions. | |
| /dotnet/docs/api/class-browsertype | Allowed | BrowserType | Playwright .NET | BrowserType | BrowserType provides methods to launch a specific browser instance or connect to an existing one. The following is a typical example of using Playwright to drive automation: | |
| /dotnet/docs/api/class-cdpsession | Allowed | CDPSession | Playwright .NET | CDPSession | The CDPSession instances are used to talk raw Chrome Devtools Protocol: | |
| /dotnet/docs/api/class-cdpsessionevent | Allowed | CDPSessionEvent | Playwright .NET | CDPSessionEvent | CDPSessionEvent] objects are returned by page via the [CdpSession.Event() method. | |
| /dotnet/docs/api/class-clock | Allowed | Clock | Playwright .NET | Clock | Accurately simulating time-dependent behavior is essential for verifying the correctness of applications. Learn more about clock emulation. | |
| /dotnet/docs/api/class-consolemessage | Allowed | ConsoleMessage | Playwright .NET | ConsoleMessage | ConsoleMessage] objects are dispatched by page via the [Page.Console event. For each console message logged in the page there will be corresponding event in the Playwright context. | |
| /dotnet/docs/api/class-dialog | Allowed | Dialog | Playwright .NET | Dialog | Dialog] objects are dispatched by page via the [Page.Dialog event. | |
| /dotnet/docs/api/class-download | Allowed | Download | Playwright .NET | Download | Download] objects are dispatched by page via the [Page.Download event. | |
| /dotnet/docs/api/class-elementhandle | Allowed | ElementHandle | Playwright .NET | ElementHandle | * extends: [JSHandle] | |
| /dotnet/docs/api/class-filechooser | Allowed | FileChooser | Playwright .NET | FileChooser | FileChooser] objects are dispatched by the page in the [Page.FileChooser event. | |
| /dotnet/docs/api/class-formdata | Allowed | FormData | Playwright .NET | FormData | The [FormData] is used create form data that is sent via [APIRequestContext]. | |
| /dotnet/docs/api/class-frame | Allowed | Frame | Playwright .NET | Frame | At every point of time, page exposes its current frame tree via the Page.MainFrame and Frame.ChildFrames methods. | |
| /dotnet/docs/api/class-framelocator | Allowed | FrameLocator | Playwright .NET | FrameLocator | FrameLocator represents a view to the iframe on the page. It captures the logic sufficient to retrieve the iframe and locate elements in that iframe. FrameLocator can be created with either Locator.ContentFrame, Page.FrameLocator() or Locator.FrameLocator() method. | |
| /dotnet/docs/api/class-jshandle | Allowed | JSHandle | Playwright .NET | JSHandle | JSHandle represents an in-page JavaScript object. JSHandles can be created with the Page.EvaluateHandleAsync() method. | |
| /dotnet/docs/api/class-keyboard | Allowed | Keyboard | Playwright .NET | Keyboard | Keyboard provides an api for managing a virtual keyboard. The high level api is Keyboard.TypeAsync(), which takes raw characters and generates proper keydown, keypress/input, and keyup events on your page. | |
| /dotnet/docs/api/class-locator | Allowed | Locator | Playwright .NET | Locator | Locators are the central piece of Playwright's auto-waiting and retry-ability. In a nutshell, locators represent a way to find element(s) on the page at any moment. A locator can be created with the Page.Locator() method. | |
| /dotnet/docs/api/class-locatorassertions | Allowed | LocatorAssertions | Playwright .NET | LocatorAssertions | The [LocatorAssertions] class provides assertion methods that can be used to make assertions about the [Locator] state in the tests. | |
| /dotnet/docs/api/class-mouse | Allowed | Mouse | Playwright .NET | Mouse | The Mouse class operates in main-frame CSS pixels relative to the top-left corner of the viewport. | |
| /dotnet/docs/api/class-page | Allowed | Page | Playwright .NET | Page | Page provides methods to interact with a single tab in a Browser], or an [extension background page in Chromium. One [Browser] instance might have multiple [Page] instances. | |
| /dotnet/docs/api/class-pageassertions | Allowed | PageAssertions | Playwright .NET | PageAssertions | The [PageAssertions] class provides assertion methods that can be used to make assertions about the [Page] state in the tests. | |
| /dotnet/docs/api/class-playwright | Allowed | Playwright | Playwright .NET | Playwright | Playwright module provides a method to launch a browser instance. The following is a typical example of using Playwright to drive automation: | |
| /dotnet/docs/api/class-playwrightassertions | Allowed | PlaywrightAssertions | Playwright .NET | PlaywrightAssertions | Playwright gives you Web-First Assertions with convenience methods for creating assertions that will wait and retry until the expected condition is met. | |
| /dotnet/docs/api/class-request | Allowed | Request | Playwright .NET | Request | Whenever the page sends a request for a network resource the following sequence of events are emitted by [Page]: | |
| /dotnet/docs/api/class-response | Allowed | Response | Playwright .NET | Response | [Response] class represents responses which are received by page. | |
| /dotnet/docs/api/class-route | Allowed | Route | Playwright .NET | Route | Whenever a network route is set up with Page.RouteAsync() or BrowserContext.RouteAsync(), the Route object allows to handle the route. | |
| /dotnet/docs/api/class-selectors | Allowed | Selectors | Playwright .NET | Selectors | Selectors can be used to install custom selector engines. See extensibility for more information. | |
| /dotnet/docs/api/class-timeouterror | Allowed | TimeoutError | Playwright .NET | TimeoutError | * extends: [Error] | |
| /dotnet/docs/api/class-touchscreen | Allowed | Touchscreen | Playwright .NET | Touchscreen | The Touchscreen class operates in main-frame CSS pixels relative to the top-left corner of the viewport. Methods on the touchscreen can only be used in browser contexts that have been initialized with hasTouch set to true. | |
| /dotnet/docs/api/class-tracing | Allowed | Tracing | Playwright .NET | Tracing | API for collecting and saving Playwright traces. Playwright traces can be opened in Trace Viewer after Playwright script runs. | |
| /dotnet/docs/api/class-video | Allowed | Video | Playwright .NET | Video | When browser context is created with the recordVideo option, each page has a video object associated with it. | |
| /dotnet/docs/api/class-weberror | Allowed | WebError | Playwright .NET | WebError | WebError] class represents an unhandled exception thrown in the page. It is dispatched via the [BrowserContext.WebError event. | |
| /dotnet/docs/api/class-websocket | Allowed | WebSocket | Playwright .NET | WebSocket | The [WebSocket] class represents WebSocket connections within a page. It provides the ability to inspect and manipulate the data being transmitted and received. | |
| /dotnet/docs/api/class-websocketframe | Allowed | WebSocketFrame | Playwright .NET | WebSocketFrame | The WebSocketFrame] class represents frames sent over [WebSocket] connections in the page. Frame payload is returned by either [WebSocketFrame.Text or WebSocketFrame.Binary method depending on the its type. | |
| /dotnet/docs/api/class-websocketroute | Allowed | WebSocketRoute | Playwright .NET | WebSocketRoute | Whenever a WebSocket route is set up with Page.RouteWebSocketAsync() or BrowserContext.RouteWebSocketAsync(), the WebSocketRoute object allows to handle the WebSocket, like an actual server would do. | |
You have reached the hard limit of 200 rows as a protection against very large output or exhausted memory. You can change this with --rows-limit. | |||||
| No rows found, please edit your search term. | |||||
OpenGraph metadata
Found 200 row(s).
Heading structure
Found 200 row(s).
| Heading structure | Count | Errors 🔽 | URL |
|---|---|---|---|
| 11 | 9 | / |
| 11 | 9 | /dotnet/ |
| 11 | 9 | /python/ |
| 11 | 9 | /java/ |
| 12 | 0 | /docs/intro |
| 3 | 0 | /docs/frames |
| 5 | 0 | /docs/canary-releases |
| 4 | 0 | /docs/touch-events |
| 12 | 0 | /docs/docker |
| 3 | 0 | /docs/chrome-extensions |
| 5 | 0 | /docs/dialogs |
| 20 | 0 | /docs/other-locators |
| 7 | 0 | /docs/trace-viewer-intro |
| 11 | 0 | /docs/test-use-options |
| 14 | 0 | /docs/test-assertions |
| 24 | 0 | /docs/test-components |
| 5 | 0 | /docs/screenshots |
| 15 | 0 | /docs/test-parallel |
| 7 | 0 | /docs/browser-contexts |
| 7 | 0 | /docs/navigations |
| 13 | 0 | /docs/library |
| 20 | 0 | /docs/trace-viewer |
| 8 | 0 | /docs/test-snapshots |
| 3 | 0 | /docs/videos |
| 6 | 0 | /docs/test-typescript |
| 13 | 0 | /docs/auth |
| 20 | 0 | /docs/best-practices |
| 11 | 0 | /docs/writing-tests |
| 15 | 0 | /docs/running-tests |
| 7 | 0 | /docs/clock |
| 6 | 0 | /dotnet/docs/intro |
| 8 | 0 | /docs/test-parameterize |
| 11 | 0 | /docs/test-agents |
| 14 | 0 | /docs/test-reporters |
| 19 | 0 | /docs/debug |
| 14 | 0 | /docs/network |
| 7 | 0 | /docs/protractor |
| 7 | 0 | /docs/codegen-intro |
| 1 | 0 | /community/learn-videos |
| 16 | 0 | /docs/getting-started-vscode |
| 8 | 0 | /python/docs/intro |
| 6 | 0 | /docs/test-retries |
| 20 | 0 | /docs/browsers |
| 13 | 0 | /docs/input |
| 3 | 0 | /docs/pom |
| 2 | 0 | /docs/extensibility |
| 19 | 0 | /docs/test-ui-mode |
| 7 | 0 | /docs/service-workers |
| 36 | 0 | /docs/locators |
| 5 | 0 | /docs/webview2 |
| 2 | 0 | /docs/downloads |
| 18 | 0 | /docs/test-fixtures |
| 12 | 0 | /docs/emulation |
| 11 | 0 | /community/welcome |
| 9 | 0 | /docs/mock |
| 24 | 0 | /docs/aria-snapshots |
| 17 | 0 | /docs/codegen |
| 5 | 0 | /docs/pages |
| 11 | 0 | /docs/test-cli |
| 12 | 0 | /docs/api-testing |
| 13 | 0 | /docs/ci-intro |
| 11 | 0 | /docs/test-projects |
| 14 | 0 | /docs/test-timeouts |
| 6 | 0 | /docs/test-webserver |
| 8 | 0 | /docs/test-sharding |
| 7 | 0 | /java/docs/intro |
| 9 | 0 | /docs/actionability |
| 8 | 0 | /docs/handles |
| 2 | 0 | /community/ambassadors |
| 6 | 0 | /docs/languages |
| 9 | 0 | /docs/api/class-playwright |
| 236 | 0 | /docs/release-notes |
| 11 | 0 | /docs/test-annotations |
| 14 | 0 | /docs/accessibility-testing |
| 6 | 0 | /docs/mock-browser-apis |
| 6 | 0 | /docs/test-configuration |
| 10 | 0 | /docs/test-global-setup-teardown |
| 5 | 0 | /docs/evaluating |
| 5 | 0 | /docs/events |
| 1 | 0 | /community/feature-videos |
| 3 | 0 | /python/docs/frames |
| 124 | 0 | /docs/api/class-page |
| 3 | 0 | /java/docs/frames |
| 3 | 0 | /dotnet/docs/frames |
| 63 | 0 | /docs/api/class-frame |
| 4 | 0 | /python/docs/touch-events |
| 4 | 0 | /dotnet/docs/touch-events |
| 68 | 0 | /docs/api/class-locator |
| 4 | 0 | /java/docs/touch-events |
| 9 | 0 | /docs/testing-library |
| 16 | 0 | /docs/ci |
| 9 | 0 | /docs/api/class-browsertype |
| 12 | 0 | /python/docs/docker |
| 11 | 0 | /java/docs/docker |
| 11 | 0 | /docs/selenium-grid |
| 12 | 0 | /dotnet/docs/docker |
| 3 | 0 | /python/docs/chrome-extensions |
| 8 | 0 | /docs/api/class-dialog |
| 5 | 0 | /dotnet/docs/dialogs |
| 5 | 0 | /java/docs/dialogs |
| 5 | 0 | /python/docs/dialogs |
| 20 | 0 | /python/docs/other-locators |
| 20 | 0 | /java/docs/other-locators |
| 20 | 0 | /dotnet/docs/other-locators |
| 34 | 0 | /docs/api/class-locatorassertions |
| 5 | 0 | /dotnet/docs/trace-viewer-intro |
| 5 | 0 | /java/docs/trace-viewer-intro |
| 5 | 0 | /python/docs/trace-viewer-intro |
| 8 | 0 | /docs/api/class-route |
| 36 | 0 | /docs/api/class-testoptions |
| 15 | 0 | /docs/api/class-browser |
| 6 | 0 | /java/docs/test-runners |
| 48 | 0 | /docs/api/class-browsercontext |
| 22 | 0 | /python/docs/test-runners |
| 8 | 0 | /dotnet/docs/test-runners |
| 36 | 0 | /docs/api/class-genericassertions |
| 8 | 0 | /docs/api/class-pageassertions |
| 5 | 0 | /docs/api/class-apiresponseassertions |
| 5 | 0 | /dotnet/docs/test-assertions |
| 41 | 0 | /docs/api/class-testconfig |
| 2 | 0 | /java/docs/test-assertions |
| 6 | 0 | /python/docs/test-assertions |
| 5 | 0 | /java/docs/screenshots |
| 5 | 0 | /python/docs/screenshots |
| 5 | 0 | /dotnet/docs/screenshots |
| 40 | 0 | /docs/api/class-testinfo |
| 23 | 0 | /docs/api/class-testproject |
| 31 | 0 | /docs/api/class-test |
| 7 | 0 | /dotnet/docs/browser-contexts |
| 7 | 0 | /python/docs/browser-contexts |
| 7 | 0 | /java/docs/browser-contexts |
| 7 | 0 | /python/docs/navigations |
| 7 | 0 | /dotnet/docs/navigations |
| 7 | 0 | /java/docs/navigations |
| 12 | 0 | /python/docs/library |
| 5 | 0 | /dotnet/docs/library |
| 17 | 0 | /java/docs/trace-viewer |
| 8 | 0 | /docs/api/class-tracing |
| 17 | 0 | /python/docs/trace-viewer |
| 18 | 0 | /dotnet/docs/trace-viewer |
| 3 | 0 | /java/docs/videos |
| 3 | 0 | /dotnet/docs/videos |
| 3 | 0 | /python/docs/videos |
| 7 | 0 | /dotnet/docs/auth |
| 7 | 0 | /java/docs/auth |
| 7 | 0 | /python/docs/auth |
| 11 | 0 | /docs/api/class-apirequestcontext |
| 11 | 0 | /dotnet/docs/writing-tests |
| 6 | 0 | /java/docs/writing-tests |
| 11 | 0 | /python/docs/writing-tests |
| 10 | 0 | /python/docs/running-tests |
| 11 | 0 | /dotnet/docs/running-tests |
| 4 | 0 | /java/docs/running-tests |
| 7 | 0 | /python/docs/clock |
| 9 | 0 | /docs/api/class-clock |
| 7 | 0 | /dotnet/docs/clock |
| 7 | 0 | /java/docs/clock |
| 2 | 0 | /dotnet/docs/extensibility |
| 3 | 0 | /dotnet/docs/pom |
| 23 | 0 | /dotnet/docs/aria-snapshots |
| 13 | 0 | /dotnet/docs/codegen |
| 2 | 0 | /dotnet/community/ambassadors |
| 2 | 0 | /dotnet/docs/downloads |
| 1 | 0 | /dotnet/community/learn-videos |
| 5 | 0 | /dotnet/docs/pages |
| 11 | 0 | /dotnet/community/welcome |
| 7 | 0 | /dotnet/docs/codegen-intro |
| 139 | 0 | /dotnet/docs/api/class-page |
| 12 | 0 | /dotnet/docs/debug |
| 5 | 0 | /dotnet/docs/evaluating |
| 13 | 0 | /dotnet/docs/input |
| 47 | 0 | /dotnet/docs/api/class-browsercontext |
| 13 | 0 | /dotnet/docs/network |
| 19 | 0 | /dotnet/docs/browsers |
| 4 | 0 | /dotnet/docs/events |
| 12 | 0 | /dotnet/docs/emulation |
| 8 | 0 | /dotnet/docs/api/class-playwright |
| 6 | 0 | /dotnet/docs/languages |
| 186 | 0 | /dotnet/docs/release-notes |
| 9 | 0 | /dotnet/docs/ci-intro |
| 36 | 0 | /dotnet/docs/locators |
| 5 | 0 | /dotnet/docs/webview2 |
| 8 | 0 | /dotnet/docs/handles |
| 9 | 0 | /dotnet/docs/mock |
| 1 | 0 | /dotnet/community/feature-videos |
| 10 | 0 | /dotnet/docs/api-testing |
| 9 | 0 | /dotnet/docs/actionability |
| 13 | 0 | /docs/api/class-reporter |
| 12 | 0 | /python/docs/debug |
| 12 | 0 | /java/docs/debug |
| 21 | 0 | /docs/api/class-request |
| 13 | 0 | /java/docs/network |
| 20 | 0 | /docs/api/class-response |
| 13 | 0 | /python/docs/network |
| 10 | 0 | /docs/api/class-websocket |
| 7 | 0 | /docs/api/class-fixtures |
| 9 | 0 | /docs/puppeteer |
| 7 | 0 | /python/docs/codegen-intro |
| 7 | 0 | /java/docs/codegen-intro |
| 1 | 0 | /community/release-videos |
You have reached the hard limit of 200 rows as a protection against very large output or exhausted memory. You can change this with --rows-limit. | |||
| No rows found, please edit your search term. | |||
404 URLs
Found 142 row(s).
Redirected URLs
No redirects found.
Skipped URLs Summary
Found 94 row(s).
| Reason | Domain | Unique URLs 🔽 |
|---|---|---|
| Not allowed host | developer.mozilla.org | 101 |
| Not allowed host | github.com | 51 |
| Not allowed host | docs.oracle.com | 15 |
| Not allowed host | docs.github.com | 13 |
| Not allowed host | docs.microsoft.com | 11 |
| Not allowed host | twitter.com | 9 |
| Not allowed host | docs.python.org | 9 |
| Not allowed host | nodejs.org | 9 |
| Not allowed host | testing-library.com | 7 |
| Not allowed host | en.wikipedia.org | 7 |
| Not allowed host | developer.chrome.com | 7 |
| Not allowed host | learn.microsoft.com | 7 |
| Not allowed host | docs.pytest.org | 6 |
| Not allowed host | accessibilityinsights.io | 5 |
| Not allowed host | www.npmjs.com | 5 |
| Not allowed host | junit.org | 5 |
| Not allowed host | www.nuget.org | 5 |
| Not allowed host | www.w3.org | 4 |
| Not allowed host | mcr.microsoft.com | 4 |
| Not allowed host | code.visualstudio.com | 4 |
| Not allowed host | www.linkedin.com | 3 |
| Not allowed host | www.typescriptlang.org | 3 |
| Not allowed host | stackoverflow.com | 3 |
| Not allowed host | pypi.org | 3 |
| Not allowed host | w3c.github.io | 3 |
| Not allowed host | anaconda.org | 3 |
| Not allowed host | www.deque.com | 2 |
| Not allowed host | youtu.be | 2 |
| Not allowed host | docs.gitlab.com | 2 |
| Not allowed host | linktr.ee | 2 |
| Not allowed host | www.selenium.dev | 2 |
| Not allowed host | www.chromium.org | 2 |
| Not allowed host | chrome.google.com | 2 |
| Not allowed host | dev.to | 2 |
| Not allowed host | www.softwareishard.com | 2 |
| Not allowed host | maven.apache.org | 2 |
| Not allowed host | javadoc.io | 2 |
| Not allowed host | docusaurus.io | 1 |
| Not allowed host | v2.docusaurus.io | 1 |
| Not allowed host | vuejs.org | 1 |
| Not allowed host | developer.github.com | 1 |
| Not allowed host | www.hotstar.com | 1 |
| Not allowed host | trace.playwright.dev | 1 |
| Not allowed host | hacks.mozilla.org | 1 |
| Not allowed host | chromedevtools.github.io | 1 |
| Not allowed host | groups.google.com | 1 |
| Not allowed host | xunit.net | 1 |
| Not allowed host | pypi.python.org | 1 |
| Not allowed host | realpython.com | 1 |
| Not allowed host | discord.com | 1 |
| Not allowed host | jestjs.io | 1 |
| Not allowed host | www.javadoc.io | 1 |
| Not allowed host | www.mozilla.org | 1 |
| Not allowed host | www.vuemastery.com | 1 |
| Not allowed host | svelte.dev | 1 |
| Not allowed host | mvnrepository.com | 1 |
| Not allowed host | mozilla.github.io | 1 |
| Not allowed host | playwrightsolutions.com | 1 |
| Not allowed host | www.google.com | 1 |
| Not allowed host | www.howtogeek.com | 1 |
| Not allowed host | docs.google.com | 1 |
| Not allowed host | www.protractortest.org | 1 |
| Not allowed host | www.reactjsconsulting.com | 1 |
| Not allowed host | www.electronjs.org | 1 |
| Not allowed host | aka.ms | 1 |
| Not allowed host | pytest-asyncio.readthedocs.io | 1 |
| Not allowed host | chromium.googlesource.com | 1 |
| Not allowed host | devblogs.microsoft.com | 1 |
| Not allowed host | googlechromelabs.github.io | 1 |
| Not allowed host | npmjs.org | 1 |
| Not allowed host | confluence.atlassian.com | 1 |
| Not allowed host | reactjs.org | 1 |
| Not allowed host | mswjs.io | 1 |
| Not allowed host | vitejs.dev | 1 |
| Not allowed host | testng.org | 1 |
| Not allowed host | yaml.org | 1 |
| Not allowed host | www.youtube.com | 1 |
| Not allowed host | circleci.com | 1 |
| Not allowed host | hub.docker.com | 1 |
| Not allowed host | docs.docker.com | 1 |
| Not allowed host | web.dev | 1 |
| Not allowed host | peter.sh | 1 |
| Not allowed host | bugs.chromium.org | 1 |
| Not allowed host | marketplace.visualstudio.com | 1 |
| Not allowed host | www.pyinstaller.org | 1 |
| Not allowed host | nodejs.dev | 1 |
| Not allowed host | developers.google.com | 1 |
| Not allowed host | html.spec.whatwg.org | 1 |
| Not allowed host | applitools.com | 1 |
| Not allowed host | vite.dev | 1 |
| Not allowed host | support.mozilla.org | 1 |
| Not allowed host | developer.android.com | 1 |
| Not allowed host | typescript-eslint.io | 1 |
| Not allowed host | wiki.mozilla.org | 1 |
| No rows found, please edit your search term. | ||
Skipped URLs
Found 200 row(s).
External URLs
381 external URL(s) Found 200 row(s).
TOP fastest URLs
Found 20 row(s).
| Time 🔼 | Status | Fast URL |
|---|---|---|
| 8 ms | 200 | /docs/test-configuration |
| 8 ms | 200 | /docs/codegen-intro |
| 8 ms | 200 | /docs/emulation |
| 8 ms | 200 | /docs/test-agents |
| 8 ms | 200 | /dotnet/docs/intro |
| 8 ms | 200 | /docs/test-parallel |
| 8 ms | 200 | /java/ |
| 9 ms | 200 | /python/docs/intro |
| 9 ms | 200 | /docs/api/class-route |
| 9 ms | 200 | / |
| 9 ms | 200 | /python/ |
| 9 ms | 200 | /docs/other-locators |
| 9 ms | 200 | /docs/api/class-browsercontext |
| 9 ms | 200 | /docs/browsers |
| 9 ms | 200 | /docs/locators |
| 10 ms | 200 | /dotnet/docs/browsers |
| 16 ms | 200 | /docs/accessibility-testing |
| 111 ms | 200 | /docs/events |
| 112 ms | 200 | /docs/frames |
| 112 ms | 200 | /docs/api/class-testresult |
| No rows found, please edit your search term. | ||
TOP slowest URLs
Found 20 row(s).
| Time 🔽 | Status | Slow URL |
|---|---|---|
| 478 ms | 200 | /python/docs/input |
| 463 ms | 200 | /python/docs/pages |
| 417 ms | 200 | /java/docs/navigations |
| 379 ms | 200 | /dotnet/ |
| 316 ms | 200 | /dotnet/docs/navigations |
| 296 ms | 200 | /java/docs/api/class-frame |
| 291 ms | 200 | /python/community/learn-videos |
| 220 ms | 200 | /dotnet/docs/handles |
| 207 ms | 200 | /java/docs/input |
| 206 ms | 200 | /dotnet/docs/dialogs |
| 192 ms | 200 | /python/docs/api/class-locatorassertions |
| 188 ms | 200 | /python/docs/browser-contexts |
| 182 ms | 200 | /dotnet/docs/debug |
| 179 ms | 200 | /java/docs/api/class-locatorassertions |
| 173 ms | 200 | /dotnet/docs/release-notes |
| 171 ms | 200 | /java/404 |
| 170 ms | 200 | /python/docs/test-runners |
| 170 ms | 200 | /docs/webview2 |
| 170 ms | 200 | /java/docs/browser-contexts |
| 168 ms | 200 | /docs/test-annotations |
| No rows found, please edit your search term. | ||
Content types
| Content type | URLs 🔽 | Total size | Total time | Avg time | Status 20x | Status 40x |
|---|---|---|---|---|---|---|
| HTML | 575 | 40 MB | 70 s | 122 ms | 433 | 142 |
Content types (MIME types)
| Content type | URLs 🔽 | Total size | Total time | Avg time | Status 20x | Status 40x |
|---|---|---|---|---|---|---|
| text/html; charset=utf-8 | 575 | 40 MB | 70 s | 122 ms | 433 | 142 |
Source domains
| Domain | Totals | HTML |
|---|---|---|
| playwright.dev | 575 / 40MB / 70s | 575 / 40MB / 70s |
HTTP headers
Found 21 row(s).
| Header 🔼 | Occurs | Unique | Values preview | Min value | Max value |
|---|---|---|---|---|---|
| Accept-Ranges | 575 | 1 | bytes | ||
| Access-Control-Allow-Origin | 575 | 1 | * | ||
| Age | 575 | - | [ignored generic values] | 0 sec(s) | 26.9 min(s) |
| Cache-Control | 433 | 1 | max-age=600 | ||
| Content-Type | 575 | 1 | text/html; charset=utf-8 | ||
| Date | 575 | - | [ignored generic values] | 2026-03-24 | 2026-03-24 |
| Etag | 575 | - | [ignored generic values] | ||
| Expires | 433 | - | [ignored generic values] | 2026-03-18 | 2026-03-24 |
| Last-Modified | 433 | - | [ignored generic values] | 2026-03-18 | 2026-03-18 |
| Server | 575 | 1 | GitHub.com | ||
| Strict-Transport-Security | 575 | 1 | max-age=31556952 | ||
| Vary | 575 | 1 | Accept-Encoding | ||
| Via | 575 | 1 | 1.1 varnish | ||
| X-Cache | 575 | 2 | MISS (408) / HIT (167) | ||
| X-Cache-Hits | 575 | 2 | 0 (568) / 1 (7) | ||
| X-Fastly-Request-Id | 575 | 20+ | [see values below] | ||
| X-Github-Request-Id | 575 | 20+ | [see values below] | ||
| X-Origin-Cache | 537 | 1 | HIT | ||
| X-Proxy-Cache | 575 | 2 | MISS (573) / HIT (2) | ||
| X-Served-By | 575 | 1 | cache-bma-essb1270035-BMA | ||
| X-Timer | 575 | 20+ | [see values below] | ||
| No rows found, please edit your search term. | |||||
HTTP header values
Found 76 row(s).
| Header | Occurs | Value |
|---|---|---|
| Accept-Ranges | 575 | bytes |
| Access-Control-Allow-Origin | 575 | * |
| Cache-Control | 433 | max-age=600 |
| Content-Type | 575 | text/html; charset=utf-8 |
| Server | 575 | GitHub.com |
| Strict-Transport-Security | 575 | max-age=31556952 |
| Vary | 575 | Accept-Encoding |
| Via | 575 | 1.1 varnish |
| X-Cache | 408 | MISS |
| X-Cache | 167 | HIT |
| X-Cache-Hits | 568 | 0 |
| X-Cache-Hits | 7 | 1 |
| X-Fastly-Request-Id | 1 | 2de853e2285a78ce1d9ed65323b38169daefe990 |
| X-Fastly-Request-Id | 1 | ce08f0197f31643cdf1163deedf4f7e81f18c775 |
| X-Fastly-Request-Id | 1 | 7f051b2afc988b70f68a4f1b663480c739fc2661 |
| X-Fastly-Request-Id | 1 | 04338a6c949fb4438c91f3f6697da91339e55e69 |
| X-Fastly-Request-Id | 1 | 604709764fae0cbffb67088f7766d04891baf8b3 |
| X-Fastly-Request-Id | 1 | c72233e3f01abf5b28d06aefb9158e29663e344f |
| X-Fastly-Request-Id | 1 | 6f9a431db5c0be170f73acf2b9f615f33ec18dc4 |
| X-Fastly-Request-Id | 1 | 0d7dc74dc25a1b2c563dfa8ce1140dab69b34036 |
| X-Fastly-Request-Id | 1 | 17dfee8a60d0bbc9bcde084e09ec74d3cbd4772e |
| X-Fastly-Request-Id | 1 | e7383404cbdf4583b4bb1f1454bf65538178d1db |
| X-Fastly-Request-Id | 1 | a27e5f975c967b4dad07086edf9f9d9ca84c0785 |
| X-Fastly-Request-Id | 1 | 2349359e9cf4bd6b364a87def31367570abe43eb |
| X-Fastly-Request-Id | 1 | fd1af3649ebcb45d8c5702878c9bc11c1c63ecc3 |
| X-Fastly-Request-Id | 1 | 63c1acad6895994d7090d054974cf9603ecabd0f |
| X-Fastly-Request-Id | 1 | 17a7148aa8a25db8243b7f14c409c459c91b172d |
| X-Fastly-Request-Id | 1 | 58cb755089ecf371a2a22fb974faecf8984efee8 |
| X-Fastly-Request-Id | 1 | 70b105ef46356f5c639a7437fc2f4e45248f563c |
| X-Fastly-Request-Id | 1 | c05950b9d6ce98694700f899058ba2fc1ec1cbf8 |
| X-Fastly-Request-Id | 1 | c7938c9c204579d091518de96026df29faaef52a |
| X-Fastly-Request-Id | 1 | d6ef857cfd6f9669219e8653ef3527154c81b427 |
| X-Github-Request-Id | 1 | F75A:A86BB:3FD02C:4A71D0:69C27BC3 |
| X-Github-Request-Id | 1 | 47D6:0A63:26F582:2D8AC9:69C2502E |
| X-Github-Request-Id | 1 | DDBC:56E8C:3F2E7D:49CDF0:69C27B0C |
| X-Github-Request-Id | 1 | 75F2:94BCC:3A990C:44C56C:69C24440 |
| X-Github-Request-Id | 1 | CDF8:0A54:3E2EA3:48B959:69C27445 |
| X-Github-Request-Id | 1 | DE70:0A63:2ADC91:31CDE0:69C27BBD |
| X-Github-Request-Id | 1 | F698:0A5F:1C7C3D:20F4E0:69C260FD |
| X-Github-Request-Id | 1 | D1A2:CAEDB:3F1A29:49AB05:69C27416 |
| X-Github-Request-Id | 1 | A8E0:116CF2:3F49B0:49EA86:69C27BA8 |
| X-Github-Request-Id | 1 | 8088:0A3E:1CA531:207291:69C277C0 |
| X-Github-Request-Id | 1 | F02E:0A52:125985:145D5B:69C28501 |
| X-Github-Request-Id | 1 | 5632:116CF2:3F2E14:49CC78:69C27A7C |
| X-Github-Request-Id | 1 | CA56:CAEDB:3E9F87:492476:69C26E67 |
| X-Github-Request-Id | 1 | 59CE:0A4A:100DF8:11DAE0:69C27BB4 |
| X-Github-Request-Id | 1 | 58CC:4DBE3:3ADB4F:4511C9:69C2490A |
| X-Github-Request-Id | 1 | 256E:A86BB:3E00E9:48758F:69C2669C |
| X-Github-Request-Id | 1 | F2FE:0A5F:1EA847:2359C1:69C27BBD |
| X-Github-Request-Id | 1 | 3302:116CF2:3865F4:426066:69C22C9A |
| X-Github-Request-Id | 1 | 8A20:0A4A:100FCE:11DCD8:69C27BC2 |
| X-Github-Request-Id | 1 | ED42:0A3E:180FA7:1B7462:69C24634 |
| X-Origin-Cache | 537 | HIT |
| X-Proxy-Cache | 573 | MISS |
| X-Proxy-Cache | 2 | HIT |
| X-Served-By | 575 | cache-bma-essb1270035-BMA |
| X-Timer | 1 | S1774355713.970729,VS0,VE108 |
| X-Timer | 1 | S1774355713.070878,VS0,VE107 |
| X-Timer | 1 | S1774355714.171022,VS0,VE110 |
| X-Timer | 1 | S1774355713.769556,VS0,VE104 |
| X-Timer | 1 | S1774355714.270808,VS0,VE114 |
| X-Timer | 1 | S1774355714.370451,VS0,VE121 |
| X-Timer | 1 | S1774355715.570728,VS0,VE107 |
| X-Timer | 1 | S1774355714.970580,VS0,VE113 |
| X-Timer | 1 | S1774355714.570972,VS0,VE108 |
| X-Timer | 1 | S1774355713.370908,VS0,VE108 |
| X-Timer | 1 | S1774355713.470457,VS0,VE1 |
| X-Timer | 1 | S1774355714.771204,VS0,VE115 |
| X-Timer | 1 | S1774355714.071161,VS0,VE1 |
| X-Timer | 1 | S1774355713.171044,VS0,VE121 |
| X-Timer | 1 | S1774355714.670578,VS0,VE106 |
| X-Timer | 1 | S1774355714.470887,VS0,VE106 |
| X-Timer | 1 | S1774355713.270973,VS0,VE108 |
| X-Timer | 1 | S1774355713.620362,VS0,VE107 |
| X-Timer | 1 | S1774355713.871083,VS0,VE110 |
| X-Timer | 1 | S1774355714.870801,VS0,VE110 |
| No rows found, please edit your search term. | ||
HTTP Caching by content type (only from crawlable domains)
| Content type | Cache type | URLs 🔽 | AVG lifetime | MIN lifetime | MAX lifetime |
|---|---|---|---|---|---|
| HTML | Cache-Control + ETag + Last-Modified | 433 | 10 min | 10 min | 10 min |
| HTML | ETag | 142 | - | - | - |
HTTP Caching by domain
| Domain | Cache type | URLs 🔽 | AVG lifetime | MIN lifetime | MAX lifetime |
|---|---|---|---|---|---|
| playwright.dev | Cache-Control + ETag + Last-Modified | 433 | 10 min | 10 min | 10 min |
| playwright.dev | ETag | 142 | - | - | - |
HTTP Caching by domain and content type
| Domain | Content type | Cache type | URLs 🔽 | AVG lifetime | MIN lifetime | MAX lifetime |
|---|---|---|---|---|---|---|
| playwright.dev | HTML | Cache-Control + ETag + Last-Modified | 433 | 10 min | 10 min | 10 min |
| playwright.dev | HTML | ETag | 142 | - | - | - |
DNS info
| DNS resolving tree |
|---|
| playwright.dev |
| IPv4: 185.199.111.153 |
| IPv4: 185.199.109.153 |
| IPv4: 185.199.110.153 |
| IPv4: 185.199.108.153 |
| DNS server: 127.0.0.53 |
SSL/TLS info
| Info | Text |
|---|---|
| Issuer | C = US, O = Let's Encrypt, CN = R12 |
| Subject | CN = playwright.dev |
| Valid from | Feb 21 16:34:41 2026 GMT (VALID already 30.8 day(s)) |
| Valid to | May 22 16:34:40 2026 GMT (VALID still for 59.2 day(s)) |
| Supported protocols | TLSv1.2, TLSv1.3 |
| RAW certificate output | Certificate: Data: Version: 3 (0x2) Serial Number: 05:c9:1d:03:5d:5c:f6:1d:c0:4d:4c:6f:5f:c9:3c:b7:cc:4f Signature Algorithm: sha256WithRSAEncryption Issuer: C = US, O = Let's Encrypt, CN = R12 Validity Not Before: Feb 21 16:34:41 2026 GMT Not After : May 22 16:34:40 2026 GMT Subject: CN = playwright.dev Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: 00:98:98:58:eb:ec:cb:b6:77:81:e8:70:0e:87:22: 31:ef:d2:63:63:67:01:9c:90:4e:10:16:94:9c:f5: 19:b6:05:30:56:b6:82:41:62:d4:31:0b:79:c0:d4: e1:c1:36:13:1f:5c:70:16:21:d0:1c:53:13:8c:3c: 0c:8c:5d:15:47:f8:c7:94:29:41:8f:c2:e3:b2:29: b6:1b:77:8d:a8:73:ea:d8:63:91:37:d2:26:50:61: a1:04:bd:fa:76:22:06:a5:a0:3d:dc:07:4b:8f:b7: 06:24:b6:17:92:2e:c9:ae:dc:16:2c:2c:c3:6c:94: 23:2d:9f:9d:d4:40:da:98:26:3d:67:87:37:b6:4c: a4:a3:ee:52:31:e3:87:2c:ed:38:ee:70:a5:b5:98: 7d:c3:87:96:fb:2e:45:6c:a2:6c:24:ff:63:42:b6: e4:7c:d4:5f:6b:96:73:24:7a:0c:a5:89:68:86:f1: 71:03:79:53:0e:88:1c:6e:5a:a5:f0:80:0c:66:0d: a4:a2:20:b5:b9:09:1c:00:35:8f:3c:89:a7:8a:8c: 4e:57:fd:1e:28:19:3a:63:d0:56:03:e9:f5:32:0d: 37:40:3f:9a:90:71:33:d7:d7:b4:7e:41:48:b4:05: aa:8e:f7:65:36:87:87:66:ca:ff:6d:83:43:ef:48: ac:8d Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Key Usage: critical Digital Signature, Key Encipherment X509v3 Extended Key Usage: TLS Web Server Authentication X509v3 Basic Constraints: critical CA:FALSE X509v3 Subject Key Identifier: 58:C9:B2:AA:68:E6:A5:48:CC:D8:2B:E8:42:B2:BF:7F:BE:45:66:68 X509v3 Authority Key Identifier: 00:B5:29:F2:2D:8E:6F:31:E8:9B:4C:AD:78:3E:FA:DC:E9:0C:D1:D2 Authority Information Access: CA Issuers - URI:http://r12.i.lencr.org/ X509v3 Subject Alternative Name: DNS:playwright.dev, DNS:www.playwright.dev X509v3 Certificate Policies: Policy: 2.23.140.1.2.1 X509v3 CRL Distribution Points: Full Name: URI:http://r12.c.lencr.org/80.crl CT Precertificate SCTs: Signed Certificate Timestamp: Version : v1 (0x0) Log ID : 64:11:C4:6C:A4:12:EC:A7:89:1C:A2:02:2E:00:BC:AB: 4F:28:07:D4:1E:35:27:AB:EA:FE:D5:03:C9:7D:CD:F0 Timestamp : Feb 21 17:33:11.067 2026 GMT Extensions: none Signature : ecdsa-with-SHA256 30:46:02:21:00:A7:16:FF:AA:97:20:5A:23:8F:1D:E3: A7:75:FA:3D:FA:CF:C9:59:6B:59:F2:4B:00:73:E7:E6: 2E:B1:48:43:A3:02:21:00:8F:DD:07:75:FE:DB:D4:B0: C1:DC:8F:7B:A3:AA:8E:69:01:FD:30:DA:CF:55:AD:56: B3:F6:08:73:14:08:D0:10 Signed Certificate Timestamp: Version : v1 (0x0) Log ID : CB:38:F7:15:89:7C:84:A1:44:5F:5B:C1:DD:FB:C9:6E: F2:9A:59:CD:47:0A:69:05:85:B0:CB:14:C3:14:58:E7 Timestamp : Feb 21 17:33:13.094 2026 GMT Extensions: none Signature : ecdsa-with-SHA256 30:45:02:20:18:16:25:69:4F:2D:CF:E3:61:F2:4F:6B: FB:A6:EE:7A:47:56:DE:15:E6:77:BE:37:EB:10:E5:9C: 8A:CA:89:5D:02:21:00:C8:4D:8F:6F:3E:B8:70:45:5D: 8A:2A:AB:AA:B3:B0:15:28:B9:F2:5E:53:1B:AF:00:1B: FC:95:5C:22:86:40:98 Signature Algorithm: sha256WithRSAEncryption Signature Value: 17:a7:c6:6d:33:78:e8:6e:9e:f1:7e:8c:e6:b3:ba:e1:50:de: 77:b2:a9:0a:97:ed:c0:f1:9f:37:e9:45:b7:ee:13:6c:c6:96: 1e:1b:3a:5d:e9:d4:d5:6c:b6:c3:c0:a0:2d:e8:4f:04:ae:bf: 6d:53:e9:a6:9e:65:7a:f5:72:40:9c:7c:72:16:a1:3b:6f:b5: 73:11:3e:db:b8:91:59:5f:43:67:e9:65:88:05:d6:56:85:41: 26:1d:c9:98:a8:fe:70:34:d5:ee:f2:2c:49:75:5a:20:72:ae: 3f:23:e2:a7:f2:5a:14:af:0c:cc:7d:b8:ec:9f:ab:5e:be:e0: 80:95:b1:f1:46:8f:bb:35:a4:a3:60:75:d4:97:fe:1d:83:d0: 52:0c:32:2e:8b:d4:08:80:6a:fc:05:30:f1:74:b6:fa:61:37: e2:e2:39:11:67:ff:0c:55:02:da:68:ea:40:bb:c9:4d:83:6b: cf:2c:43:91:74:04:79:8f:17:48:64:e7:aa:d0:81:f0:7f:f4: 1a:31:33:91:5f:ce:8e:c3:6b:f1:ad:bb:6e:3e:3e:e7:fc:d8: c0:1f:ef:ab:e8:0d:2c:85:32:6c:00:90:ea:06:eb:8a:d2:8e: d6:6f:5f:32:16:51:83:9d:84:f6:f9:d4:58:e5:69:2e:f8:18: 6b:55:37:56 |
| RAW protocols output | === ssl2 === s_client: Unknown option: -ssl2 s_client: Use -help for summary. === ssl3 === s_client: Unknown option: -ssl3 s_client: Use -help for summary. === tls1 === 4067F5BE417B0000:error:0A0000BF:SSL routines:tls_setup_handshake:no protocols available:../ssl/statem/statem_lib.c:104: CONNECTED(00000003) --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 0 bytes and written 7 bytes Verification: OK --- New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent Verify return code: 0 (ok) --- === tls1_1 === 407738D30A770000:error:0A0000BF:SSL routines:tls_setup_handshake:no protocols available:../ssl/statem/statem_lib.c:104: CONNECTED(00000003) --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 0 bytes and written 7 bytes Verification: OK --- New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent Verify return code: 0 (ok) --- === tls1_2 === depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1 verify return:1 depth=1 C = US, O = Let's Encrypt, CN = R12 verify return:1 depth=0 CN = playwright.dev verify return:1 CONNECTED(00000003) --- Certificate chain 0 s:CN = playwright.dev i:C = US, O = Let's Encrypt, CN = R12 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Feb 21 16:34:41 2026 GMT; NotAfter: May 22 16:34:40 2026 GMT 1 s:C = US, O = Let's Encrypt, CN = R12 i:C = US, O = Internet Security Research Group, CN = ISRG Root X1 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Mar 13 00:00:00 2024 GMT; NotAfter: Mar 12 23:59:59 2027 GMT --- Server certificate -----BEGIN CERTIFICATE----- MIIFAzCCA+ugAwIBAgISBckdA11c9h3ATUxvX8k8t8xPMA0GCSqGSIb3DQEBCwUA MDMxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQwwCgYDVQQD EwNSMTIwHhcNMjYwMjIxMTYzNDQxWhcNMjYwNTIyMTYzNDQwWjAZMRcwFQYDVQQD Ew5wbGF5d3JpZ2h0LmRldjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AJiYWOvsy7Z3gehwDociMe/SY2NnAZyQThAWlJz1GbYFMFa2gkFi1DELecDU4cE2 Ex9ccBYh0BxTE4w8DIxdFUf4x5QpQY/C47Iptht3jahz6thjkTfSJlBhoQS9+nYi BqWgPdwHS4+3BiS2F5Iuya7cFiwsw2yUIy2fndRA2pgmPWeHN7ZMpKPuUjHjhyzt OO5wpbWYfcOHlvsuRWyibCT/Y0K25HzUX2uWcyR6DKWJaIbxcQN5Uw6IHG5apfCA DGYNpKIgtbkJHAA1jzyJp4qMTlf9HigZOmPQVgPp9TINN0A/mpBxM9fXtH5BSLQF qo73ZTaHh2bK/22DQ+9IrI0CAwEAAaOCAikwggIlMA4GA1UdDwEB/wQEAwIFoDAT BgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBRYybKq aOalSMzYK+hCsr9/vkVmaDAfBgNVHSMEGDAWgBQAtSnyLY5vMeibTK14Pvrc6QzR 0jAzBggrBgEFBQcBAQQnMCUwIwYIKwYBBQUHMAKGF2h0dHA6Ly9yMTIuaS5sZW5j ci5vcmcvMC0GA1UdEQQmMCSCDnBsYXl3cmlnaHQuZGV2ghJ3d3cucGxheXdyaWdo dC5kZXYwEwYDVR0gBAwwCjAIBgZngQwBAgEwLgYDVR0fBCcwJTAjoCGgH4YdaHR0 cDovL3IxMi5jLmxlbmNyLm9yZy84MC5jcmwwggEFBgorBgEEAdZ5AgQCBIH2BIHz APEAdwBkEcRspBLsp4kcogIuALyrTygH1B41J6vq/tUDyX3N8AAAAZyBQzQbAAAE AwBIMEYCIQCnFv+qlyBaI48d46d1+j36z8lZa1nySwBz5+YusUhDowIhAI/dB3X+ 29SwwdyPe6OqjmkB/TDaz1WtVrP2CHMUCNAQAHYAyzj3FYl8hKFEX1vB3fvJbvKa Wc1HCmkFhbDLFMMUWOcAAAGcgUM8BgAABAMARzBFAiAYFiVpTy3P42HyT2v7pu56 R1beFeZ3vjfrEOWcisqJXQIhAMhNj28+uHBFXYoqq6qzsBUoufJeUxuvABv8lVwi hkCYMA0GCSqGSIb3DQEBCwUAA4IBAQAXp8ZtM3jobp7xfozms7rhUN53sqkKl+3A 8Z836UW37hNsxpYeGzpd6dTVbLbDwKAt6E8Err9tU+mmnmV69XJAnHxyFqE7b7Vz ET7buJFZX0Nn6WWIBdZWhUEmHcmYqP5wNNXu8ixJdVogcq4/I+Kn8loUrwzMfbjs n6tevuCAlbHxRo+7NaSjYHXUl/4dg9BSDDIui9QIgGr8BTDxdLb6YTfi4jkRZ/8M VQLaaOpAu8lNg2vPLEORdAR5jxdIZOeq0IHwf/QaMTORX86Ow2vxrbtuPj7n/NjA H++r6A0shTJsAJDqBuuK0o7Wb18yFlGDnYT2+dRY5Wku+BhrVTdW -----END CERTIFICATE----- subject=CN = playwright.dev issuer=C = US, O = Let's Encrypt, CN = R12 --- No client certificate CA names sent Peer signing digest: SHA256 Peer signature type: RSA-PSS Server Temp Key: X25519, 253 bits --- SSL handshake has read 3231 bytes and written 296 bytes Verification: OK --- New, TLSv1.2, Cipher is ECDHE-RSA-CHACHA20-POLY1305 Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.2 Cipher : ECDHE-RSA-CHACHA20-POLY1305 Session-ID: 82073B180FF73EA8B1725C8DC25F87007F779017CBFDE1FFA0E057365707AE2F Session-ID-ctx: Master-Key: 23D0A46D36F0F8A665ACF80FA799A5D840C7F30A983A48F5F21F68D0BBF533CAEB51358FEFAC9DF290AD69A163735DE3 PSK identity: None PSK identity hint: None SRP username: None TLS session ticket lifetime hint: 86400 (seconds) TLS session ticket: 0000 - 79 8f 2a 4d c1 17 c6 8a-fe 2b b0 05 4d 27 4d 2e y.*M.....+..M'M. 0010 - 7f 85 1d 57 0f 43 19 3f-fc 5f 6c c7 60 82 80 44 ...W.C.?._l.`..D 0020 - 04 66 d7 b4 11 75 7d 62-18 0f b4 c1 1f 1e 45 e6 .f...u}b......E. 0030 - 9a 28 f0 86 0f 5b 02 e4-50 c8 90 28 a1 66 77 b3 .(...[..P..(.fw. 0040 - b1 1d 0c c9 8b fc 41 fe-74 cd fb 24 f9 67 e1 6f ......A.t..$.g.o 0050 - ac b4 3a d3 70 af 03 87-b0 44 df 0a bb 4a ea 14 ..:.p....D...J.. 0060 - a1 67 bd a4 58 83 03 38-b4 6c 59 1f cc 13 7e 23 .g..X..8.lY...~# 0070 - 83 cd 67 9a 08 58 49 15-bb 0d 39 96 8f f2 ab 60 ..g..XI...9....` 0080 - e9 e3 de 3e b9 75 96 34-98 d2 77 f8 c1 d6 ee 27 ...>.u.4..w....' 0090 - 92 13 d0 77 10 95 6c 33-68 4b 17 37 29 84 b6 f7 ...w..l3hK.7)... 00a0 - 9d bb 70 74 45 74 1a 79-bc 50 48 a2 93 12 8f f2 ..ptEt.y.PH..... 00b0 - fd e8 fe 74 6f b0 f5 f3-48 26 33 f6 5c be 1c c6 ...to...H&3.\... Start Time: 1774355770 Timeout : 7200 (sec) Verify return code: 0 (ok) Extended master secret: yes --- DONE === tls1_3 === depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1 verify return:1 depth=1 C = US, O = Let's Encrypt, CN = R12 verify return:1 depth=0 CN = playwright.dev verify return:1 CONNECTED(00000003) --- Certificate chain 0 s:CN = playwright.dev i:C = US, O = Let's Encrypt, CN = R12 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Feb 21 16:34:41 2026 GMT; NotAfter: May 22 16:34:40 2026 GMT 1 s:C = US, O = Let's Encrypt, CN = R12 i:C = US, O = Internet Security Research Group, CN = ISRG Root X1 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Mar 13 00:00:00 2024 GMT; NotAfter: Mar 12 23:59:59 2027 GMT --- Server certificate -----BEGIN CERTIFICATE----- MIIFAzCCA+ugAwIBAgISBckdA11c9h3ATUxvX8k8t8xPMA0GCSqGSIb3DQEBCwUA MDMxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQwwCgYDVQQD EwNSMTIwHhcNMjYwMjIxMTYzNDQxWhcNMjYwNTIyMTYzNDQwWjAZMRcwFQYDVQQD Ew5wbGF5d3JpZ2h0LmRldjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AJiYWOvsy7Z3gehwDociMe/SY2NnAZyQThAWlJz1GbYFMFa2gkFi1DELecDU4cE2 Ex9ccBYh0BxTE4w8DIxdFUf4x5QpQY/C47Iptht3jahz6thjkTfSJlBhoQS9+nYi BqWgPdwHS4+3BiS2F5Iuya7cFiwsw2yUIy2fndRA2pgmPWeHN7ZMpKPuUjHjhyzt OO5wpbWYfcOHlvsuRWyibCT/Y0K25HzUX2uWcyR6DKWJaIbxcQN5Uw6IHG5apfCA DGYNpKIgtbkJHAA1jzyJp4qMTlf9HigZOmPQVgPp9TINN0A/mpBxM9fXtH5BSLQF qo73ZTaHh2bK/22DQ+9IrI0CAwEAAaOCAikwggIlMA4GA1UdDwEB/wQEAwIFoDAT BgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBRYybKq aOalSMzYK+hCsr9/vkVmaDAfBgNVHSMEGDAWgBQAtSnyLY5vMeibTK14Pvrc6QzR 0jAzBggrBgEFBQcBAQQnMCUwIwYIKwYBBQUHMAKGF2h0dHA6Ly9yMTIuaS5sZW5j ci5vcmcvMC0GA1UdEQQmMCSCDnBsYXl3cmlnaHQuZGV2ghJ3d3cucGxheXdyaWdo dC5kZXYwEwYDVR0gBAwwCjAIBgZngQwBAgEwLgYDVR0fBCcwJTAjoCGgH4YdaHR0 cDovL3IxMi5jLmxlbmNyLm9yZy84MC5jcmwwggEFBgorBgEEAdZ5AgQCBIH2BIHz APEAdwBkEcRspBLsp4kcogIuALyrTygH1B41J6vq/tUDyX3N8AAAAZyBQzQbAAAE AwBIMEYCIQCnFv+qlyBaI48d46d1+j36z8lZa1nySwBz5+YusUhDowIhAI/dB3X+ 29SwwdyPe6OqjmkB/TDaz1WtVrP2CHMUCNAQAHYAyzj3FYl8hKFEX1vB3fvJbvKa Wc1HCmkFhbDLFMMUWOcAAAGcgUM8BgAABAMARzBFAiAYFiVpTy3P42HyT2v7pu56 R1beFeZ3vjfrEOWcisqJXQIhAMhNj28+uHBFXYoqq6qzsBUoufJeUxuvABv8lVwi hkCYMA0GCSqGSIb3DQEBCwUAA4IBAQAXp8ZtM3jobp7xfozms7rhUN53sqkKl+3A 8Z836UW37hNsxpYeGzpd6dTVbLbDwKAt6E8Err9tU+mmnmV69XJAnHxyFqE7b7Vz ET7buJFZX0Nn6WWIBdZWhUEmHcmYqP5wNNXu8ixJdVogcq4/I+Kn8loUrwzMfbjs n6tevuCAlbHxRo+7NaSjYHXUl/4dg9BSDDIui9QIgGr8BTDxdLb6YTfi4jkRZ/8M VQLaaOpAu8lNg2vPLEORdAR5jxdIZOeq0IHwf/QaMTORX86Ow2vxrbtuPj7n/NjA H++r6A0shTJsAJDqBuuK0o7Wb18yFlGDnYT2+dRY5Wku+BhrVTdW -----END CERTIFICATE----- subject=CN = playwright.dev issuer=C = US, O = Let's Encrypt, CN = R12 --- No client certificate CA names sent Peer signing digest: SHA256 Peer signature type: RSA-PSS Server Temp Key: X25519, 253 bits --- SSL handshake has read 3126 bytes and written 312 bytes Verification: OK --- New, TLSv1.3, Cipher is TLS_AES_128_GCM_SHA256 Server public key is 2048 bit Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent Verify return code: 0 (ok) --- DONE --- Post-Handshake New Session Ticket arrived: SSL-Session: Protocol : TLSv1.3 Cipher : TLS_AES_128_GCM_SHA256 Session-ID: 3D9F4647A11E9A545023BDB8C5C1DE5B6325A99DE8728236CB60CEE20F0FF345 Session-ID-ctx: Resumption PSK: 5A5E21C631D46BAEBDAD26066FF96F083FD2EF8B809984AF99ADA49C8D9D6590 PSK identity: None PSK identity hint: None SRP username: None TLS session ticket lifetime hint: 86400 (seconds) TLS session ticket: 0000 - 79 8f 2a 4d c1 17 c6 8a-fe 2b b0 05 4d 27 4d 2e y.*M.....+..M'M. 0010 - 39 74 b8 c8 1e 1b 41 5d-94 e2 d5 ff 92 cb 96 6d 9t....A].......m 0020 - 68 80 6b 43 e4 02 e9 dc-ce f0 0d ae 88 0e 28 82 h.kC..........(. 0030 - cb f2 1c b3 c5 96 bd d0-fb 82 e6 5a 6f ae 88 8f ...........Zo... 0040 - 61 ab 3b c9 a9 87 f0 76-6c 7b 0d 39 1d bc 9f b5 a.;....vl{.9.... 0050 - 6b c2 4d 2b ff b2 f7 62-4e 9a 4f aa c7 01 7c cd k.M+...bN.O...|. 0060 - eb d1 db ac 47 7d da 08-78 cc f3 bb c4 0e b4 c9 ....G}..x....... 0070 - cb b4 ef 9d 69 d5 9a 86-fb 44 61 73 ba 46 ba ba ....i....Das.F.. 0080 - 08 74 57 a0 d9 11 58 a8-7f 07 58 13 09 4d d5 9e .tW...X...X..M.. 0090 - f8 ca e4 52 f2 8e 7a ef-a3 e2 3c d3 9b 26 ac ee ...R..z...<..&.. Start Time: 1774355770 Timeout : 7200 (sec) Verify return code: 0 (ok) Extended master secret: no Max Early Data: 0 --- read R BLOCK |
Crawler stats
| Basic stats | |
|---|---|
| Total execution time | 60 s |
| Total URLs | 575 |
| Total size | 40 MB |
| Requests - total time | 70 s |
| Requests - avg time | 122 ms |
| Requests - min time | 8 ms |
| Requests - max time | 479 ms |
| Requests by status | 200: 433 404: 142 |
Analysis stats
Found 21 row(s).
| Class::method | Exec time 🔽 | Exec count |
|---|---|---|
| AccessibilityAnalyzer::checkMissingAriaLabels | 1.7 s | 433 |
| AccessibilityAnalyzer::checkMissingLabels | 1.5 s | 433 |
| BestPracticeAnalyzer::checkHeadingStructure | 1.5 s | 575 |
| AccessibilityAnalyzer::checkMissingRoles | 1.4 s | 433 |
| BestPracticeAnalyzer::checkMaxDOMDepth | 1.2 s | 575 |
| AccessibilityAnalyzer::checkMissingLang | 1.2 s | 433 |
| SslTlsAnalyzer::getTLSandSSLCertificateInfo | 664 ms | 1 |
| BestPracticeAnalyzer::checkMissingQuotesOnAttributes | 583 ms | 575 |
| BestPracticeAnalyzer::checkNonClickablePhoneNumbers | 476 ms | 575 |
| BestPracticeAnalyzer::checkInlineSvg | 229 ms | 575 |
| SeoAndOpenGraphAnalyzer::analyzeHeadings | 56 ms | 1 |
| SecurityAnalyzer::checkHtmlSecurity | 52 ms | 575 |
| AccessibilityAnalyzer::checkImageAltAttributes | 42 ms | 433 |
| SecurityAnalyzer::checkHeaders | 17 ms | 575 |
| SeoAndOpenGraphAnalyzer::analyzeSeo | 1 ms | 1 |
| SeoAndOpenGraphAnalyzer::analyzeOpenGraph | 0 ms | 1 |
| BestPracticeAnalyzer::checkTitleUniqueness | 0 ms | 1 |
| BestPracticeAnalyzer::checkMetaDescriptionUniqueness | 0 ms | 1 |
| BestPracticeAnalyzer::checkBrotliSupport | 0 ms | 1 |
| BestPracticeAnalyzer::checkAvifSupport | 0 ms | 1 |
| BestPracticeAnalyzer::checkWebpSupport | 0 ms | 1 |
| No rows found, please edit your search term. | ||
Content processor stats
Found 12 row(s).
| Class::method | Exec time 🔽 | Exec count |
|---|---|---|
| HtmlProcessor::findUrls | 630 ms | 575 |
| NextJsProcessor::applyContentChangesBeforeUrlParsing | 218 ms | 575 |
| JavaScriptProcessor::findUrls | 206 ms | 575 |
| CssProcessor::findUrls | 13 ms | 575 |
| AstroProcessor::findUrls | 5 ms | 575 |
| AstroProcessor::applyContentChangesBeforeUrlParsing | 0 ms | 575 |
| NextJsProcessor::findUrls | 0 ms | 575 |
| JavaScriptProcessor::applyContentChangesBeforeUrlParsing | 0 ms | 575 |
| SvelteProcessor::findUrls | 0 ms | 575 |
| SvelteProcessor::applyContentChangesBeforeUrlParsing | 0 ms | 575 |
| CssProcessor::applyContentChangesBeforeUrlParsing | 0 ms | 575 |
| HtmlProcessor::applyContentChangesBeforeUrlParsing | 0 ms | 575 |
| No rows found, please edit your search term. | ||
Crawler info
| Version | 2.1.0.20260317 |
|---|---|
| Executed At | 2026-03-24 12:35:10 |
| Command | siteone-crawler --url=https://playwright.dev/docs/intro --markdown-export-dir=/tmp/siteone-playwright --markdown-exclude-selector=header,footer,nav,.sidebar,.menu,.breadcrumb,script,style --timeout=30 --workers=5 --disable-javascript --disable-styles --disable-fonts --disable-images --disable-files --no-color --hide-progress-bar --output=text |
| Hostname | ubuntu-8gb-hel1-1 |
| User-Agent | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/26.0.0.0 Safari/537.36 siteone-crawler/2.1.0.20260317 |