eykxas
8 years agoRegular Contributor
TC12 and Firefox
Hi, there is a way to get Firefox 33 working in TestComplete 12 ? All upper versions of Firefox have a bug with the property VisibleOnScreen. (even the latest 52.02). Thank you.
Unfortunately, no. Many of the older versions of FireFox have had their support deprecated in TestComplete 12 and even earlier versions.
Step 1: Go to Help -> Check for Updates and see if there is a FireFox patch to download.
Step 2: If that doesn't help, definitely open a ticket with Support at https://support.smartbear.com/message/?prod=TestComplete
I definitly don't want to upgrade the version of FF. The 33 is the only wich works fine with my project.
I have two solutions, find a way for supporting FF33 in TC12 (possible to recompile tcHookFF33.dll for TC12 ?) or find an other property which has the same effect than "VisibleOnScreen".
eykxas wrote:
I definitly don't want to upgrade the version of FF. The 33 is the only wich works fine with my project.
I'm not understanding this statement... are you testing an application that only works properly in FF version 33? Or is it that your test automation project only works with FF 33? Either way, that's a big issue as most FireFox users are probably using the latest version so any tests on an older version could miss bugs. For good tests, I think you would do well to adapt to a more recent version of FireFox.
eykxas wrote:
I have two solutions, find a way for supporting FF33 in TC12 (possible to recompile tcHookFF33.dll for TC12 ?) or find an other property which has the same effect than "VisibleOnScreen".
What is going on with the "VisibleOnScreen" property with FireFox? How is it not working or what effect are you seeing? Basically, VisibleOnScreen is exactly that... if you can see it on screen when the test is running, then that value is true, otherwise, it's false. As far as I know, that property is pretty browser independent. So, a description of the behavior you're expecting versus the behavior your observing may be helpful here... perhaps there's some explanation that will help you move forward.
As for recompiling tcHookFF33.dll... I'm not a SmartBear employee so you'll have to submit the request to them via their support case dialog as noted above. However, I'm pretty confident in saying that probably won't happen quickly. FF 33 has been deprecated in support by TC for a reason, primarily that it's so old that no one is using it any more because FF has an auto-update feature that the majority of end users are comfortable with just letting happen, much like IE or Chrome. So, by now, the browser market probably has such an insignificant number (if any) users on FF 33 that it doesn't make business sense to continue to support it.
I had already open a request to smartbear 8 months ago.
I'll explain my case.
I have a huge project which run very fine on TC10 and FF33. (by huge I mean, over 300 Keywords with each contains between 30 and 100 script routines). In these script routines, I checked many DOM object of my application by using the property "VisibleOnScreen" in combination with others properties (like ObjectType for example). When I use the method Find in TC (or other similar method like FindChild etc...) the process take less than 1 sec.
The same script routines, in TC12 with any more recent FF, run for more than 1 minute. It works, but very very slow.
Currently my project takes 10 hours to run in TC10 and FF33. If I upgrade to TC12 and more recent FF, this time can be increased by... 300 % ? Maybe more ? I don't know.
After many investigation, the problem seems to be a bug in internal javascript engine of Firefox. (something about getElement).
And the more frustrating thing, it's only certain combination of "VisibleOnScreen" and other properties which cause this slow down.
Actually, that sounds like an easy answer.
Between TC 10 and TC 12 an item was added to the NameMapping engine to search for visible items first. This is on by default and, if your objects are invisible, this could slow down object recognition. As documented in the help:
Name Mapping Options Dialog
Search for visible objects first - This option tells TestComplete to prefer visible over invisible objects when searching for mapped objects. If it is enabled (by default), TestComplete first tries to find a matching object that is also visible. If a visible object is not found within the search timeout (Auto-wait timeout or the timeout used in WaitAliasChild
), TestComplete picks any invisible object that matches the mapping criteria.
If this option is disabled, TestComplete always picks any matching object, whether visible or not.
Notes:
Disabling this option can reduce the object search time in tests that deal with many invisible objects.
This option has no effect for objects whose mapping criteria explicitly include the Visible
property.
If you upgraded from TestComplete 10 to version 12 and found that your tests became slower, disable this option.
So... go to Tools -> Options -> Engines -> NameMapping and turn off that option and see if that improves your performance. It did for us and we weren't using TC 10 or FF... but we were using the VisibleOnScreen property for a number of checks and this sped up those checks a LOT.