This is a migrated thread and some comments may be shown as answers.

IE8 Popups - Cannot connect

29 Answers 216 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
This question is locked. New answers and comments are not allowed.
Andrew
Top achievements
Rank 1
Andrew asked on 23 Mar 2011, 02:55 PM
Hi

I'm trying to automated UI tests against a popup heavy Web abb. I can manually run and record the tests but they 'hang' on execution.

Test results report fail at "23/03/2011 13:36:12' - 'Fail' : 12. Connect to pop-up window : 'http://www"

I can statically open the URL, so I don't believe it is a dynamic URL causing the issue. I've tried isPartial on and off without benefit.

------------------------------------------------------------
Failure Information:
~~~~~~~~~~~~~~~
Exception occured waiting for the new browser to connect.
InnerException:
System.OperationCanceledException: Exception occured waiting for the new browser to connect. ---> System.TimeoutException: Wait for condition has timed out
   at ArtOfTest.Common.WaitSync.CheckResult(WaitSync wait, String extraExceptionInfo)
   at ArtOfTest.Common.WaitSync.For[T](Predicate`1 predicate, T target, Boolean invertCondition, Int32 timeout)
   at ArtOfTest.WebAii.Core.Manager.WaitForNewBrowserConnect(String url, Boolean isPartial, Int32 timeout)
   --- End of inner exception stack trace ---
   at ArtOfTest.WebAii.Core.Manager.WaitForNewBrowserConnect(String url, Boolean isPartial, Int32 timeout)
   at ArtOfTest.WebAii.Design.IntrinsicTranslators.Descriptors.HtmlDialogHandlerDescriptor.Execute(Browser browser)
   at ArtOfTest.WebAii.Design.Extensibility.HtmlActionDescriptor.Execute(IAutomationHost autoHost)
   at ArtOfTest.WebAii.Design.Execution.ExecutionEngine.ExecuteStep()
------------------------------------------------------------
'23/03/2011 13:36:12' - Detected a failure. Step is marked 'ContinueOnFailure=False' aborting test execution.
------------------------------------------------------------
'23/03/2011 13:36:12' - Overall Result: Fail
'23/03/2011 13:36:12' - Duration: [0 min: 20 sec: 79 msec]
------------------------------------------------------------
'23/03/2011 13:36:14' - Test completed!

Setup:
Win 7, IE8,

Microsoft Visual Studio 2010
Version 10.0.30319.1 RTMRel
Microsoft .NET Framework
Version 4.0.30319 RTMRel

Telerik WebUI Test Studio   2010.3.1213.0
Telerik WebUI Test Studio Developer Edition. For more information see <http://www.telerik.com/automated-testing-tools/products/webui-test-studio-developer-edition.aspx>.

Please advise if there is a more reliable method to testing popups.

Many thanks

29 Answers, 1 is accepted

Sort by
0
Cody
Telerik team
answered on 23 Mar 2011, 03:35 PM
Hello Andrew,

Please send us a screen shot of what your popup looks like. We recently discovered an issue with HTML popup windows displayed in a certain format. We have a fix for these that will be included in our next major release (currently scheduled around May). I can confirm whether or not this fix will take care of your problem simply by looking at your particular popup. You should be able to attach it as a file to this forum thread.

Kind regards,
Cody
the Telerik team
0
Andrew
Top achievements
Rank 1
answered on 23 Mar 2011, 03:47 PM
Hi

I've attached a pic of the frame, I've had to edit the content due to the confidential nature of the site.

The page is aspx

Thanks
Andre

0
Cody
Telerik team
answered on 23 Mar 2011, 11:02 PM
Hello Andrew,

Thank you for the screenshot. I was hoping I could spot something right away, but I didn't see anything obvious (don't worry about the edits you made, they didn't hide what I needed to see). Can you ask your developers for the JavaScript that opens that window? It's usually something like:

window.open("http://www.google.com", "google", "status=1,toolbar=1,location=0");

I will take your JavaScript and see if I can replicate this problem then confirm our upcoming release will fix it for you.

All the best,
Cody
the Telerik team
0
Andrew
Top achievements
Rank 1
answered on 24 Mar 2011, 04:49 PM
Here goes...
-------------------------------------------------------

if (viewLink != null)
                            {
                                maintenanceLink += string.Format("&msk={0}", Guid.NewGuid());
                                viewLink.NavigateUrl = "javascript: window.open('" + maintenanceLink + "', '" + windowName + "', '" + InspectorWindowOptions + "'); void(0)";
                            }


------------------------------------------------------------------------------------

script type="text/javascript">
function displayLockOutWindow()
{
    LockOutWindow.style.visibility = 'visible';
}
function hideLockOutWindow()
{
    LockOutWindow.style.visibility = 'hidden';
}
/script>

--------------------------------------------------------------------------------

Hope it helps??

Thanks
0
Cody
Telerik team
answered on 28 Mar 2011, 06:27 PM
Hello Andrew,

Thank you for the JavaScript sample. It is almost everything I need. In the sample you provided, it refers to the variable "InspectorWindowOptions". I also need to know what value this variable is set to at the time your popup window opens. These options are where we know we have troubles (depending on what they are set to). Any way you can get this information for me?

All the best,
Cody
the Telerik team
0
Andrew
Top achievements
Rank 1
answered on 30 Mar 2011, 02:27 PM
This should be it:

javascript: window.open('SearchLink.aspx?object=Holding&pid=2&hid=1','windowName',fullscreen=0, scrollbars=1, status=1, resizable='); void(0);



Thanks
0
Cody
Telerik team
answered on 30 Mar 2011, 11:08 PM
Hi Andrew,

I put together a test page based on your code and did not run into any problems. I can only conclude that something else is going on that we don't yet understand. I'd like to look at this problem on your machine via GoToMeeting. Let me know when you've available and I'll setup the meeting. I work in Austin (CST) so something 9am - 5pm CST works best for me.

All the best,
Cody
the Telerik team
0
Andrew
Top achievements
Rank 1
answered on 06 Apr 2011, 11:12 AM
Due to security reasons I can't share my screen externally.

What do you think the likelyhood is that the problems will be resolved in the next release and when is this release due?

I will look at unstalling IE 8 and reverting to IE 7, though as I'm on Win 7, IE 8 is the default.

I tried the test again and I still get the following error:

'06/04/2011 10:55:21' - 'Pass' : 3. Keyboard (KeyPress) - Tab (1 times) on 'ContentPlaceHolder1Login1UxPwdPassword'
'06/04/2011 10:55:21' - 'Pass' : 4. Set 'ContentPlaceHolder1Login1UxPwdPassword' text to '#######'
'06/04/2011 10:55:22' - 'Pass' : 5. Click 'ContentPlaceHolder1Login1CmdLoginImage'
'06/04/2011 10:55:22' - 'Pass' : 6. Click 'NewLink'
'06/04/2011 10:55:23' - 'Pass' : 7. Click '######Link'
'06/04/2011 10:55:28' - 'Fail' : 8. Connect to pop-up window : 'http://www.#####.aspx?Target=SiteWizard.aspx'
------------------------------------------------------------
Failure Information:
~~~~~~~~~~~~~~~
Exception occured waiting for the new browser to connect.
InnerException:
System.OperationCanceledException: Exception occured waiting for the new browser to connect. ---> System.TimeoutException: Wait for condition has timed out
   at ArtOfTest.Common.WaitSync.CheckResult(WaitSync wait, String extraExceptionInfo)
   at ArtOfTest.Common.WaitSync.For[T](Predicate`1 predicate, T target, Boolean invertCondition, Int32 timeout)
   at ArtOfTest.WebAii.Core.Manager.WaitForNewBrowserConnect(String url, Boolean isPartial, Int32 timeout)
   --- End of inner exception stack trace ---
   at ArtOfTest.WebAii.Core.Manager.WaitForNewBrowserConnect(String url, Boolean isPartial, Int32 timeout)
   at ArtOfTest.WebAii.Design.IntrinsicTranslators.Descriptors.HtmlDialogHandlerDescriptor.Execute(Browser browser)
   at ArtOfTest.WebAii.Design.Extensibility.HtmlActionDescriptor.Execute(IAutomationHost autoHost)
   at ArtOfTest.WebAii.Design.Execution.ExecutionEngine.ExecuteStep()
