Analyze test execution results with auto-healing, trace visualization, and flakiness detection
To get a detailed, visual replay of your test execution and understand exactly what happened during each step,
Stably provides comprehensive analysis tools for understanding and improving your test suite’s performance.
Playwright Trace: View the standard Playwright trace viewer
The Playwright Trace Viewer provides standard debugging capabilities with step-by-step action replay, screenshot comparisons, timeline visualization, and network activity monitoring. It offers comprehensive console logs and error highlighting to help identify test failures quickly.
The Stably Trace Viewer enhances the debugging experience with AI-powered insights, advanced error analysis, conditional logic visualization, and historical comparison features. It tracks healing attempts and provides action-level details for deeper test execution understanding.
Traces are stored securely in cloud storage and are accessible through the platform’s trace viewer interface.
The Diff View displays AI-suggested test modifications when auto-healing detects outdated tests. For detailed information about how auto-healing works, see AI Auto-heal.Diffview Benefits:
Side-by-side comparison of original vs. AI-modified test steps
Visual screenshot comparisons to validate changes
Accept or edit options - apply changes immediately or use the no-code editor for further refinement
Version control - accepted changes become the new baseline for future test runs
You can configure auto-healing sensitivity levels in AI Agents to control how aggressively the system suggests modifications to your tests.
Use the heatmap to spot reliability issues by identifying tests that consistently fail or show intermittent issues. You can spot tests becoming less reliable over time and get a comprehensive view of your entire test suite’s stability.Interactive features help you analyze patterns: filter by status by clicking legend items to focus on specific test outcomes, hover for detailed information including duration and timestamps, click any cell to navigate to the specific test run, and analyze timeline patterns across recent runs.When flaky tests are identified, prioritize fixes by improving element selectors to be more robust, adding appropriate waits for dynamic content, ensuring consistent test environments, and breaking down complex tests into smaller, focused ones.
Export comprehensive test reports in HTML format by navigating to your test suite run results page and clicking the export button to generate a downloadable HTML report.The exported report includes project and suite information, individual test results with status icons, detailed test steps and descriptions, execution duration metrics, and browser and environment details.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Stably","colors":{"primary":"#0066cc","light":"#3399ff","dark":"#004d99"},"logo":{"light":"https://mintcdn.com/stablyai/HGhEi1a2gNHuIFZi/logo/light.svg?fit=max\u0026auto=format\u0026n=HGhEi1a2gNHuIFZi\u0026q=85\u0026s=4449322f578b7c41cb15e23b398757fd","dark":"https://mintcdn.com/stablyai/HGhEi1a2gNHuIFZi/logo/dark.svg?fit=max\u0026auto=format\u0026n=HGhEi1a2gNHuIFZi\u0026q=85\u0026s=bff755e60e3feac9a76d40bae799f3a4","href":"https://stably.ai"},"favicon":"https://mintcdn.com/stablyai/i-3R7StXQiwq74f4/favicon.svg?fit=max\u0026auto=format\u0026n=i-3R7StXQiwq74f4\u0026q=85\u0026s=22bacb181d3d08f311f19036b62cf3e2","navbar":{"links":[{"href":"mailto:jinjing@stably.ai","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.stably.ai"}},"footer":{"socials":{"x":"https://twitter.com/stablyai","github":"https://github.com/stablyai","linkedin":"https://www.linkedin.com/company/stablyai"}},"seo":{"metatags":{"og:title":"Stably - AI-native Testing Platform","og:description":"Comprehensive documentation for Stably, the AI-native testing framework that tests any application and prevents bugs with intelligent test automation.","og:type":"website","og:site_name":"Stably Documentation","twitter:site":"@stablyai","twitter:site:domain":"stably.ai","x:site":"@stablyai","x:site:domain":"stably.ai","apple-mobile-web-app-title":"Stably Docs"},"indexing":"navigable"},"contextual":{"options":["copy","chatgpt","claude","perplexity"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"stablyai","hasAudioNarration":false,"actualSubdomain":"stablyai","customDomains":["docs.stably.ai"],"gitSource":{"type":"github","owner":"stablyai","repo":"mintlify-docs","deployBranch":"master","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a266e3bdf569dc0dab12145","collectionId":"42c18627-465f-4567-9eb8-f1cc8ce323ff","schemaVersion":"v3"},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6a266e3bdf569dc0dab12145:success","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"Documentation","count":57},{"language":"default","tag":"Guides","count":22},{"language":"default","tag":"Stably SDK","count":14},{"language":"default","tag":"Stably CLI","count":9},{"language":"default","tag":"Troubleshooting","count":8},{"language":"default","tag":"Stably Web Editor","count":7},{"language":"default","tag":"API Reference","count":5},{"language":"default","tag":"Anti-Bot Detection","count":5},{"language":"default","tag":"Resources","count":4},{"language":"default","tag":"Configuration","count":4}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"run-tests/test-results","slug":"/run-tests/test-results","pageMetadata":{"title":"View Test Results","description":"Analyze test execution results with auto-healing, trace visualization, and flakiness detection","og:title":"Test Results - Analysis \u0026 Debugging | Stably AI","og:description":"Analyze test execution results with auto-healing, trace visualization, and flakiness detection","og:image":"/images/social-preview.png","href":"/run-tests/test-results"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Analyze test execution results with auto-healing, trace visualization, and flakiness detection\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Frame,Heading,Info,OptimizedImage}=_components;if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);return _jsxs(_Fragment,{children:[_jsx(Frame,{type:`glass`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/stablyai/WSnPb8SMIsluP_7v/images/test-execution/test-run-view.png?fit=max\u0026auto=format\u0026n=WSnPb8SMIsluP_7v\u0026q=85\u0026s=8f9f010cca75a63420630b099160734e`,alt:`Test run view showing suite results`,\"data-og-width\":`2568`,width:`2568`,\"data-og-height\":`1362`,height:`1362`,\"data-path\":`images/test-execution/test-run-view.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/stablyai/WSnPb8SMIsluP_7v/images/test-execution/test-run-view.png?w=280\u0026fit=max\u0026auto=format\u0026n=WSnPb8SMIsluP_7v\u0026q=85\u0026s=894d5c0773c4f1981c41daac39fd23ab 280w, https://mintcdn.com/stablyai/WSnPb8SMIsluP_7v/images/test-execution/test-run-view.png?w=560\u0026fit=max\u0026auto=format\u0026n=WSnPb8SMIsluP_7v\u0026q=85\u0026s=43191a8aabd413fdf976e839b1f6a583 560w, https://mintcdn.com/stablyai/WSnPb8SMIsluP_7v/images/test-execution/test-run-view.png?w=840\u0026fit=max\u0026auto=format\u0026n=WSnPb8SMIsluP_7v\u0026q=85\u0026s=080dfe22fbfb3c4dd5af65a004feefc3 840w, https://mintcdn.com/stablyai/WSnPb8SMIsluP_7v/images/test-execution/test-run-view.png?w=1100\u0026fit=max\u0026auto=format\u0026n=WSnPb8SMIsluP_7v\u0026q=85\u0026s=d3072b65b026bea8e95550c18e54a07e 1100w, https://mintcdn.com/stablyai/WSnPb8SMIsluP_7v/images/test-execution/test-run-view.png?w=1650\u0026fit=max\u0026auto=format\u0026n=WSnPb8SMIsluP_7v\u0026q=85\u0026s=e881f457956e0cae0787a9fbac4a4b8e 1650w, https://mintcdn.com/stablyai/WSnPb8SMIsluP_7v/images/test-execution/test-run-view.png?w=2500\u0026fit=max\u0026auto=format\u0026n=WSnPb8SMIsluP_7v\u0026q=85\u0026s=9e23edcea6e783495a4e485e7fde9117 2500w`})}),`\n`,_jsx(_components.p,{children:`To get a detailed, visual replay of your test execution and understand exactly what happened during each step,\nStably provides comprehensive analysis tools for understanding and improving your test suite’s performance.`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Playwright Trace`}),`: View the standard Playwright trace viewer`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Stably Trace`}),`: Access Stably’s enhanced execution viewer`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Auto-heal Changes`}),`: Compare original vs. AI-modified tests`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Heatmap`}),`: View flakiness patterns across test runs`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Test History`}),`: View historical test run data`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`playwright-trace-viewer`,children:`Playwright Trace Viewer`}),`\n`,_jsx(Frame,{type:`glass`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-playwright-traceview.png?fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=8ff479b3429fcc6a7205d35e3b6175a9`,alt:`Playwright Trace Viewer Interface`,\"data-og-width\":`3404`,width:`3404`,\"data-og-height\":`1154`,height:`1154`,\"data-path\":`images/test-results/test-results-playwright-traceview.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-playwright-traceview.png?w=280\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=431bbb1a5f51c80ac8063a92c3e0eabf 280w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-playwright-traceview.png?w=560\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=185339091e4a7457b314da0a893bfaa6 560w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-playwright-traceview.png?w=840\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=345a08195a2558d3ccd98e96c11746f6 840w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-playwright-traceview.png?w=1100\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=57faa1f4815412027ee4ac489f230082 1100w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-playwright-traceview.png?w=1650\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=ac914b869e5dd0d022d0e3c1eb0c6d58 1650w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-playwright-traceview.png?w=2500\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=ae053bb102b93018fca24352522e54e3 2500w`})}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Playwright Trace Viewer`}),` provides standard debugging capabilities with step-by-step action replay, screenshot comparisons, timeline visualization, and network activity monitoring. It offers comprehensive console logs and error highlighting to help identify test failures quickly.`]}),`\n`,_jsx(Heading,{level:`3`,id:`stably-trace-viewer`,children:`Stably Trace Viewer`}),`\n`,_jsx(Frame,{type:`glass`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-stably-traceview.png?fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=0f105f56c3a978ecec536859e967cc5a`,alt:`Stably Trace Viewer Interface`,\"data-og-width\":`1710`,width:`1710`,\"data-og-height\":`1126`,height:`1126`,\"data-path\":`images/test-results/test-results-stably-traceview.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-stably-traceview.png?w=280\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=b33bbed557c92ceff919c4d4dd38ccea 280w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-stably-traceview.png?w=560\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=7ddf149369d1a40b921aa587af810fd8 560w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-stably-traceview.png?w=840\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=45b1eaa16e85938503e92488896247ba 840w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-stably-traceview.png?w=1100\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=67be753243db8e069e1c776c1072ebb6 1100w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-stably-traceview.png?w=1650\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=971ab4a84ff29d4da27f78eebd31eef7 1650w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-stably-traceview.png?w=2500\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=fe74692e55b7fc59757e95fc500c04f1 2500w`})}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Stably Trace Viewer`}),` enhances the debugging experience with AI-powered insights, advanced error analysis, conditional logic visualization, and historical comparison features. It tracks healing attempts and provides action-level details for deeper test execution understanding.`]}),`\n`,_jsx(Info,{children:_jsx(_components.p,{children:`Traces are stored securely in cloud storage and are accessible through the platform’s trace viewer interface.`})}),`\n`,_jsx(Heading,{level:`2`,id:`diff-view`,children:`Diff View`}),`\n`,_jsx(_components.p,{children:`The Diff View provides a powerful interface for reviewing and managing AI-suggested test modifications through intelligent auto-healing.`}),`\n`,_jsx(Frame,{type:`glass`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-diffview.png?fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=0a4e593ae8410ac030f5de0b3b15c792`,alt:`Diffview showing original vs modified test comparison`,\"data-og-width\":`3360`,width:`3360`,\"data-og-height\":`1112`,height:`1112`,\"data-path\":`images/test-results/test-results-diffview.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-diffview.png?w=280\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=abf6afa8ce8006ef067240f51dc2bd50 280w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-diffview.png?w=560\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=637658868f7ac74005f45cba28faaacc 560w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-diffview.png?w=840\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=317041b544179a1eecb0782a57f96353 840w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-diffview.png?w=1100\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=71a43f4404cb6b866a626d0fe36b2c8b 1100w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-diffview.png?w=1650\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=f4713be4ba475505e5dfa81460f97f07 1650w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-diffview.png?w=2500\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=21ccc94448e1d782dc8dbfc2e8dad465 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`auto-healing-with-diff-view`,children:`Auto-Healing with Diff View`}),`\n`,_jsxs(_components.p,{children:[`The Diff View displays AI-suggested test modifications when auto-healing detects outdated tests. For detailed information about how auto-healing works, see `,_jsx(_components.a,{href:`/platform-capabilities/ai-auto-heal`,children:`AI Auto-heal`}),`.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Diffview Benefits:`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Side-by-side comparison`}),` of original vs. AI-modified test steps`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Visual screenshot comparisons`}),` to validate changes`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Accept or edit options`}),` - apply changes immediately or use the no-code editor for further refinement`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Version control`}),` - accepted changes become the new baseline for future test runs`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`You can configure auto-healing sensitivity levels in `,_jsx(_components.a,{href:`/core-configuration/ai-agents`,children:`AI Agents`}),` to control how aggressively the system suggests modifications to your tests.`]}),`\n`,_jsx(Heading,{level:`2`,id:`heatmap-view`,children:`Heatmap View`}),`\n`,_jsx(_components.p,{children:`The heatmap visualization provides a color-coded grid to quickly identify flaky and unreliable tests across your test suite.`}),`\n`,_jsx(Frame,{type:`glass`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-heatmap.png?fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=a76f59fe8b4fa895b3a2e00deded4e2c`,alt:`Flakiness Heatmap showing test execution patterns`,\"data-og-width\":`3138`,width:`3138`,\"data-og-height\":`1034`,height:`1034`,\"data-path\":`images/test-results/test-results-heatmap.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-heatmap.png?w=280\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=5dc92d10385e203df1791a3cd95168f0 280w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-heatmap.png?w=560\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=3125823b8f3ebdb57c7f76992ddef3d0 560w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-heatmap.png?w=840\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=2e54d479ea7724fc1a9ccc8b830dbe7c 840w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-heatmap.png?w=1100\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=a7579943a80a1aeaacb3edf0dd0a48db 1100w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-heatmap.png?w=1650\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=896162ca520ae5012a30dbcc5011b613 1650w, https://mintcdn.com/stablyai/N2gl_yYzjw5V_xLo/images/test-results/test-results-heatmap.png?w=2500\u0026fit=max\u0026auto=format\u0026n=N2gl_yYzjw5V_xLo\u0026q=85\u0026s=5fe3bf17dfaa8c29bc33ab8c147e3ce6 2500w`})}),`\n`,_jsx(Heading,{level:`3`,id:`understanding-heatmap-colors`,children:`Understanding Heatmap Colors`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`🟢 Green`}),`: Passed tests`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`🟢 Dark Green`}),`: Flaky tests (passed after retries)`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`🔴 Red`}),`: Failed or error tests`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`🟡 Yellow`}),`: Running or retrying tests`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`⚪ Gray`}),`: Skipped or cancelled tests`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`identifying-flaky-tests`,children:`Identifying Flaky Tests`}),`\n`,_jsx(_components.p,{children:`Use the heatmap to spot reliability issues by identifying tests that consistently fail or show intermittent issues. You can spot tests becoming less reliable over time and get a comprehensive view of your entire test suite’s stability.`}),`\n`,_jsx(_components.p,{children:`Interactive features help you analyze patterns: filter by status by clicking legend items to focus on specific test outcomes, hover for detailed information including duration and timestamps, click any cell to navigate to the specific test run, and analyze timeline patterns across recent runs.`}),`\n`,_jsx(_components.p,{children:`When flaky tests are identified, prioritize fixes by improving element selectors to be more robust, adding appropriate waits for dynamic content, ensuring consistent test environments, and breaking down complex tests into smaller, focused ones.`}),`\n`,_jsx(Heading,{level:`2`,id:`export-reports`,children:`Export Reports`}),`\n`,_jsx(_components.p,{children:`Export comprehensive test reports in HTML format by navigating to your test suite run results page and clicking the export button to generate a downloadable HTML report.`}),`\n`,_jsx(_components.p,{children:`The exported report includes project and suite information, individual test results with status icons, detailed test steps and descriptions, execution duration metrics, and browser and environment details.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"View Test Results","description":"Analyze test execution results with auto-healing, trace visualization, and flakiness detection","og:title":"Test Results - Analysis \u0026 Debugging | Stably AI","og:description":"Analyze test execution results with auto-healing, trace visualization, and flakiness detection","og:image":"/images/social-preview.png","href":"/run-tests/test-results"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Playwright Trace Viewer","slug":"playwright-trace-viewer","depth":3,"children":[]},{"title":"Stably Trace Viewer","slug":"stably-trace-viewer","depth":3,"children":[]},{"title":"Diff View","slug":"diff-view","depth":2,"children":[{"title":"Auto-Healing with Diff View","slug":"auto-healing-with-diff-view","depth":3,"children":[]}]},{"title":"Heatmap View","slug":"heatmap-view","depth":2,"children":[{"title":"Understanding Heatmap Colors","slug":"understanding-heatmap-colors","depth":3,"children":[]},{"title":"Identifying Flaky Tests","slug":"identifying-flaky-tests","depth":3,"children":[]}]},{"title":"Export Reports","slug":"export-reports","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"stablyai","siteName":"Stably","title":"Test Results - Analysis \u0026 Debugging | Stably AI","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-23T02:37:01.517Z","originalFileLocation":"run-tests/test-results.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Analyze test execution results with auto-healing, trace visualization, and flakiness detection\">\u003cmeta data-mint-head name=\"application-name\" content=\"Stably\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Test Results - Analysis \u0026amp; Debugging | Stably AI\">\u003cmeta data-mint-head property=\"og:description\" content=\"Analyze test execution results with auto-healing, trace visualization, and flakiness detection\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Stably Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.stably.ai/run-tests/test-results\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://stablyai.mintlify.app/images/social-preview.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Test Results - Analysis \u0026amp; Debugging | Stably AI\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Analyze test execution results with auto-healing, trace visualization, and flakiness detection\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://stablyai.mintlify.app/images/social-preview.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/stablyai/6Y6TRJsMUUpTybR_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Stably Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0066cc\">\u003cmeta data-mint-head name=\"twitter:site:domain\" content=\"stably.ai\">\u003cmeta data-mint-head name=\"x:site\" content=\"@stablyai\">\u003cmeta data-mint-head name=\"x:site:domain\" content=\"stably.ai\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.stably.ai/run-tests/test-results\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/run-tests/test-results.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Stably\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Stably","nav":{"global":null,"anchors":[{"anchor":"Documentation","icon":"book-open","groups":[{"group":"Getting started","icon":"rocket","pages":[{"title":"Quickstart","href":"/getting-started/quickstart"},{"title":"What is Stably?","href":"/what-is-stably-ai"},{"title":"Autofix for Tests","href":"/getting-started/autofix-for-tests"},{"title":"CI Integration","href":"/getting-started/ci-integration"}]},{"group":"Stably Web Editor","icon":"browser","pages":[{"title":"Overview","href":"/stably/stably-web-editor"},{"title":"Quickstart: Stably Web","href":"/stably2/web-quickstart"},{"title":"Stably GitHub Action","href":"/stably/stably-github-action"},{"group":"Bring Your Own Repo","pages":[{"title":"Bring Your Own Repo","href":"/stably2/bring-your-own-repo"},{"title":"Setup Script","href":"/stably2/setup-script"},{"title":"Private npm Registry (.npmrc)","href":"/stably2/npmrc"}]},{"title":"Capabilities","href":"/stably/capabilities"}]},{"group":"Stably CLI","icon":"terminal","pages":[{"title":"Quickstart: Stably CLI","href":"/stably-cli/quickstart"},{"title":"CLI commands","href":"/stably-cli/commands"},{"title":"Cloud Browsers for Stably CLI","href":"/stably-cli/cloud-browser"},{"title":"Test Planning (stably plan)","href":"/stably-cli/plan"},{"title":"Create Tests (stably create)","href":"/stably-cli/create"},{"title":"Run Tests (stably run)","href":"/stably-cli/run-tests"},{"title":"Fix Tests (stably fix)","href":"/stably-cli/fix"},{"title":"Run History (stably runs)","href":"/stably-cli/runs"},{"title":"Using CLI in CI","href":"/run-tests/cli-in-ci"}]},{"group":"Stably Cloud Runner","icon":"cloud","pages":[{"title":"Run Tests","href":"/run-tests/run-tests-on-cloud"},{"title":"Scheduled Test Runs","href":"/run-tests/scheduled-runs"},{"title":"Autofix","href":"/run-tests/autofix"}]},{"group":"Stably SDK","icon":"code","pages":[{"title":"Quickstart: Stably SDK","href":"/getting-started/sdk-setup-guide"},{"title":"Stably SDK Overview","href":"/stably-sdk/overview"},{"title":"Playwright AI Tests","href":"/getting-started/stably-playwright-sdk"},{"group":"Auth","pages":[{"title":"Auth with Google","href":"/stably2/auth/auth-with-google"}]},{"group":"AI Methods","pages":[{"title":"AI Agent Execute","href":"/stably-sdk/ai-agent-execute"},{"title":"AI Assertions","href":"/stably-sdk/ai-assertions"},{"title":"AI Locator","href":"/stably-sdk/ai-locator"},{"title":"AI Extraction","href":"/stably-sdk/ai-extraction"}]},{"title":"Email Inbox","href":"/stably-sdk/email-inbox"},{"title":"Create Tests with Cursor / Claude Code","href":"/stably-sdk/create-tests-with-cursor-claude"},{"group":"CI/CD","pages":[{"title":"GitHub Actions","href":"/run-tests/github-actions"},{"title":"Run Tests on GitHub","href":"/run-tests/run-tests-on-github"},{"title":"Run Tests on GitLab","href":"/run-tests/run-tests-on-gitlab"},{"title":"Run Tests Inside of Docker","href":"/run-tests/inside-of-docker"}]}]},{"group":"Stably Test Reporter","icon":"chart-line","pages":[{"title":"Stably Test Reporter","href":"/stably/stably-test-reporter"},{"title":"Alerts \u0026 Notifications","href":"/run-tests/alerting"}]},{"group":"Configuration","icon":"gear","pages":[{"title":"Environments","href":"/stably2/environments"},{"title":"STABLY.md","href":"/core-configuration/stably-md"},{"title":"Mode-Specific Rules","href":"/core-configuration/mode-rules"},{"title":"Autofix Cost Controls","href":"/core-configuration/autofix-cost-controls"}]},{"group":"Troubleshooting","icon":"wrench","pages":[{"title":"Reporter \u0026 Analytics Troubleshooting","href":"/trouble-shooting/reporter-analytics"},{"title":"Stably IP Allowlist","href":"/trouble-shooting/allowlist-stably"},{"title":"A/B Testing","href":"/trouble-shooting/a-b-testing"},{"group":"Anti-Bot Detection","pages":[{"title":"Bot Detection Issues","href":"/trouble-shooting/bot-detection/index"},{"title":"Cloudflare Bot Detection","href":"/trouble-shooting/bot-detection/cloudflare"},{"title":"Clerk Bot Detection","href":"/trouble-shooting/bot-detection/clerk"},{"title":"reCAPTCHA Bypass","href":"/trouble-shooting/bot-detection/recaptcha"},{"title":"Vercel Deployment Protection","href":"/trouble-shooting/bot-detection/vercel"}]}]},{"group":"Migration Guides","icon":"route","pages":[{"title":"Why Migrate from Classic","href":"/no-code-tests/why-migrate"},{"title":"Migrate Classic Tests to Agent 2.0","href":"/no-code-tests/migrate-to-agent-2"}]},{"group":"Resources","pages":[{"title":"Pricing","href":"/pricing"},{"title":"Changelog","href":"/changelog"},{"title":"Privacy Policy","href":"/about/privacy-policy"},{"title":"Terms of Service","href":"/about/terms-of-service"}]}]},{"anchor":"API Reference","icon":"code","groups":[{"group":"API Reference","pages":[{"title":"Introduction","href":"/api-reference/introduction"}]},{"group":"Test Run","icon":"sparkle","pages":[{"title":"Start a test run","deprecated":null,"version":null,"openapi":"https://api.stably.ai/openapi.json post /v1/projects/{projectId}/runs","href":"/api-reference/runner/start-a-test-run"},{"title":"Get test run status and results","deprecated":null,"version":null,"openapi":"https://api.stably.ai/openapi.json get /v1/projects/{projectId}/runs/{runId}","href":"/api-reference/runner/get-test-run-status-and-results"},{"title":"Cancel a test run","deprecated":null,"version":null,"openapi":"https://api.stably.ai/openapi.json post /v1/projects/{projectId}/runs/cancel","href":"/api-reference/runner/cancel-a-test-run"}]}]},{"anchor":"Guides","icon":"book-bookmark","groups":[{"group":"Guides","pages":[{"title":"Verify Your App with stably verify","sidebarTitle":"Verify with AI Agents","href":"/use-cases/verify-with-ai-agents"},{"title":"Test with localhost","href":"/use-cases/testing-with-localhost"},{"title":"Defining Test Groups","href":"/use-cases/defining-test-groups"},{"title":"Data Isolation Strategy","sidebarTitle":"Data Isolation Strategy","href":"/use-cases/data-isolation-strategy"},{"title":"Testing Google Auth and 2FA","sidebarTitle":"Google Auth + 2FA","href":"/use-cases/testing-google-auth-and-2fa"},{"title":"Testing RBAC and Role Permissions","sidebarTitle":"RBAC + Roles","href":"/use-cases/testing-rbac-and-role-permissions"},{"title":"Testing File Upload and Download Workflows","sidebarTitle":"File Upload/Download","href":"/use-cases/testing-file-upload-and-download-workflows"},{"title":"Testing Feature Flags and Gradual Rollouts","sidebarTitle":"Feature Flags","href":"/use-cases/testing-feature-flags-and-gradual-rollouts"},{"title":"Testing Third-Party API Failures and Timeouts","sidebarTitle":"3rd-Party Failures","href":"/use-cases/testing-third-party-api-failures-and-timeouts"},{"title":"Saving Authenticated State","href":"/use-cases/saving-authenticated-state"},{"title":"Integrate with Test Case Management Systems","sidebarTitle":"TCMS Integration (Zephyr, etc.)","href":"/use-cases/integrate-with-test-case-management-systems"}]}]}]},"title":"Test Results - Analysis \u0026 Debugging | Stably AI","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-BbYRHtLl.js","DynamicMarkdown-DN96a4Ur.js","zoom-image-lightbox-D7yRe3On.js","lightbox-handle-r17bVUz3.js"]}