Forum Discussion

singhpriyanka90's avatar
singhpriyanka90
New Contributor
13 years ago

Problem: IE8 creating multiple iexplore process instances

Hello,

I am testing a web application. I am facing various issues due to multiple processes created by Internet explorer 8.

Note1: I can not disable the IE8 property which creates multiple intances, because my web application is compatible with IE8 only.

Note 2: I tried using other properties to recognise iexplore process, but it did not help.

Note 3: So I have created a name mapping with two iexplore processes i.e. iexplorer1(with Index 1) and iexplore2(with Index 2).

Note 4: I have web pages assigned to iexplorer1 and some windows File open dialog boxes assigned to iexplore2.

Note 5: I have disabled IE8 tab property.



Here is the list of issues I am facing:

1. The above setting works fine at times, but when I restart my system or I run my tests a day after, then the iexplore indexes change.The page objects get assinged to iexplore2 and windows File open dialog box to iexplorer1. And thats why my test fails in recognising objects. (P.S: I always make sure that there are no other instances of iexplore running on system aprt from my web application).

2. I tried running my tests on windows 7 , and to my surprise the behaviour of internet explorer is even more erratic. It creates 3 processes and my page objects and windows File open dialog boxes are getting assigned to different iexplore processes, everytime I run my tests.



The problem is making me go nuts, everytime I am not sure of which iexplore process my web objects are getting assigned to. And even using recognition properties other than Index are not helping.



Any kind of Solutions or Suggestions are most welcome.



Thanks,

Priyanka





   
  • tristaanogre's avatar
    tristaanogre
    Esteemed Contributor
    Note1: I can not disable the IE8 property which creates multiple intances, because my web application is compatible with IE8 only.




    This is really the only viable solution, to disable the registry item that creates multiple processes.  However, as far as I know, doing so should not negate any web application's compatibility with IE8.  Can you clarify how doing so would make your application not work?
  • Thanks for your reply.

    Actually for Testing purpose, in future we need multiple tabs for the same web page (One as a customer Login, one as a supplier login etc.).

    Right now I have edited the registry to make iexplorer spawn only one process. But in future we need multiple IE8 instances to be open for multiple logins.

    Is there any other property instead of index, which can be used to identify the iexplore process uniquely and which allows all web page objects to be assigned to the same iexplore process?



    Thanks,

    Priyanka
  • tristaanogre's avatar
    tristaanogre
    Esteemed Contributor
    Do you need to have the two logins simultaneously as you're running the scripts?  If not, you can get around it by logging off and logging in as the other user type.



    You can probably use "Required Children" to see about mapping the iexplore process to something specific.  That's the best bet I can give you.
  • Anumakonda_mahe's avatar
    Anumakonda_mahe
    Frequent Contributor

    Hello Support team,



    Yes, we are also facing same problem. first time while we are record the script it is taken as explore.objcet but after some it if we record aganist same page then it mapped as explore1.object so i had open Task Manager - Process Tab then i found more then one Iexplore process are running. then i forcibly closed the extra process and then recoded on same page then is taken as explore.object.


     


    Pls. let me know the other way to end the process by using any settings.



  • krupa_luke's avatar
    krupa_luke
    Occasional Contributor
    Hello everybody,



    I have similar problem related to the topic.



    Even though my script at the beginning always closes all running IE browsers and then opens own, it fails when my colleague has IE opened as well since he is using the same server. Sure, he uses own account, but if he opens own IE, then his process is Sys.Browser("iexplore"), while my scripts at the beginning of execution kills only iexplore processes running under my account and when new IE browser is opened, it is no longer Sys.Browser("iexplore") but Sys.Browser("iexplore", 2).



    So the problem here is caused entirely by the server - which is stacking IE processes - while testComplete naturally see them all... even though some of them do not belong to other users.



    Is there any solution or workaround how to ignore processes running on different server users? If not, then some different solution:



    Thank you!