Forum Discussion

TikiHardBop1's avatar
TikiHardBop1
Occasional Contributor
4 hours ago

Performance issue when reading large number of objects

I have a pretty large web page that is mostly nested steps and associated text. The problem is that is need to read the step numbers and text to validate the accuracy. Some of my pages run to over 300 steps and it takes TestComplete over 30 minutes to run the findElements() command to read in the steps and my program times the user out before it gets a chance to finish. 

I have read some technical articles but can't really find anything to help me out in this department. I looked into doing a snapshot of the page and then parsing through that, but parsing the snapshot file would probably take longer than what I am doing now. 

Any help or suggestions in this department would be greatly appreciated. 

4 Replies

  • rraghvani's avatar
    rraghvani
    Icon for Champion Level 3 rankChampion Level 3

    It's difficult to visualise the issue without seeing screenshots, and what exactly you are verifying!

    • TikiHardBop1's avatar
      TikiHardBop1
      Occasional Contributor

      I can't do screen shots because it is a classified environment but the page essentially looks like this:

      1. Text

      1.(a) Text

      1.(b) Text

      2. Text

      And this continues for 250+ steps. The HTML looks something like:

      <div class="step-label">1.</div>

      <div class="step-text">Text</div> 

      So I can't read everything at one time. So I read all the step labels at one time and then go back and get each step text and compare it against our verification data. 

      Our software has a hard timeout and TestComplete can't complete reading the step labels before the software times out. 

       

      • rraghvani's avatar
        rraghvani
        Icon for Champion Level 3 rankChampion Level 3

        You could use the FindAll method to retrieve all elements that match your criteria. Or, if your hierarchy structure is deep, then it might be best to export innerHTML to a file, and then perform the necessary checks.