PageSourceSearch

https://testplane.io/assets/js/40daaebb.7ad4f3a0.js

js testplane.io collected 2026-10-03 20:21:21 UTC 12,210 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunktestplane_docs=self.webpackChunktestplane_docs||[]).push([["3913"],{8520(e,t,n){n.r(t),n.d(t,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>a,metadata:()=>i,toc:()=>d});var i=n(49189),s=n(74848),r=n(28453);n(77444);let a={title:"Time Travel + Testplane UI Updates",slug:"time-travel-release",hide_table_of_contents:!1,date:"2025-05-21T17:00"},l,o={authorsImageUrls:[]},d=[{value:"How to get the latest updates?",id:"how-to-get-the-latest-updates",level:2},{value:"Time Travel",id:"time-travel",level:2},{value:"Testplane UI News",id:"testplane-ui-news",level:2},{value:"Fuzzy Test Search",id:"fuzzy-test-search",level:3},{value:"New Buttons for Managing Interface Elements",id:"new-buttons-for-managing-interface-elements",level:3},{value:"Other Improvements",id:"other-improvements",level:3}];function c(e){let t={a:"a",code:"code",h2:"h2",h3:"h3",img:"img",li:"li",p:"p",pre:"pre",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.p,{children:"We're presenting a new Testplane UI tool \u2014 Time Travel, now stable! Let's talk about this new functionality and what else has been added to Testplane UI recently."}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.img,{src:n(3358).A+"",width:"1536",height:"1024"})}),"\n","\n",(0,s.jsx)(t.h2,{id:"how-to-get-the-latest-updates",children:"How to get the latest updates?"}),"\n",(0,s.jsxs)(t.p,{children:["You need to install the latest versions of Testplane and ",(0,s.jsx)(t.code,{children:"html-reporter"}),":"]}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-shell",children:"npm i -D [email protected] [email protected]\n"})}),"\n",(0,s.jsx)(t.h2,{id:"time-travel",children:"Time Travel"}),"\n",(0,s.jsx)(t.p,{children:"Time Travel is a new Testplane UI tool that allows you to view test runs in real-time, as well as re
1cord and play back all the actions that occurred in the browser during the test."}),"\n",(0,s.jsx)(t.p,{children:"Here's how it looks:"}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.img,{src:n(65582).A+"",width:"1469",height:"910"})}),"\n",(0,s.jsx)(t.p,{children:"Time Travel records DOM tree snapshots, which helps debug issues related to selectors while saving disk space."}),"\n",(0,s.jsxs)(t.p,{children:["Learn more in our ",(0,s.jsx)(t.a,{href:"/docs/basic-guides/time-travel/",children:"new guide"}),"."]}),"\n",(0,s.jsx)(t.h2,{id:"testplane-ui-news",children:"Testplane UI News"}),"\n",(0,s.jsx)(t.h3,{id:"fuzzy-test-search",children:"Fuzzy Test Search"}),"\n",(0,s.jsx)(t.p,{children:"Test search is now more intelligent and understands queries even with typos or in a different keyboard layout. IDE-like search options have been added: regex and case-insensitive."}),"\n",(0,s.jsx)(t.p,{children:"We've also added a new sorting method \u2014 by relevance. It's automatically enabled during search, ensuring the most relevant tests appear at the top."}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.img,{src:n(58610).A+"",width:"1469",height:"920"})}),"\n",(0,s.jsx)(t.h3,{id:"new-buttons-for-managing-interface-elements",children:"New Buttons for Managing Interface Elements"}),"\n",(0,s.jsx)(t.p,{children:"We've added buttons to control the visibility of the test tree and player. Now you can hide them when you don't need them and, for example, work with screenshots in full screen."}),"\n",(0,s.jsx)(t.p,{children:"The interface remembers your preferences, and even after reloading the page, everything will be as you set it up."}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.img,{src:n(70825).A+"",width:"1469",height:"910"})}),"\n",(0,s.jsx)(t.h3,{id:"other-improvements",children:"Other Improvements"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsxs)(t.li,{children:["Significantly reworked the ",(0,s.jsx)(t.a,{href:"/docs/html-reporter/html-reporter-commands/#merge-reports",children:(0,s.jsx)(t.code,{children:"merge-reports"})})," command \u2014 now it works better, more stable, and covers more cases"]}),"\n",(0,s.jsx)(t.li,{children:"Testplane UI can now work with reports created in older versions \u2014 no need to worry about losing data when upgrading"}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.a,{href:"https://github.com/gemini-testing/html-reporter/releases/tag/v10.17.0",children:"New API"})," for exporting snapshots in Time Travel"]}),"\n",(0,s.jsx)(t.li,{children:"Option to select playback speed in the Time Travel player"}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["Stay tuned for new releases on our blog and in the ",(0,s.jsx)(t.a,{href:"https://github.com/gemini-testing/html-reporter/releases",children:"Release Notes on GitHub"}),", and if you encounter any issues, please visit our ",(0,s.jsx)(t.a,{href:"https://github.com/gemini-testing/testplane/issues",children:"GitHub issues"})," \u2014 we'll be happy to help!"]})]})}function h(e={}){let{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},58610(e,t,n){n.d(t,{A:()=>i});let i=n.p+"assets/images/fuzzy-search-8d769357ecdb7974fd04fd6936c983b9.gif"},70825(e,t,n){n.d(t,{A:()=>i});let i=n.p+"assets/images/show-hide-buttons-ed2fcdfb4eb95154e5d6bca687b7f1b0.gif"},3358(e,t,n){n.d(t,{A:()=>i});let i=n.p+"assets/images/time-travel-123dc83929674d1f4b57557927cd878b.png"},65582(e,t,n){n.d(t,{A:()=>i});let i=n.p+"assets/images/time-travel-demo-cb82a8ca03689ff7ab3c75959d9093cd.gif"},77444(e,t,n){n.d(t,{A:()=>y});var i=n(74848),s=n(96540),r=n(34164),a=n(30568),l=n(88287);function o({type:e,className:t,children:n,id:s}){return(0,i.jsx)("div",{className:(0,r.A)(l.G.common.admonition,l.G.common.admonitionType(e),"admonition_xJq3",t),id:s,children:n})}function d({icon:e,title:t}){return(0,i.jsxs)("div",{className:"admonitionHeading_Gvgb",children:[(0,i.jsx)("span",{className:"admonitionIcon_Rf37",children:e}),t]})}function c({children:e}){return e?(0,i.jsx)("div",{className:"admonitionContent_BuS1",children:e}):null}function h(e){let{type:t,icon:n,title:s,children:r,className:a,id:l}=e;return(0,i.jsxs)(o,{type:t,className:a,id:l,children:[s||n?(0,i.jsx)(d,{title:s,icon:n}):null,(0,i.jsx)(c,{children:r})]})}let u={icon:(0,i.jsx)(function(e){return(0,i.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.
169H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"})})},{}),title:(0,i.jsx)(a.A,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)",children:"note"})};function m(e){return(0,i.jsx)(h,{...u,...e,className:(0,r.A)("alert alert--secondary",e.className),children:e.children})}let p={icon:(0,i.jsx)(function(e){return(0,i.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"})})},{}),title:(0,i.jsx)(a.A,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)",children:"tip"})};function f(e){return(0,i.jsx)(h,{...p,...e,className:(0,r.A)("alert alert--success",e.className),children:e.children})}let g={icon:(0,i.jsx)(function(e){return(0,i.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"})})},{}),title:(0,i.jsx)(a.A,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)",children:"info"})};function x(e){return(0,i.jsx)(h,{...g,...e,className:(0,r.A)("alert alert--info",e.className),children:e.children})}function v(e){return(0,i.jsx)("svg",{viewBox:"0 0 16 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"})})}let j={icon:(0,i.jsx)(v,{}),title:(0,i.jsx)(a.A,{id:"theme.admonition.warning",description:"The default label used for the Warning admonition (:::warning)",children:"warning"})},w={icon:(0,i.jsx)(function(e){return(0,i.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M5.05.31c.81 2.17.41 3.38-.52 4.31C3.55 5.67 1.98 6.45.9 7.98c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.31 8.68 2.45 5.05.32L5.03.3l.02.01z"})})},{}),title:(0,i.jsx)(a.A,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)",children:"danger"})},b={icon:(0,i.jsx)(v,{}),title:(0,i.jsx)(a.A,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)",children:"caution"})},T={note:m,tip:f,info:x,warning:function(e){return(0,i.jsx)(h,{...j,...e,className:(0,r.A)("alert alert--warning",e.className),children:e.children})},danger:function(e){return(0,i.jsx)(h,{...w,...e,className:(0,r.A)("alert alert--danger",e.className),children:e.children})},secondary:e=>(0,i.jsx)(m,{title:"secondary",...e}),important:e=>(0,i.jsx)(x,{title:"important",...e}),success:e=>(0,i.jsx)(f,{title:"success",...e}),caution:function(e){return(0,i.jsx)(h,{...b,...e,className:(0,r.A)("alert alert--warning",e.className),children:e.children})}};function y(e){var t;let n,r=function(e){var t;let n,r,a,{mdxAdmonitionTitle:l,rest:o}=(t=e.children,r=(n=s.Children.toArray(t)).find(e=>s.isValidElement(e)&&"mdxAdmonitionTitle"===e.type),a=n.filter(e=>e!==r),{mdxAdmonitionTitle:r?.props.children,rest:a.length>0?(0,i.jsx)(i.Fragment,{children:a}):null}),d=e.title??l;return{...e,...d&&{title:d},children:o}}(e),a=(n=T[t=r.type])||(console.warn(`No admonition component found for admonition type "${t}". Using Info as fallback.`),T.info);return(0,i.jsx)(a,{...r})}},28453(e,t,n){n.d(t,{R:()=>a,x:()=>l});var i=n(96540);let s={},r=i.createContext(s);function a(e){let t=i.useContext(r);return i.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:a(e.components),i.createElement(r.Provider,{value:t},e.children)}},49189(e){e.exports=JSON.parse('{"permalink":"/blog/time-travel-release","editUrl":"https://github.com/gemini-testing/testplane-docs/tree/master/blog/time-travel-release.mdx","source":"@site/i18n/en/docusaurus-plugin-content-blog/time-travel-release.mdx","title":"Time Travel + Testplane UI Updates","de
1scription":"We\'re presenting a new Testplane UI tool \u2014 Time Travel, now stable! Let\'s talk about this new functionality and what else has been added to Testplane UI recently.","date":"2025-05-21T17:00:00.000Z","tags":[],"readingTime":2.15,"hasTruncateMarker":true,"authors":[],"frontMatter":{"title":"Time Travel + Testplane UI Updates","slug":"time-travel-release","hide_table_of_contents":false,"date":"2025-05-21T17:00"},"unlisted":false,"prevItem":{"title":"Testplane MCP","permalink":"/blog/mcp-release"},"nextItem":{"title":"WebDriver BiDi protocol support","permalink":"/blog/support-bidi-protocol"}}')}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.