Automated Test Framework Client Test Runner module

The Client Test Runner module opens a browser window for running client-side automated tests.

When test execution is enabled, clicking the Client Test Runner module opens the client test runner in a browser window. If tests are waiting to be run, the Client Test Runner runs the first test in the queue. If no test is currently running, the client test runner displays the message Waiting for a test to run.

While the client test runner is idle, it checks every five seconds for waiting tests to start. This ensures that the system runs any tests it may have been unable to start because no client with the proper configuration was available.
Note: The client test runner monitors for tests from the current session and runs those tests as the logged-in user (unless it executes an Impersonate User step). If you start a client test runner, log out from the current session, then log in again, the client test runner will run using the new session.

When the client runner is active, it displays the activity of the currently running test in the Execution Frame.

Note: To prevent conflicts, the system allows only one test to run at a given time. This is true even if you have multiple client test runner windows open. If you submit tests to run when another test is already running, the system holds the new tests in a queue to run later. If a test remains in the queue for more than ten minutes, the system cancels the test.

Test execution property

To work with the client test runner module, the test execution property must be enabled.
Note: The test execution property is disabled by default to prevent running tests on a production system. Run tests only on development, test, and other sub-production instances.

If the test execution property is disabled when you select this module, the system displays a message and a link to the automated test framework properties page where you can enable it.

Additional debugging functionality

If you have enabled additional debugging functionality, the client test runner module displays two tabs: Execution Frame and Debug Info. The Execution Frame displays the information normally shown by the client test runner and the Debug Info displays additional debugging information.

The system takes screenshots from the tests in the Execution Frame tab and records to the test result record.

Browser recommendations for all tests and suites

  • Some browsers have memory-management limitations that make it necessary to occasionally close and restart the browser when running the client test runner. These browsers include Internet Explorer, Edge, and older versions of Firefox. How often you should close the browser depends on the browser application's memory allocation.
  • Some browsers have features that throttle CPU time. To avoid problems, follow these guidelines:
    • run the client test runner in its own browser window
    • keep the client test runner at least partially visible on the screen
    • make certain the screen is not locked or shut off
  • With some browsers, running the client test runner in a background tab may result in the test running more slowly than if opened in a new window.

For more information on mitigating the effects of browser throttling on ATF test performance, see the ATF: Invisible browser throttling can cause poor test performance [KB0621889] article in the HI Knowledge Base.

Javascript window command intercepts

The Client Test Runner captures window object commands including console.log, console.error, alert, confirm, and prompt, with default responses where necessary.
  • Any script that calls window.confirm receives a boolean response of true
  • Any script that calls window.prompt receives the string response test value