I'm using WatiN (Web Application Testing in .Net) to do integration testing on a Dynamics CRM 4.0 website.
CRM uses a lot of popup windows - eg clicking on a Contact in a list opens a new browser window with the Contact's details.
I want to test:
- login to CRM (done)
- go to the Contact list (done)
- click on an Contact, thus trigger the popup (done)
- test functionality within the Contact entity/form (can't do)
So I need to get hold of the popped up window.
How?
Thanks.
//after the click that opens the popup:
IE iepopup_1 = IE.AttachToIE(Find.ByUrl(theUrlOfThePopup));
//operate on iepopup_1
Syntax has changed slightly in newest version of WatiN (v2.0.20.1089), is now:
IE poppedUpBrowser = IE.AttachTo<IE>(Find.ByUrl("http://www.popped-up-site.co.uk/"));
Maybe searching for only part of the URL would solve it. This can be done using regular expressions:
System.Text.RegularExpressions.Regex popupHiddenRegEx = new System.Text.RegularExpressions.Regex("part_Of_URL");
IE poppedUpBrowser = IE.AttachTo<IE>(Find.ByUrl(popupHiddenRegEx));