Forum Discussion

mcmillen901's avatar
mcmillen901
New Contributor
14 years ago

Using FlexInjector with IE9 and TC8.7

I am trying to test a Flex app, and I've followed all of the instructions and wondering if I'm missing something.



First off relevant environment information:



  • Windows 7 64-bit, latest updates

  • TC 8.70.727.7

  • IE9 ( 9.0.8112.16421 ) ( 64-bit installed, but running in 32-bit mode ( "C:\Program Files (x86)\Internet Explorer\iexplore.exe" -nomerge )

  • Flex app ( minimum Flash 10.1, built using Adobe Flex SDK 4.5 ) compiled as Release ( not a debug build ).  These are in a build targeted for 64-bit, not sure if the SWF files are different for 32-bit/64-bit.  The Test Complete help did not specify if the build needed to be "debug".




I have completed the following steps to set this app up for testing:




  1. Downloaded and Installed Windows Flash Player 11.1 ActiveX control content debugger.




  2. Created mm.cfg with the line:

    PreloadSwf=C:\Program Files (x86)\Automated QA\TestComplete 8\Open Apps\Flex\FlashInjector.swf




  3. Added the directory where FlashInjector.swf is located in the Global Security Settings




  4. Created a wrapper HTML Page




  5. In IE9, disabled protected mode.




I am able to see the application in the HTML wrapper page.  However, when I attempt to record it states it is still not properly prepared.

I went to the Adobe Flash Player Status Check Page here:



http://kb2.adobe.com/cps/155/tn_15507.html



Under "Find Flash Player version type and capabilities ( Flash developers only)"

Your Player Version: WIN 11.1.102.55

Debug Player: Yes





It appears I've done everything in the instructions to get a release SWF built with Flex to be visible through the wrapper page, but that's still not enough for TC.  TC doesn't provide a way (as far as I know...) to check the settings.



Any ideas?

4 Replies

  • Hello,



    First of all, please confirm that the mm.cfg file resides in the appropriate folder. You can do this using the following JScript routine:

    function test()

    {

      var HOMEDRIVE = aqEnvironment.GetEnvironmentVariable("HOMEDRIVE");

      var HOMEPATH = aqEnvironment.GetEnvironmentVariable("HOMEPATH");

      var mmcfg = HOMEDRIVE + HOMEPATH + "\\mm.cfg";



      if (aqFileSystem.Exists(mmcfg))

      {

        Log.Message("The mm.cfg file was found in the " + HOMEDRIVE + HOMEPATH + " folder. The file's contents can be found in the Additional Information panel.", aqFile.OpenTextFile(mmcfg, aqFile.faRead, aqFile.ctUTF8).ReadAll());

      } else

      {

        Log.Warning("The mm.cfg file was not found in the " + HOMEDRIVE + HOMEPATH + " folder.");

      }

     }




    I am able to see the application in the HTML wrapper page.


    Does this mean that your application's objects are wrapped as the images from the Addressing Objects of Applications Exposed by FlashInjector help topic demonstrate?



    Also, can you give us HTTP access to the problematic application through the Internet? Please note that you can submit an individual support case using our Contact Support form.
  • Those variables were pointing to a network drive, and not my local machine.  May be something unique with our setup, but the script easily identified that problem.  Once I moved the mm.cfg file to that drive, I was able to interact with the Flex application through Test Complete 8.
  • raphaelrossi's avatar
    raphaelrossi
    Occasional Contributor

    Hi, I have a similar problem:



    When I had used TestComplete Trial version the scripts was like this:





      textInput = configuracao.textinputID;

      textInput.Click(4, 10);

      textInput.Keys("50");





    Now I have a enteprise version and the scripts are like this:





      macromediaFlashPlayerActiveX.Click(632, 156);

      macromediaFlashPlayerActiveX.Keys("50");





    I make the sames configurations (fleshInjector) in both versions, but now TestComplete cannot recognize flex objects.





    I have the same problem with sample flex application "http://www.automatedqa.com/examples/testcomplete/flex/"



    Images attached.





    Can you help me?  
  • Hi Raphael,



    First of all, make sure that your new environment doesn't limit the flashinjector.swf movie's usage. To learn about the limitations, please see the "Limitations on Using FlashInjector" help topic.



    Also, let me know whether you have the latest version of TestComplete (currently it is ver. 8.70)? If you don't, please check whether the issue persists with this TestComplete version - it contains several Flex-related fixes. Let me know if this doesn't help.