Forum Discussion

ChandanD's avatar
ChandanD
Contributor
5 years ago
Solved

Unable to come out of the While loop.

Hello, I am scripting using Javascript. The function I am testing is SVN checkout. The download starts and OK button is disabled. So I have a script to check the OK button is enabled. What is does ...
  • BenoitB's avatar
    BenoitB
    4 years ago

    Please use code display to help reading. The avalialble option is visible when you click on ... and then </>

    Please put image in higher size, here we can't read it.

    Please never do test condition with assignment, it is useless as it will be always true (if name = 'blabla')

    Please explain "The test case is passed but still it checks one more time and makes the test case fail.", i don't understand, if test passed then why checking again ?

     

    What is exactly the problem with the previous code i given to you ?

    Have you tried to use breakpoint to better understand how it runs ?

     

    Your code is strange, what i understand is you loop while the process exists or name is equal to finished and in this loop you click every time.

     

    As already said this is bad method:

    - dont click continuously moreover when you told us that it can last 10 to 20 min.

    - the test condition name equal finished is the break condition so here the only effective test is the process exists

     

     

    Perhaps simply loop until the inProgress.btnOK.Enabled is equal to true (and keep a watchdog to protect yourself against infinite loop). Or use WaitProperty method.

    var btn     = inprogress.btnOK;
    var maxTime = 45*60*1000; // 45 mins
    if (btn.WaitProperty("Enabled", true, maxTime))
      btn.Click()
    else
      throw Error("Check out not finished after 45 mins, please check manually");