The recorder is a central part of Web Performance Monitor, helping you to easily record your transactions instead of doing tedious scripting. We are working on the next release and wanted to share our progress with you!
Multi-selection of steps
It is a good habit to optimize your transaction before deploying to production. Ideally transactions should contain only the steps required for monitoring. The recorder occasionally captures and records unnecessary actions like mousing over some elements, which can be usually be removed safely without affecting the transaction. In the past you had to delete these steps one by one. To avoid this hassle, the recorder will now allow selecting multiple steps at once with the shift key to select a continuous block of steps or the control key to select steps one by one.
Once all steps are selected you can perform several actions: delete them, make all steps optional, make all steps required, or make them conditional. If a step is optional, it will not fail the whole transaction in case the step itself fails. You can revert this by making it required again. We will talk about conditional steps later.
Multi-Variant Text Inputs
There are times when you need to enter text into the page to fill-in the login forms, test a search or answer security questions. The last one is especially tricky, as one day you are asked about your pet's name and the next day your hometown. The Multi-Variant Text Inputs feature allows you to look for a string on the page and based on the that enter different text into forms.
To use Multi-Variant Text Input first enter some text into the field and record the text input action.
When the action is recorded, double-click on the text input action and you will notice a new option which allows you to change simple text input into Multi-Variant Text Input. After changing the type of action, you can add more options and even define default text. Default text is used if no text match is successful.
After you've added a few more options for Multi-Variant Text Input action the title will change in the timeline to reflect this change.
Positive and Negative Matches
There are two types of matches for verification, text match and image match. Another improvement we are working on is that both matches can have positive and negative variants. So you can be looking for a text or image which is or is not on the page.
These two possible states are also indicated in the timeline.
The most complex feature we are working on in the recorder are simple conditionals. There are many examples of webpages where this could be handy. Already mentioned are random security questions, requests to participate in surveys, advertisements, campaigns, planned maintenance notifications and many others. With Simple conditionals, you can make some of the steps of normally sequential transitions conditional and handle the variation in certain web application behaviors.
Anatomy of Conditional
There are two types of conditions, text match and image match. Both can be used to trigger a conditional block of steps. Imagine you have a random advertisement displayed on web page. You can simply detect an image such as logo on the webpage and if the image match is successful, the next conditional step is clicking on the icon to close that advertisement.
Each conditional block must be preceded by a condition. Both conditions can have positive and negative matches. You can be looking for a text or image which is or is not on the page and thus have either positive or negative branches for a condition.
A condition is followed by a conditional block with at least one step. The conditional block has always only one branch and is performed based on condition results.
To visually differentiate conditional blocks and also differentiate positive and negative conditions we use a different background for steps in the timeline: yellow for positive match and blue for negative match.
Recording a conditional block
You can start recording a conditional block by enabling Conditional Mode. To enable this mode click the new button from the menu.
Since a conditional block requires a control action - condition - you will be prompted to choose from:
- New Text match action
- New Image match action
- Using already recorder preceding action if there is any
After you choose the control action you simply continue to record actions. Actions are all conditional until you click the button again and disable conditional mode.
Another way to make a conditional block is to select multiple steps which are already recorded, then right-click and choose "Make actions conditional" item from the contextual menu. You will be again asked if you want to enter a new control action or use existing and the steps will be highlighted as conditional.
This was a quick overview of what kind of some of the improvements we are working on in the Recorder. Is there more? You bet! We will give you more of a sneak peek in a future post (you can look forward to better correlating information from SAM and NPM to monitored Transactions or more on custom properties and some more mentioned in What We're Working On - Web Performance Monitor).