------------------------------------------------------------
'06/04/2011 10:55:28' - Detected a failure. Step is marked 'ContinueOnFailure=False' aborting test execution.
------------------------------------------------------------
'06/04/2011 10:55:28' - Overall Result: Fail
'06/04/2011 10:55:28' - Duration: [0 min: 9 sec: 145 msec]
------------------------------------------------------------
'06/04/2011 10:55:30' - Test completed!
0
Cody
Telerik team
answered on 06 Apr 2011, 06:35 PM
Hello Andrew,

Our next major release is due out the last week of April or the first week of May. As for the chance this release will fix your problem, since I was unable to reproduce your problem I have little confidence it will, maybe a 50% chance. Only if I can reproduce the problem can I give you any real level of confidence the next release will solve it for you.

If it would help we are willing to sign an NDA with you in order for us to work together more on this problem. We have done that with a few of our other customers due to privacy issues.

Greetings,
Cody
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Andrew
Top achievements
Rank 1
answered on 18 Apr 2011, 03:51 PM
Hi

Do you think this issues is less likely to occur if I upgrade to IE9?

Also do you have a confirmed date for the release?

Thanks
0
Cody
Telerik team
answered on 18 Apr 2011, 05:01 PM
Hi Andrew,

No, upgrading to IE 9 will not improve things for the problem you are describing. We work just as well with IE7 and IE 8 (if not better) as we do with IE 9. We actually had to make some changes to our code to be compatible with IE 9. Microsoft changed quite a few things on us... but we believe we found and fixed all the problems we had with IE 9. Those fixes are included in our latest internal build, 2011.3.1607.

