ATF Custom UI steps can hang the client test runner or cause test failures if the page contains invalid HTMLDescriptionWhen using ATF Custom UI steps to test a page that contains invalid HTML (for example, an invalid truncated tag like <sp...>), the test might fail unexpectedly. This issue only affects certain older Custom UI steps, and should not affect new steps created in Rome or later.Steps to Reproduce Prerequisite: Have an instance with the "sn_atf.custom_ui.mugshot_version" sys_property set to "18.0" (e.g. an instance on the Paris release); or have a test that was created on such an instance Steps to reproduce:1) Navigate to System UI > UI Pages module and click New2) Input any name3) For HTML, paste the following:<?xml version="1.0" encoding="utf-8" ?><j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null"><button>Click me</button><div id="myDiv"></div></j:jelly>4) For Client Script, paste the following:gel("myDiv").innerHTML = "<sp...><div>Hello</div></sp...>";5) Submit the record6) Navigate to Automated Test Framework (ATF) > Tests module and click New7) Input any Name and click Save8) In the Test Steps related list, click "Add Test Step"9) Choose the Form > Open an Existing Record step and click "Next"10) Set "Table" to "UI Page [sys_ui_page]" and "Record" to the UI page created in steps 1-5, then click "Submit"11) Click "Add Test Step" again and choose "Form > Click a UI Action", then click "Next"12) Set "UI Action" to "Try It" and click "Submit"13) Click "Add Test Step" again and choose "Custom UI > Click Component (Custom UI)", then click "Next"14) The "Retrieve Page Components" modal should now be displayed. Click "Retrieve Components" to continue15) A new client test runner window should open (if one wasn't open already). Watch the test runExpected: Test runs to completion and page components are retrieved successfullyObserved: Test starts running but eventually hangs with status message "Taking snapshot of the current page" Creating a Custom UI step on a valid HTML page and then updating the page to include invalid HTML (e.g. by removing the Client Script in Step 4, then adding it back in after creating the test) will cause the test to fail unexpectedly insteadWorkaroundOne workaround is to remove the invalid HTML from the page being tested. Alternatively, on a Rome or later instance, deleting the old Custom UI step and replacing it with a new one will also resolve the issue.Related Problem: PRB1542484