Submit and vote on feature ideas.

Welcome to the new Parasoft forums! We hope you will enjoy the site and try out some of the new features, like sharing an idea you may have for one of our products or following a category.

How to Extract/Validate Dynamic Webpage Elements

Options
OmarR
OmarR Posts: 235 admin

Parasoft: How to Extract/Validate Dynamic Webpage Elements

Description:

In some applications, we may come across dynamic elements whose ids/xPaths change every time the web page reloads. This can become challenging to extract/validate such elements. Below are a few techniques used to handle dynamic elements.

Solution:

Method 1:
There are different Xpath methods/functions to capture these dynamic elements. Initially, we may want to use Chrome’s web-developer tools or Firefox’s Firebug (add-on) tool to find the element’s Xpath. For this example, I will be using a short Chrome web-recording of https://www.parasoft.com/. We will focus on the “Product” menu item and assume it is “dynamic”.

The Web Scenario goes as follows:

1)In a Chrome Browser, inspect (Right-Click) the element

2)A dialog box will open (F12). Hover over or inspect the element to find its appropriate snippet of code:


3)Select the desired line and copy the Xpath

Xpath: //*[@id="menu-item-6192"]/a

4)Select the Browser Contents Viewer and Extract the desired element to generate a validation tool


Assuming that the desired Property value is not present in this wizard, simply choose any one of the available properites and choose “Finish”.

5)Double-click on the new Validation Tool and fill in the fields with the appropriate content

Note: You can Inspect the element if you wish to verify what the Expected Value should be:

6)After filling in all the fields shown below, run your test to verify the results

Method 2:
Two very useful Xpath functions to extract dynamic elements are “Starts-with” and “Contains”
1)“Starts-with” function allows us to identify the dynamic element by the starting text:

2)“Contains” function allows us to identify the dynamic element in scenarios where the element is surrounded by a static value

More information on how to handle dynamic elements can be found in the following link:
http://www.testerlogic.com/handling-dynamic-elements-in-selenium-webdriver/