Skip to main content

Solutions to common Test Designer IDE Challenges

LastMost reviewed:of Septemberthe 21,times 2026

Use this page as a triage checklist for common Scenario Editor authoringclick and playbackrecord issues.can Linksolve your testing needs. But also it is not rare that due to deeperthe articles“scripting” whenoriented adescription problemof hasthe ause dedicatedcases fix.

to the
  • Starttester is faced with the exactchallenge failureto message,approach step,the browser,automation from a scripting angle.

    This document provides some examples of scenarios where a little coding like steps are needed to speed up some automation requirements implementation using IDE.

    If you are facing AI automation challenges please take a look at Useful smartags workbench custom actions and environment.

  • Checkother locatorjs stability,examples.

    Solutions waits,to testCommon data,Test permissions,Designer andIDE browserChallenges compatibility.
  • Avoid

    Numbers: duplicatingconvert fixesparts thatof alreadya existstring value to a floating number

    // Suppose you have a span with the value $19.99 but you need validate the number is greated than 15.
    Store                |  $stringValue    |  getText(span("carttotal"))     // "$19.99"Store                |  $floatingValue  |  parseFloat($stringValue.substring(1))   // removes the $ then convertes "19.99" to a floating number 
    Assert Greater Than  |  $floatingValue  |  15

    Numbers: convert a string value to an integer number

    // When needing to perform math operation so often you need to convert a number in morestring specificformat KBto articles.an 

    Validationactual workflow

    integer
    1. ReproduceStore | $integerValue | parseInt(span("item-quantity"))


    Tables: getting the issuenumber of rows in a smalltable runusing ds$

    // Assuming the table has an id myTable you can get the number of rows in the IDE using: 
    Store  |  $rowsQuantity  |  _eval("ds$('#myTable tbody > tr').length")
    or
    Store  |  $rowsQuantity  |  getLength("ds$('#myTable tbody > tr')")

    An alternate way is to use the getLength function:

    // Assuming the table has an id myTable you can get the number of rows in the IDE using: 
    Store  |  $rowsQuantity  |  getLength("#myTable tbody > tr")

    Tables: getting the column index with a given header using ds$

    // You can use the jQuery index() function to find the column index of a table that contains certain text "MyHeader". REF: https://api.jquery.com/index/
    Store  |  $columnIndex  |  _eval("ds$('thead th:contains(MyHeader)').index()")+1

    Tables: Iterate over a table to process all the cells values of a given column using ds$

    // If you need to iterate over a table column to process the contents of a certain column you can use above functions to get the total number of 
    // rows in the table and capturethe logs/screenshots.
  • Confirmcolumn that has the appropiate heade and then: Store | $rowIndex | 1 While | $rowIndex < $rowsQuantity Store | $cellValue | _eval("ds$('tbody tr:nth-child("+$rowIndex+") td:nth-child("+$columnIndex+")').text()") [ do something with $cellValue ] Store | $rowIndex | $rowIndex + 1 End While

General: close browser window.

// If the application isdoes reachablenot provide a button to close the window, need to insert
// the link and testclick datait with following lines. 
CustomJS  |  "ds$('body').append('<a id=\"aiq-close\" href=\"javascript:close_window();\">aiq-close</a>')"Click     |  link("aiq-close")

General: get an attribute value of an element

Store     |   $url   |  getAttribute(link("id"),"href")

General: confirm an element is valid.

Reviewdisabled recent
scenario
Set changes,FindOnlyEnabled  shared|  helpers,false      | 
Store                |  submitdis  |  getAttribute(button("cancellation-submit"),"disabled")
Set FindOnlyEnabled  |  true       | 
Assert Equal         |  submitdis  |  "disabled"

General: get a dynamic value and environmentuse changes.

it elsewhere
Get from Whiteboard |  $caseNum                 | "CaseNumber"Click               |  link("Case Search")      |
Set Value           |  textbox("form-control")  | $caseNum
Click               |  submit("Search")         |  
Store               |  caseName                 | getText(cell(1,_near(span(["caseNameLabel"]))))
Click               |  link($caseNum)           |
Select Window       |  caseName                 |
    Apply

    How to automate the mostScroll specificbar? troubleshooting

    article when available.Update

    Pagination this- overviewHow onlyto search items in a page with generalmultiple patterns,paginations not

    one-off fixes.

    Note: This replaces legacy “Test Designer IDE” wording with current Scenario Editor terminology.


    Last updated: SeptemberJuly 21,03, 20262023

    If you have any feedback on this topic, please contact us at documentation@appvance.ai.