Using Live Debug

Live Debug allows you to interact with a test while it is running on Virtual Machines (VMs) in the Functionize Cloud. This provides a clean execution environment where you can quickly diagnose failures or modify tests.

We recommend Live Debug as the most robust method for updating a test case.

Live Debug can be used to:

  • Diagnose failures in real time.
  • Pause execution at specific steps using Breakpoints.
  • Modify test workflows directly with Architect during execution.
  • Run and debug Page Objects as well as full test cases.

Note: Tests may run more slowly in Live Debug or Live Execution mode compared to a Headless Run.

Starting a Live Debug Session

  1. Open the Test Detail page.
  2. From the Chrome tab, click Execution and select Live Debug.
  3. After the page refreshes, click Watch Now to view the execution.

Live Debug Controls

While running, you have full control over the test execution.

  • Resume, restart, or stop the test.
  • View time remaining before automatic resume and extend it if needed.
  • Stop and fail the test and all subsequent steps.
  • Clear breakpoints when paused.
  • Close the Live Debug window (you can return anytime via Watch Now).
  • See which step is currently executing.
  • Hide the Architect window if not needed.
  • Re-execute a specific action.
  • Add or remove Breakpoints directly from the execution view.
  • Use Quick Add to add new test actions or instructions when the execution is paused.
  • Use Architect when paused to record new actions, if necessary.

Playback Options

  • Pause anytime – Tests will auto-resume after 10 minutes unless extended.
  • Extend pauses in 5-minute increments.
  • After extended pauses, VMs may shut down automatically.
  • Resume, restart, or stop a paused test.
    • Paused test executions can be resumed from an earlier step.
  • Safely leave the Live Debug window and return later via Watch Now.

Setting Breakpoints

Like a development IDE, you can set Breakpoints to manually pause execution.

Ways to set Breakpoints:

  1. From Test Detail – Hover over a step number, click the grey dot to set, and click the red dot to remove.
  2. During Live Debug – When paused, set/unset Breakpoints by clicking the dots in the execution view.

Editing Tests During Live Debug

When a test pauses (due to a Breakpoint or failure), Architect opens automatically. This allows you to record or insert new actions.

Live Debug with Breakpoint

  • Execution pauses when reaching a Breakpoint.
  • Click REC to record additional actions (do not clear cookies or HTML storage).
  • Save changes.
  • After a few seconds, new actions appear in the action slider panel.

Live Debug with Failed Action

  • Execution pauses automatically at the failed step.
  • Architect opens on that step.
  • Click Record to capture corrective actions.
  • Save changes — new actions are inserted immediately after the failed step.

Continuing Test Execution

  • If you don’t need to modify the test, hide Architect by clicking its icon in the header.
  • Resume execution from the current step, or from an earlier step (be sure the site is in the correct state or restart from a PageInit action).

Helpful Hints

  • For the quickest launch, do not hardcode a Region. Let Functionize auto-select the Region with the most available resources (generally a US Region).

Updating Your Region

  1. From the Test Detail page, open the Settings menu → Test Settings.
  2. In the Advanced tab, check the Region field.
    • If it shows Select Region, the test will auto-run in the best available Region.
    • If a specific Region is set and not required, click the cross icon and reset to Select Region.
  3. Save your settings.

Diagnosing Tests with Live Debug

Live Debug gives you full browser control on a clean Functionize Cloud VM, allowing you to:

  • Open Chrome Developer Tools.
  • Inspect Console errors, Network calls, Page Source, and more.
  • See exactly how your site behaves in a real execution environment.

Benefits of Live Debug

  • Save time → No need to re-record the entire test.
  • Simplify maintenance → Update only the failing steps.
  • Improve accuracy → Immediate feedback ensures fixes are correct.

Debug faster → Especially useful for long tests.