Our upcoming R1 release us due to be released by the end of this month. I don't have an exact date, but expect to see it before May 1. It's looking pretty good (I've seen private internal builds) and we're just putting the polish on it now and giving it a thorough and rugged QA cycle.

Greetings,
Cody
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Andrew
Top achievements
Rank 1
answered on 18 May 2011, 03:04 PM
Hi

I'm on IE9 now with VS2010 and Installed all the RAD controls.

I'm still having the same issue.

I tried to find the update for Release 1 but can only find puchase - any ideas?

Thanks
Andrew
0
Cody
Telerik team
answered on 18 May 2011, 04:51 PM
Hi Andrew,

I am sorry you continue to have problems with your popup windows. Our 2011 R1 release is available from download from our main download page. If you continue to have problems, the only way I'll be able to assist further is to be able to actually see the application are you dealing with and how the problem manifests using our tool. This is best done via a web based screen sharing tool like GoToMeeting. We are willing to sign an NDA with you if this is required by your organization.

One possibility I can think of is that the URL of the popup keeps changing everytime you run the test. We determine which popup to connect to by the URL of the popup window. Sometimes web applications bury some dynamically changing component within the URL, something like a session ID or such. It this possibly happening there?

Regards,
Cody
the Telerik team
Do you think you know all the new features coming out in Test Studio R1 2011? Think again - we have some surprises and will share them with you in the What's New in Test Studio R1 2011 Webinar on May 12th.
Register Today!
0
Andrew
Top achievements
Rank 1
answered on 31 May 2011, 09:57 AM
Hi

Thanks for the Link. I've tried the test with the updated version (trial version) and still get the error - stack trace below.

I'll investigate setting up a screenshare.

Thanks

Overall Result: Fail
------------------------------------------------------------
'31/05/2011 09:52:31' - Starting execution....
------------------------------------------------------------
------------------------------------------------------------
'31/05/2011 09:52:35' - Enabling Html Popup Tracker. Test expecting Popups.
'31/05/2011 09:52:36' - 'Pass' : 1. Set 'ContentPlaceHolder1Login1UxUserIDText' text to '#####'
'31/05/2011 09:52:37' - 'Pass' : 2. Keyboard (KeyPress) - Tab (1 times) on 'ContentPlaceHolder1Login1UxPwdPassword'
'31/05/2011 09:52:37' - 'Pass' : 3. Set 'ContentPlaceHolder1Login1UxPwdPassword' text to '#########'
'31/05/2011 09:52:38' - 'Pass' : 4. Click 'ContentPlaceHolder1Login1CmdLoginImage'
'31/05/2011 09:52:38' - 'Pass' : 5. Click 'SearchLink'
'31/05/2011 09:52:40' - 'Pass' : 6. Click 'PropertyLink'
'31/05/2011 09:52:40' - 'Pass' : 7. Set 'ContentPlaceHolder1UxTownText' text to '######'
'31/05/2011 09:52:49' - 'Pass' : 8. Click 'ContentPlaceHolder1ImageButton8Image'
'31/05/2011 09:52:49' - 'Pass' : 9. Click 'ContentPlaceHolder1DgSearchResultsHypViewLink'
'31/05/2011 09:52:54' - 'Fail' : 10. Connect to pop-up window : 'http://www.###########.uk/######/Maintenance/SearchLink.aspx?object=Holding&pid=4142&hid=26477&msk=bd2fce15-f445-4879-8c7a-ca935012fa58'
------------------------------------------------------------
Failure Information:
~~~~~~~~~~~~~~~
Exception occured waiting for the new browser to connect.
InnerException:
System.OperationCanceledException: Exception occured waiting for the new browser to connect. ---> System.TimeoutException: Wait for condition has timed out
   at ArtOfTest.Common.WaitSync.CheckResult(WaitSync wait, String extraExceptionInfo)
   at ArtOfTest.Common.WaitSync.For[T](Predicate`1 predicate, T target, Boolean invertCondition, Int32 timeout)
   at ArtOfTest.WebAii.Core.Manager.WaitForNewBrowserConnect(String url, Boolean isPartial, Int32 timeout)
   --- End of inner exception stack trace ---
   at ArtOfTest.WebAii.Core.Manager.WaitForNewBrowserConnect(String url, Boolean isPartial, Int32 timeout)
   at ArtOfTest.WebAii.Design.IntrinsicTranslators.Descriptors.HtmlDialogHandlerDescriptor.Execute(Browser browser)
   at ArtOfTest.WebAii.Design.Extensibility.HtmlActionDescriptor.Execute(IAutomationHost autoHost)
   at ArtOfTest.WebAii.Design.Execution.ExecutionEngine.ExecuteStep()
------------------------------------------------------------
'31/05/2011 09:52:54' - Detected a failure. Step is marked 'ContinueOnFailure=False' aborting test execution.
------------------------------------------------------------
'31/05/2011 09:52:54' - Overall Result: Fail
'31/05/2011 09:52:54' - Duration: [0 min: 18 sec: 823 msec]
------------------------------------------------------------
'31/05/2011 09:52:54' - Test completed!

 

0
Cody
Telerik team
answered on 01 Jun 2011, 06:14 PM
Hello Andrew,

Thank you for the error log. It shows one thing I suspect may be causing the problem. It's from this line:

Fail' : 10. Connect to pop-up window : 'http://www.###########.uk/######/Maintenance/SearchLink.aspx?object=Holding&pid=4142&hid=26477&msk=bd2fce15-f445-4879-8c7a-ca935012fa58'

The part I have highlighted looks just like a GUID. I am guessing this value changes every time this popup window opens. Try trimming the URL and setting IsURLPartial to true, as shown in the attached screenshot.

Greetings,
Cody
the Telerik team
Do you think you know all the new features coming out in Test Studio R1 2011? Think again - we have some surprises and will share them with you in the What's New in Test Studio R1 2011 Webinar on May 12th.
Register Today!
0
Andrew
Top achievements
Rank 1
answered on 15 Jun 2011, 09:29 AM
Hi

We have been testing with some various type of popups to get to a root cause of the issue.

No direct success yet, but we have found 2 'issues'.

1) A system runtime error when navigating to new page in IE9 - see attached 9:16,

2) How Cue Tips are handled in execution. During record they pop up on screen, During execution they open full screen - see 2 attached screenshots 9:23 & 9:24
0
Andrew
Top achievements
Rank 1
answered on 15 Jun 2011, 10:45 AM
Hi

We have been investigating popups and partial urls and noticed different behaviour for some popups.
We continue to investigate but have noticed that partial URLs are more reliable if cut down to the lenght of the field in Test Studio.
Also, Partial URLs is selected by default. It is more reliable if this is deselected before editing the url, then reselecting it.

Thanks
0
Andrew
Top achievements
Rank 1
answered on 16 Jun 2011, 11:40 AM
Hi
Could you please advise on the following?
As far as you can see, do you recognise any reasons Test Studio would handle these 2 partial links differently?

http://www.####.###.###.###.uk/####/####.aspx?object=####&vsid=


and

http://www.####.###.###.###.uk/####/Maintenance/SearchLink.aspx?object=####&pid=

The first can be executed and the second not :-S
Is there a max length to URLS?
Thanks

0
Stoich
Telerik team
answered on 21 Jun 2011, 01:58 PM
Hi Andrew,
       you state that:
The first can be executed and the second not :-S
Would you please clarify this.

I suspected the issue might be caused by the .Net logic we use and not by some implementation specific to WebUI Test Studio.
The culprit is the URI class:
http://msdn.microsoft.com/en-us/library/system.uri.aspx
more specifically as taken from the article:

•   By default, any reserved characters in the URI are escaped in accordance with RFC 2396. This behavior changes if International Resource Identifiers or International Domain Name parsing is enabled in which case reserved characters in the URI are escaped in accordance with RFC 3986 and RFC 3987.
As part of canonicalization in the constructor for some schemes, escaped representations are compacted. The schemes for which URI will compact escaped sequences include the following: file, http, https, net.pipe, and net.tcp. For all other schemes, escaped sequences are not compacted. For example: if you percent encode the two dots ".." as "%2E%2E" then the URI constructor will compact this sequence for some schemes. For example, the following code sample shows a URI constructor for the http scheme.
Copy
 Uri uri = new Uri("http://myUrl/%2E%2E/%2E%2E"); Console.WriteLine(uri.AbsoluteUri); Console.WriteLine(uri.PathAndQuery);
When this code is executed, it returns the following output with the escaped sequence compacted.
Copy

It's hard to say since most characters in the provided URLs are coded (######).

All the best,
Stoich
the Telerik team
Do you think you know all the new features coming out in Test Studio R1 2011? Think again - we have some surprises and will share them with you in the What's New in Test Studio R1 2011 Webinar on May 12th.
Register Today!
0
Andrew
Top achievements
Rank 1
answered on 22 Jun 2011, 09:05 AM
Hi

Thank you for this. I'll ask our technical team to look into the URL class.
With regards to the 2 URLS;

The first "http://www.####.###.###.###.uk/####/####.aspx?object=####&vsid=" can be accessed during execution with partial URL enabled.

The second "http://www.####.###.###.###.uk/####/Maintenance/SearchLink.aspx?object=####&pid=" results in the can not connect error seen earlier in this thread.

The # represent alpha characters that make up the URL.

I can see no reason for the tool to handle these URLs differently, can you?

Kind regards

0
Cody
Telerik team
answered on 27 Jun 2011, 07:39 PM
Hi Andrew,

We would need a local repro to understand why you can connect to the first URL but not the second. On the surface I cannot see any reason why one works but not the other.

Best wishes,
Cody
Senior Support Officer
the Telerik team
Register today for a live 'What's New in Test Studio R1 2011 SP2' event on Tuesday, July 19 at 2pm EST!

Have you looked at the new Online User Guide for Telerik Test Studio?
0
Andrew
Top achievements
Rank 1
answered on 13 Jul 2011, 11:31 AM
Hi

I have been able to 'fudge' a connection by adding delays and shorterning the URL down from:

http://www.###########.uk/######/Maintenance/SearchLink.aspx?object=Holding&pid=4142&hid=26477&msk=889889ID

to:

http://www.###########.uk/######/Maintenance/

However I am now unable to connect to tabs within the popup as the link is identified as 'NAME.link' when recorded

Is there a way to directly specify links?

Thanks

0
Cody
Telerik team
answered on 13 Jul 2011, 05:23 PM
Hello Andrew,

I'd like to look at this problem on your computer via GoToMeeting. I'm in Austin, TX which is Central Time (GMT -6). Will July 14th 4:30pm UK time (my 10:30am) work for you? I'll email you a meeting invite assuming that will work.

Regards,
Cody
the Telerik team
Register today for a live 'What's New in Test Studio R1 2011 SP2' event on Tuesday, July 19 at 2pm EST!

Have you looked at the new Online User Guide for Telerik Test Studio?
0
Andrew
Top achievements
Rank 1
answered on 14 Jul 2011, 08:57 AM
Hi

I'm going to be out of office for a couple of days, I'll email you a convenient time.

Thanks
0
Cody
Telerik team
answered on 14 Jul 2011, 03:13 PM
Hello Andrew,

No problem. I am usually available 9am-12am or 1:30pm-5pm Central time in the US. Let me know what will work for you given my availability as well.

Kind regards,
Cody
the Telerik team
Register today for a live 'What's New in Test Studio R1 2011 SP2' event on Tuesday, July 19 at 2pm EST!

Have you looked at the new Online User Guide for Telerik Test Studio?
0
Accepted
Cody
Telerik team
answered on 25 Jul 2011, 04:24 PM
Hello Andrew,

Just to document the outcome of our GoToMeeting today:

We found that the links of your application are using dynamically generated GUID's in the href attribute. Since our find logic was relying on the href's containing static GUID's we were failing with "element not found". Once we stripped these GUID's and switched to a "contains" instead of  "exact" then the test started working as expected.

Regards,
Cody
the Telerik team
Register today for a live 'What's New in Test Studio R1 2011 SP2' event on Tuesday, July 19 at 2pm EST!

Have you looked at the new Online User Guide for Telerik Test Studio?
0
Andrew
Top achievements
Rank 1
answered on 25 Jul 2011, 04:28 PM
Thank you for your support

The 'trick' is to edit the element in expert view and use the ~ symbol for the HREF compare.

:-)
0
Cody
Telerik team
answered on 25 Jul 2011, 04:33 PM
Hi Andrew,

That is true. I also meant to point out we have the Find Expressions (what can go into the Expert View) documented here: http://www.telerik.com/automated-testing-tools/support/documentation/user-guide/telerik-testing-framework/intermediate-topics/element-identification/find-expressions.aspx.

Best wishes,
Cody
the Telerik team
Register today for a live 'What's New in Test Studio R1 2011 SP2' event on Tuesday, July 19 at 2pm EST!

Have you looked at the new Online User Guide for Telerik Test Studio?
0
Cody
Telerik team
answered on 25 Jul 2011, 10:14 PM
Hi Andrew,

We are doing a study on how we can improve our recording so we automatically ignore things like GUID's. Could you help us with that effort by sending us a copy of the HTML that contains these GUID's? If you could load up the page in IE then simply right click on it and View Source then send us the source, that would really help us to better understand where/how GUID's are being used in your application.

Best wishes,
Cody
the Telerik team
Register today for a live 'What's New in Test Studio R1 2011 SP2' event on Tuesday, July 19 at 2pm EST!

Have you looked at the new Online User Guide for Telerik Test Studio?
Tags
General Discussions
Asked by
Andrew
Top achievements
Rank 1
Answers by
Cody
Telerik team
Andrew
Top achievements
Rank 1
Stoich
Telerik team
Share this question
or