I've run into a problem with TC v7.5 and the FireFox v3.5.5 browser.
I need to be able to open up multiple versions of the AUT (IE & FF). The IE script works fine, since each browser is a separate process. In FireFox, TC only sees 1 process (even if there are 2 or more browsers open). I've tried to use tabbed browsing in FF, and that works to a degree.
I need to navigate each FF tabbed window to the same url. Inspecting the processes, the Page() object will sometimes have the identical Page() object with the same url. I'm not sure how to differentiate between the two similar objects.
In playing around with FF and Tabs, I was able to get distinct Page() objects if I used Ctrl-T when opening the new url. This gives me the objects :
Page('http:\\server\page1.html') (tab 1)
Page('http:\\server\page1.html',1) (tab 2)
Has anyone solved the problem of addressing the FireFox tabs that are on the same url?
You can use the second parameter of the Page method, Index, to address pages in your case. Let me quote the "Page Method (Process Objects)" help topic:
This parameter is only used if you open two or more pages with the same URL in the browser. In this case, these pages have the same URL, so to distinguish the pages, TestComplete uses the Index parameter. The parameter specifies the order in which the pages were opened. If there is only one page with the specified URL, the Index parameter is not used.
The actual name of the property used to differentiate among pages is ObjectGroupIndex. To see this property in the Object Browser, you need to enable the "Show hidden properties" option (Tools | Options | Engines | General).
I hope this helps.
-- Dmitry Nikolaev Customer Care Manager TestComplete, QAComplete
Join SmartBear Connect next April in Boston to meet with software development, API and testing experts from around the world! Get your ticket today!
Thanks for your reply. I have now turned on the option, "Show hidden properties" . I don't think that it made any real difference in this issue...
I've finally been able to correct my logic to accurately select the correct FF tab. I ended up clicking on the Tab Select button (far Right side of screen), then using keys to press the [Down] button to select the Tab 1 through N. It's clumsy, but it works.
My next problem - I'm trying to get the html page of the newly activated FF tab. I have placed numerous sys.process('firefox').Refresh() commands to make sure that I'm looking at the code behind the correct tab. I'm constantly getting the old ("stale") version of the html code from the prior FF tab.
Interactively (and in the debugger), I can switch between the FF tabs, click on the FreshAll button in the Object Explorer. The object tree will get updated correctly. Under script control, I'm getting the old tabs code.
Can anyone reproduce this FireFox and Tab code situation in a script??
Regards, Alex [Community Expert Group] ____ [Community Expert Group] members are not employed by SmartBear Software but are just volunteers who have some experience with the tools by SmartBear Software and a desire to help others. Postings made by [Community Expert Group] members may differ from the official policies of SmartBear Software and should be treated as the own private opinion of their authors and under no circumstances as an official answer from SmartBear Software. [Community Expert Group] signature is used with permission by SmartBear Software. http://smartbear.com/forums/f83/t86934/community-experts/ ================================
Yes, I have seen those articles. They were a help and a hindrance at the same time. They gave me a good overview of the process and some good tips. I tried the downloaded project and could not get it work properly... Spent about 4 hours trying to correct it. Uggh!
I have uploaded a demo project to the Tech Support email with what I am seeing with the tabbed url pages in FireFox.