How to Automate User Path Redesign

One of NeoLoad’s exclusive features provides end users with the ability to automate the redesign of a pre-existing user path script. Having this feature alone saves users vast amounts of time having to rebuild a complicated user path from scratch. Complex advanced actions, SQL statements, loops, IF-THEN-ELSE, JavaScript, dynamic variables, everything is brought into the redesigned updated script automatically. In Agile environments, if your application has a new feature or minor changes, having to start from scratch when designing a test is time-consuming. Wouldn’t it be nice to be able to rebuild your original where you just have to add the changes? With NeoLoad, automating the redesign is no longer a thing of the past.

Smart Design of Your Original Recording: Prepare for the Future

In NeoLoad when you record actions either from an app or website, the recording is referred to as a User Path. This is because the actions you record (and may modify with advanced actions), imitates what a live user would perform when using the application under test (AUT).

We can see a User Path which is broken up into essential parts (called transactions), along with Init, Action, and End top-level container nodes. The function of these containers is to put things like Login, Logout, etc. into the Init and End containers (unless you want to test login and logout for every user), and all the steps you want your user to take into the actions container. Doing so with a timed test will continuously repeat the actions container for multiple iterations until the test completes at which point it then runs the end container.

 

When you are recording a User Path, there’s a blank field labeled Transaction in the recording control bar where you can enter text. This is where you input titles of the actions you are going to use before clicking on them.

In this way, you can customize your transactions as specific actions that are performed ensuring you will then later be able to look at your User Path and know precisely at which point a particular action is being performed. It’s important this be done for the key points during your original recording as it not only helps to identify transactions later but also provides a helpful tool when you re-record an update to the same User Path, which we will discuss next.

Re-recording with Automation in Mind

When you want to update an existing recording with new changes, you still record the entire sequence, but this time, you can select the New recording of a checkbox in the opening recording dialogue. The title then generates the same name with an appended underscore and the word “_recording.”

As a result, the dropdown list of the transaction names from the original recording which you can switch to and will guide you through the re-recording process as follows:

As previously mentioned, frameworks, dynamic variables, advanced actions, JavaScript, and all heavily customized work come over with the re-recorded User Path. Upon completion, you have the option of replacing the original and deleting the recording (in which case it renames your original with “_old”) or saving it as is.

Once through with the updated recording, you will go through a similar wizard that searches for dynamic parameters, but this time there will be a User Path to be updated step called the Previewing phase.

The Preview step can be confusing to some, but here is the explanation that should take out the mystery of the Matching threshold slider that appears in the upper part of the dialogue. Per NeoLoad’s documentation you can simplify the selection of this task by referring to the following rule:

Note the two default matching thresholds:

  • A 60% matching threshold is set when there are significant differences between the two User Path Container structures (Transaction, Try, Catch, etc.)
  • A 50% matching threshold can be placed in all other cases

Also, you have options of viewing the original for reference, selecting matching elements to new elements you need to have inserted, etc. By default, the two choices above will handle everything for you. The full list of options is here for reference.

The script WebSockets, in this example, was modified quite a bit. Thus if you compare the differences from the old User Path vs. the new recorded one, the new changes are held while all the original identical actions are repurposed. It is also good to note that if any extraneous content in the new one (or in the original) remains, NeoLoad automatically removes them from the re-recording.

The next step in the Post-recording Wizard gives Options to update shared containers (if any), as well as include variable extractors (recommended), and to delete the recording as described earlier.

Last, you have a summary that calculates your totals for items removed and items added. If anything doesn’t look right to you, now is your chance to go back and adjust as needed.

Learn More

Look for more details in our documentation at Re-recording a User Path, or Discover more load testing and performance testing content on the Neotys Resources pages, or download the latest version of NeoLoad and start testing today.

If you have suggestions or would like to participate in this conversation, please let us know within the Neotys Community.

Leave a Reply

Your email address will not be published. Required fields are marked *