Data Driven Find Expressions

PROBLEM

I would like to data drive a find expression and use it to perform an action against or verify an element. (After 2012 R2, this is possible without code).

SOLUTION

The example below is against this Telerik demo site.

  1. Record a Navigate to step.
  2. Open the drop-down for the ComboBox.
  3. Locate the parent element in the DOM Explorer (see below). Here the Unordered List holds all the child List Item elements. Right click it and select Add to Project Elements.
  4.  

     

     

  5. Insert a Script Step.
  6. Here's what the Local Data table looks like:
  7.  

     

  8. We will use the Find.ByContent method in the coded step. More information can be found in our Finding Page Elements article. Here's the code for our Script Step:
  9.  

    HtmlListItem listItem = Pages.TelerikExtensionsForASP.UnorderedList.Find.ByContent<HtmlListItem>(Data["Col1"].ToString());
    Assert.IsNotNull(listItem);
    listItem.Click();

     

  10. Test Studio uses the data table to find the element in the list, performs an Assert on it, and then clicks it.
  11.