Ask a Question

14.40 upgrade prevents multiple browsers open?

SOLVED
wmtan01
Contributor

14.40 upgrade prevents multiple browsers open?

Hi,

 

We recently updated to v14.4 and after upgrading, our tests stopped running.

 

What our test does is open 3 different pages in chrome, firefox and IE and let them interact with each other. but after upgrading once chrome opens up, the test is unable to find objects in the firefox browser. I can see it in the Object Browser panel but highlighting it in the namemapping fails, saying one of the parent objects cannot be found. It seems like TestComplete cannot search across all the opened browsers for the page, I've tried doing an extended find for the page but it still did not work. Looks like since Chrome opened up first, TestComplete is just searching inside the Chrome browser object for the pages

 

It was working fine ever since we've started using TestComplete 2 years ago. 

 

Anyone know if I'm just missing a configuration with 14.4 or if someone else has encountered this issue and has reached out to Smartbear?

13 REPLIES 13
Marsha_R
Champion Level 2

I would go ahead and contact Support for this issue.  Here's the link:

https://support.smartbear.com/message/?prod=TestComplete

I did, I was just curious if someone else encountered the same issue as us. It actually blocked off all of our application testing. Unfortunately v14.30 no longer supports Firefox 75, or I can't find a patch anyway so we were forced to update to v14.40 and that's what pushed us to this corner. :smileyfrustrated:

tristaanogre
Esteemed Contributor

I'm curious as to how you have the different pages/browsers mapped.  It almost sounds like something is ambiguous in your mapping where it's looking in one browser (for example, Firefox) for a page that may be open in a different browser.  Please post screenshots showing an example of how the browsers and pages are mapped, complete with the hierachy view and the property/value pairs for the mapping.


Robert Martin
[Hall of Fame]
Please consider giving a Kudo if I write good stuff
----

Why automate?  I do automated testing because there's only so much a human being can do and remain healthy.  Sleep is a requirement.  So, while people sleep, automation that I create does what I've described above in order to make sure that nothing gets past the final defense of the testing group.
I love good food, good books, good friends, and good fun.

Mysterious Gremlin Master
Vegas Thrill Rider
Extensions available

Hi,

 

So we open Sys.browser.erecepDashboard on Chrome and Sys.browser.DI_CMS_Login in Firefox:

 

2020-04-13_12h25_42.png2020-04-13_12h26_02.png2020-04-13_12h26_14.png2020-04-13_12h25_34.png

 

We never designed the namemapping to have specific browsers.per page, since we do want to be able to switch browsers on demand.

tristaanogre
Esteemed Contributor

Are you calling it as Aliases.browser.<pageName> or are you using Sys.Browser('*') in your code?


Robert Martin
[Hall of Fame]
Please consider giving a Kudo if I write good stuff
----

Why automate?  I do automated testing because there's only so much a human being can do and remain healthy.  Sleep is a requirement.  So, while people sleep, automation that I create does what I've described above in order to make sure that nothing gets past the final defense of the testing group.
I love good food, good books, good friends, and good fun.

Mysterious Gremlin Master
Vegas Thrill Rider
Extensions available

We're using Aliases.browser.<pagename>. We're using typical on screen actions steps inside KWTs.

tristaanogre
Esteemed Contributor

OK, so we dive deeper.

 

Can you post the error message that you're getting complete with the Additional Info tab of the error?  That tab usually will give information about parent objects, etc., especially with the kind of error you're getting.  That will help us debug better. It could be that the problem is not on the browser or page level at all but something that is rendered differently in the new version of Firefox that needs to be accounted for in your mapping.


Robert Martin
[Hall of Fame]
Please consider giving a Kudo if I write good stuff
----

Why automate?  I do automated testing because there's only so much a human being can do and remain healthy.  Sleep is a requirement.  So, while people sleep, automation that I create does what I've described above in order to make sure that nothing gets past the final defense of the testing group.
I love good food, good books, good friends, and good fun.

Mysterious Gremlin Master
Vegas Thrill Rider
Extensions available

So here's the error message when it tried to input the username:

image.png

 

I also discovered another behavior. So we actually use a different way to open browser pages to prevent warnings when the browser is already open:

image.png

 

I tried changing this to TestCompletes natural run browser step and it was able to find the page. Any idea if there was a change as to how namemapping finds the elements with the version upgrade?

 

After it was able to read the firefox objects it couldn't read the chrome objects which at first was fine.

Alright just to make sure it was not the way we loaded browsers, I made a super simple login scripts to the two pages we test:

Login to page 1 in chrome and then login to page 2 in firefox

image.png

This one works fine, both pages are logged in to.

 

But the following doesn't work, i just rearranged the steps so the login in firefox happens between the username input and the password input in chrome:

wmtan01_0-1586806954306.png

 

The following error is seen:

wmtan01_1-1586807092112.png

 

 

It seems that once testcomplete started looking at firefox (after the Run Browser step) it now failed to identify objects in the other browser.

 

cancel
Showing results for 
Search instead for 
Did you mean: