Forum Discussion

jan_muczyn's avatar
jan_muczyn
New Contributor
12 years ago

moving to next Data-Driven Loop item on error

I am testing a web-based application that requires a number of screens to be filled by the user and validates the information entered. The validation occurs when user confirms the screen was filled by pressing Next button - if the information is correct, then user is routed to next screen, if not - the error message is displayed and user is given chance to amend the information before clicking Next again. At the end a new entity is created in the database.

Since the structure of every entity is very similar, we have decided to create a test in a form of Data-Driven Loop - every row in the input Excel file contains the data to be filled on subsequent screens and test should fill in as many entities as there are rows in Excel. Please take a look at the attached screenshot for  test mockup.

We have a working test now, but the application is being updated very often. That means that whenever any of the information in Excel is incorrect, or validation works differently than we expect it to, the test is stopped (TestComplete tries to locate the 'next page field' to be filled in, but instead of that next screen the application is displaying the error message).

Is there any way to amend this test so that instead of stopping on error the test would move on to the next row in Excel file? Since we are planning to run our tests overnight it would be very frustrating to come back next morning and see that the test was stopped on item 7 out of 100 due to faultyExcel data or validation working incorrectly.

2 Replies

  • Hi Jan,

     


    You need to add several commands at the end of the loop. They will check whether there is an error after filling in the form with Excel data. If there is no error, the loop will continue with the next row.

  • NisHera's avatar
    NisHera
    Valued Contributor
    Hello, what about catching the error message..?

    I'm not familier with KDT but logic would be same as script.

    something like...



    If (error message)

       DDT.currentDriver.next