All Collections
Testing
Web application testing(WAT)
Web application testing(WAT)
J
Written by Josh Peters
Updated over a week ago

User Experience Insight has always been capable of testing a web server by checking port availability, SSL certificates, and HTTP status codes. This works great for measuring and correlating the performance of the network with the performance of the application. In addition to this data, User Experience Insight now enables you to get a deeper understanding of web application performance from the end-user perspective with the Web Application Testing (WAT) framework. 


Web App Testing is now out of beta and available on your dashboard with enhanced troubleshooting features and added support for proxy networks.

Note: This version of Web App Testing will support proxy networks with basic and ‘no authentication’. NTLM authentication on the proxy is not supported today.

How to Record a Web Application with Selenium IDE:

Graphical user interface, text, application

Description automatically generated

  • Clear your browser data. This helps prevent web applications from recognizing you have been there before so you can make a clean recording. 

  • Launch the Selenium IDE Google Chrome Extension.

Graphical user interface

Description automatically generated

  • Select Record a New Test in a New Project. 

Graphical user interface, text, application

Description automatically generated

  • Name the project.

Graphical user interface, application

Description automatically generated

  • Enter a base URL and select Start Recording. The web browser will launch 

Graphical user interface, text, application

Description automatically generated
  • In the web-browser that is launched, perform your interaction with the web page.

  • When finished, select the selenium extension to bring up the recording menu

Graphical user interface

Description automatically generated
  • Stop the recording

Graphical user interface, application, table

Description automatically generated
  • Save the recording

Graphical user interface, application, table

Description automatically generated

  • Give the test a name

Graphical user interface, application

Description automatically generated

  • Ensure file type is .side:

Graphical user interface, text, application, email, website

Description automatically generated

How to Add a Web Application Test to User Experience Insight

Go to Settings -> Service & App Tests and Select +Add Test

In the Add Test Menu:

  • Select whether the test should be listed under Internal or External

  • Select Template Type: Custom

  • Select Template: Web Application Test

  • Upload the ".side" file recorded earlier

A screenshot of a computer

Description automatically generated with medium confidence

  • The target field will be derived from the .side file.

  • The Test Title is also derived from the .side file but can be modified.

  • Select the test frequency and select Add 

Web Application Test Results

Web application tests provide the total time the test took to run as well as the breakdown of the run time per command and per sensor.

If the test encounters an error, the sensor will attempt to diagnose why the test failed in an automated triage mode. Triage mode will run a set of predefined troubleshooting tests to get the root cause of the test failure and help determine if the test encountered a network problem or application problem. If the triage mode reaches the web application test, the output displays a step-by-step analysis of the commands that were run and pinpoints the specific problematic web page element or command along with a screenshot.

Current limitations

  • If testing application login, it is recommended to create user accounts specifically for the sensor to test. Using personal credentials is not recommended. In addition, the account should not require 2-factor authentication or MFA.

  • Web App Tests are not supported over proxy networks that require NTLM authentication.

  • Web app tests must be created and recorded with Selenium IDE and should only contain the minimum steps required to complete the test. Generally, these are "click" and "type" commands. Advanced features such as variables, conditional statements, and multi-window selection are not supported and will not be accepted while uploading a .side file.

Here is a list of all supported commands –

addSelection

Add a selection to the set of options in a multi-select element.

check

Check a toggle-button (checkbox/radio).

click

Clicks on a target element (e.g., a link, button, checkbox, or radio button).

clickAt

Clicks on a target element (e.g., a link, button, checkbox, or radio button). The coordinates are relative to the target element (e.g., 0,0 is the top left corner of the element) and are mostly used to check effects that rely on them, for example, the material ripple effect.

doubleClick

Double clicks on an element (e.g., a link, button, checkbox, or radio button).

doubleClickAt

Double clicks on a target element (e.g., a link, button, checkbox, or radio button). The coordinates are relative to the target element (e.g., 0,0 is the top left corner of the element) and are mostly used to check effects that rely on them, for example, the material ripple effect.

editContent

Sets the value of a content editable element as if you typed in it.

open

Opens a URL and waits for the page to load before proceeding. This accepts both relative and absolute URLs.

removeSelection

Remove a selection from the set of selected options in a multi-select element using an option locator.

select

Select an element from a drop-down menu using an option locator. Option locators provide different ways of specifying a select element (e.g., label=, value=, id=, index=). If no option locator prefix is provided, a match on the label will be attempted.

sendKeys

Simulates keystroke events on the specified element, as though you typed the value key-by-key. This simulates a real user typing every character in the specified string; it is also bound by the limitations of a real user, like not being able to type into an invisible or read-only element. This is useful for dynamic UI widgets (like auto-completing combo boxes) that require explicit key events. Unlike the simple "type" command, which forces the specified value into the page directly, this command will not replace the existing content.

setWindowSize

Save a target string as a variable for easy re-use.

submit

Submit the specified form. This is particularly useful for forms without submit buttons, e.g. single-input "Search" forms.

type

Sets the value of an input field, as though you typed it in. Can also be used to set the value of combo boxes, checkboxes, etc. In these cases, value should be the value of the option selected, not the visible text. Chrome only: If a file path is given it will be uploaded to the input (for type=file), NOTE: XPath locators are not supported.

uncheck

Uncheck a toggle-button (checkbox/radio).

verify element present

Experimental - A test to see whether a webpage page has a specified element.


Watch the video to see how to set-up

or

Did this answer your question?