About

I am a Senior Computer Scientist at  Adobe, working on Automation framework for Flex and AIR applications.  You can read more about the framework and let me know your issues or suggestions about the framework.

92 Comments Add your own

  • 1. Kishor  |  September 15, 2009 at 3:34 pm

    Hi Ranis,

    I am very much impressed about your blog,which is very help full to me.
    I have query regarding the usage of flex monkey.swc from QTP.
    i.e accessing the methods of Flex monkey from QTP.
    Is there any possibility to do that.

    Reply
    • 2. raniskumar  |  September 16, 2009 at 5:04 am

      hi Kishore,
      Can you please explain what you want to do on flexmonkey.swc. Every tool should have its tool library. So flexmonkey.swc theoritically should be used (i dont know much about what is the functaionality offererd by this swc, if it is for automation support) using flex monkey for testing.
      thanks,
      Rani

      Reply
      • 3. Kishor  |  September 16, 2009 at 8:44 pm

        Hi Ranish,

        Actuall In one of project I am working on Tool Evaluation on various tools like QTP,Selenium & Flex Monkey.But using selenium, limitation as of now with Selenium Flex API 0.2.5 is we can’t use automation name property for scripting.So we tunned libraries to use automation name property with selenium,So i am very much interested to know whether we can do the same thing with QTP or not..

      • 4. raniskumar  |  September 17, 2009 at 1:12 pm

      • 5. raniskumar  |  April 14, 2010 at 9:35 am

        Hi,
        You cannot use one tool’s library with another unless they operate exaclty the same way. For QTP using another library using will not be feasible. And QTP supports descriptive programming also. AutomationName is allowed for scripting in QTP.

        thanks,
        Rani

  • 6. sandeep  |  November 3, 2009 at 8:15 pm

    i am automating a flex application (3.0) with QTP 9.2 on IE 6. i have a scenario where i have to double click on a row on AdvancedDataGrid that invokes a java script popup. the double click command requires an argument on item renderer. can you please explain how to pass the item renderer argument.

    on recording QTP captures the entire row text as argument for double click but on playback it gives #1009 error.

    please suggest something on how exactly should the item renderer argument be passed

    Reply
    • 7. raniskumar  |  November 4, 2009 at 3:38 am

      double Click cannot be supported for autonmation unless the componnet dispatches a component specific event associated with the double click.

      You can refer the AdvancedListBaseAutomationImpl.as code
      protected function findItemRenderer(selectEvent:ListItemSelectEvent):Boolean and check whether it helps you.
      If incase your problem is not solved, please provide a sample and send the same to ranik@adobe.com
      note: there is another post by me regarding the location of automation source.

      Reply
  • 8. Vish  |  November 12, 2009 at 10:53 pm

    Hi Rani,
    This is a great blog. I have been looking for something like this for long.
    I am using SilkTest 2009 to record tests with flex UI. I am getting following message when trying to get properties.

    “Can not get properties because the object is either destroyed or the automation hierarchy is not correct”

    What can I do to get the automation hierarchy right?

    Reply
    • 9. raniskumar  |  November 13, 2009 at 10:28 am

      Hi,
      The message is not from the automation frameowork. It seems to be from the silktest library.
      You can send a mail to me at ranik@adobe.com and i can give the referance to SilkTest team who may be able to help you on this.

      Reply
  • 10. Sridhanya  |  November 13, 2009 at 10:20 am

    Hi Rani

    I am facing a strange issue in QTP when attempting to record a testcase for a login module

    Login page has two text box (userName, password) and any click or userInput from keyboard in that textbox is not identified during the recording, where as when we tab out from the stated textboxes it is been identified by the QTP and this step is recorded.

    **Note : LoginBody Component, Which is a HBox and textboxes , checkbox and button are grid item.

    There is a signin button in the same component which has no issues.

    Need you suggestions ….

    Reply
    • 11. raniskumar  |  November 13, 2009 at 10:26 am

      This is an expected behavior. The interaction on the text area is recorded only when the focus out on the text area happens. The reason is to avoid huge script lines of each operation being recorded.

      So the text area automation component keeps track of the interactions and only when the component feels that current operation is complete, the operation is recorded.

      Reply
  • 12. natarajan  |  February 9, 2010 at 9:28 am

    Hi

    It has been mentioned in an adobe published document that containers within multi-view navigators cannot be hidden with “showinautomationhierarchy” property. In that case how do i navigate to a particular child only with it’s automation name and object class using qtp ? this was very simple with html since all objects gets added under the FRAME object in QTP’s object repository.

    Reply
    • 13. raniskumar  |  April 13, 2010 at 1:10 pm

      They will be the child of the parent object.
      Try recording a user interaction on an object in the container and get the script syntax.

      Reply
  • 14. Vijay Mareddy  |  March 5, 2010 at 12:49 pm

    Hi Rani,

    Could you post a “ADGAutomationImpl with itemEditor and/or itemRenderer” sample on your blog? The only example i can find online is RandomWalk. No sufficent example on how to handle itemEditor and itemRenderer particularly using an ADG.

    Ii have been trying to automate this sample here unsuccessful so far
    http://vam1021.webs.com/search/

    Right click -View Source enabled

    Reply
    • 15. raniskumar  |  April 13, 2010 at 1:03 pm

      basically for itemrender delegate you nee to support automationName and automationValue. I will try to provide a sample as time permits.

      Reply
      • 16. Jack  |  July 1, 2010 at 6:20 pm

        Rani,
        I would also love to see sample code on how to be able to automate with item renderers: in my case the renderer is in a List.

        I am also needing to automate double-click in a list – is that in fact not possible?

        Thanks – Jack

      • 17. raniskumar  |  July 21, 2011 at 1:03 pm

        There is plenty of actual code in the delegate source code which is available with flash builder professional version.

  • 18. Pratik  |  April 14, 2010 at 6:31 am

    Hi Rani,

    I am following your blog from past couple of months. Its a great place to learn flex and i have found answer of most of my questions. Currenlty we are working on flex application. We are using sdk 3.0. One of the isuue which we are facing now is if label attribue of form item is null then qtp is not able to recognize the objects inside the conatiner.
    We have also found that this issue is fixed in sdk 3.2. But client is not ready to move to sdk 3.2 currenlty. Also if we are giving blank space as label attribute then UI alignments is getting affected.
    Can you please provide your input if we can fix this issue in sdk 3.0 by delegate class or some thing.

    Please reply as this issue is very critical in our project.
    Thanks

    Reply
    • 19. raniskumar  |  April 14, 2010 at 9:32 am

      Hi,
      You can change the getItemAutomationName of the FormItemAutomationImpl.as as follows.

      change is in the line .. result = (((label)&&(label.length != 0))

      /**
      * @private
      */
      private function getItemAutomationName(child:IAutomationObject):String
      {
      var labelObj:IAutomationObject = formItem.itemLabel as IAutomationObject;
      var label:String = labelObj ? labelObj.automationName : “”;
      var result:String = null;
      if (child.automationName && child.automationName.length != 0)
      result = (((label)&&(label.length != 0))
      ? label + “:” + child.automationName
      : child.automationName);
      else
      {
      for (var i:uint = 0; !result && i < numAutomationChildren; i++)
      {
      if (getAutomationChildAt(i) == child)
      {
      result = (i == 0 &&
      numAutomationChildren == (labelObj ? 2 : 1)
      ? label
      : label + ":" + i);
      }
      }
      }
      return result;
      }

      Reply
      • 20. Pratik  |  April 15, 2010 at 5:00 am

        Hi,

        Is this the only change we haev to do? I have tried changing this file but i dint get any success. Is there any other thing which i am missing?

        Please reply.

        Thanks

  • 21. Bala  |  April 21, 2010 at 9:23 pm

    Hi Rani,

    I am working on automation for Flex 3 application. Could you please let me know how to double click on flexlabel/Flex canvas using QTP.

    able to double click manually.

    Reply
  • 22. bhargavi  |  April 22, 2010 at 9:13 am

    On trying to automate flex application using selenium, displaying a message saying that selenium enabled element not found.

    Reply
  • 23. bhargavi  |  April 22, 2010 at 9:15 am

    How can we confirm that a flex application is testable by slenium

    Reply
  • 24. Pratik  |  May 19, 2010 at 6:02 am

    Hi Rani,

    We are facing a problem here in our project. All the screens comes as a flex panel and all the panel has three buttons for minimize,restore and close the panel. But QTP is recognizing this button as Flex panel and hence we are not able to perform any operation on these bttons using QTP. I just looked into the code and these buttons are described in AS file for MDI window.
    Could you please provide some input.
    Response will be highly appreciated
    Thanks,
    Pratik

    Reply
  • 25. flextester  |  May 19, 2010 at 6:18 am

    HI,

    I am trying to record with QTP 9.5 but any action that i perform on flexadvance datagrid does not get recorded.Does QTP 9.5 supports advance datagrid .is there ay other work around

    Thanks

    Reply
    • 26. raniskumar  |  June 10, 2010 at 10:17 am

      Advaced Data Grid is supported. You need to include the automation_dmv.swc along with other swc’s and get the correct QTP plugins (flex 3 + ) which has the required entry in the xml file

      Reply
  • 27. khalid  |  May 19, 2010 at 6:21 am

    Hi

    i am trying to record using QTP 9.5 but any actions performed in advanced datagrid does not get recorded .Does QTp supports advanced datagrid .is there any other work around.

    Thanks

    Reply
  • 28. Prashant  |  July 12, 2010 at 7:18 am

    Hi Rani,

    I am working on flex automation project,

    Can you please let me know which is the effective Tool for flex testing

    1. QTP9.5 or 10
    2. Selenium
    3. Flex Monkey

    -Prashant

    Reply
    • 29. raniskumar  |  September 11, 2010 at 3:35 pm

      All are good. You need to study the feature list of each and decide what you are looking for and what is supported. Since currently Adobe supports QTP , it will be upto date with all the features exposed from the automation libraries. However other tool owners are also in touch with us, and they also try to ensure the same. So evaluating the tools for the features from your end to match your requirements would be better.

      Reply
    • 30. raniskumar  |  April 6, 2011 at 10:03 am

      All are good. Check whether all tools support AIR, Marshaled application testing (if needed) etc based on whether you need all these. QTP is used for internal testing, so normally it is ensured that all features supported by Adobe, works with QTP. But this is not a committed support.

      Reply
      • 31. Ganesh  |  April 6, 2011 at 11:59 am

        Hi,

        Need to Automate Felx 4 Application using QTP, I have installed QTP 10, IE7, FLEX QTP 4.0.0.
        Developer confirmed that on the Application End i.e. the Flex Application Build under test [AUT];
        The flex application is compiled with Automation SWCs
        Complied Flex 4 applications with static automation support:

        1. Start Flash Builder.
        2. Create a new Flex Project.
        3. Select your new Flex project in the Navigator.
        4. Select Project > Properties > Flex Compiler.
        5. In the “Additional compiler arguments” field, enter the following:
        -include-libraries
        “Flash_Builder_4_dir\sdks\4.0.0\frameworks\libs\automation\automation.swc”
        “Flash_Builder_4_dir\sdks\4.0.0
        \frameworks\libs\automation\automation_agent.swc”
        “Flash_Builder_4_dir\sdks\4.0.0\frameworks\libs\automation\qtp.swc”
        “Flash_Builder_4_dir\sdks\4.0.0
        \frameworks\libs\automation\automation_dmv.swc”
        “Flash_Builder_4_dir\sdks\4.0.0
        \frameworks\libs\automation\automation_spark.swc”
        “Flash_Builder_4_dir\sdks\4.0.0
        \frameworks\libs\automation\automation_flashflexkit.swc”

        So all the setup is done both in QA side & Dev side.

        When i try to record in QTP, QTP recognized the Flex Object correctly as Flex text area, Flex button, Flex canvas etc.

        But when I try to add the objects through Object repository, all the objects are recognized as web element instead of Flex.

        Is there any thing is missing during compiling the application or do we need to install Flash builder in the QTP machine where we try to recognize the Flex objects and Perform scripting ?

        Before Flex 4 the application was done using Flex 3. At that time every thing is working fine in QTP (We had QTP 10, Flex 3 plug-in, and IE 7).

        Current Build is upgraded to Flex 4 from Flex 3.

        Please help me out in this issue.

      • 33. Ananda  |  April 18, 2011 at 5:38 am

        Hi RanisKumar,
        This is regarding the spark data grid. I’m using sdk hero beta, QTP is identifying as as skinnable container instead datagrid.Could you please suggest the way of doing automation of spark datagrid.

    • 34. raniskumar  |  July 21, 2011 at 1:01 pm

      All are good.

      Reply
  • 35. Sreedhar  |  August 26, 2010 at 3:48 pm

    Env :Flex 3.2 + QTP 10.

    I am facing a problem while populating data on numeric stepper object.
    It is recognizing but when i tried ‘INPUT’ or ‘TYPE’ it is not popping the data ( I tried all possible operations specified in Tea.HTML).
    when I record it is showing only ‘Change Focus’ with out any value . Can you please help me how to populate the data on numeric stepper?

    Reply
  • 36. Sreedhar  |  August 27, 2010 at 4:31 pm

    Hi ,

    Environment = Flex3.2+QTP 10. I am not able to populate value at Flex Numeric Stepper. While recording it is recording as changefocus with out any value

    I am trying the following code to populate the value
    .FlexApplication(“TradingApplication”).FlexTitleWindow(“index:217″).FlexNumericStepper(“nsQuantity”).SetFocus
    .FlexApplication(“TradingApplication”).FlexTitleWindow(“index:217″).FlexNumericStepper(“nsQuantity”).Input “112″

    Tried Type also , no luck.
    Your help will be highly appreciated.

    Reply
    • 37. raniskumar  |  September 11, 2010 at 3:26 pm

      Numeric stepper will only step the current value to the next higher value. Send a sample application. You need to try editting the text content directly. But it needs to be ensured that your stepper max value is set to a higher number than the value which you are trying. So sending a sample application would be ideal so that we can check the details on the sample which you are trying.

      Reply
      • 38. Ram  |  December 12, 2011 at 12:50 pm

        What are the parameters that we can give to “changefocus” method?

      • 39. raghu  |  February 9, 2012 at 3:15 pm

        HI Raniskumar,
        can you please elobrate?what do mean by next higher value,when I playback why is it inputting 0 ,instead of the value.

    • 40. raghu  |  February 9, 2012 at 3:11 pm

      hi Sreedhar,any luck on this

      Reply
  • 41. Ajay Pal More  |  August 30, 2010 at 12:52 pm

    Hi Ranis,

    I want to Automate flex content through C#. Their is any utilities by which we can we automate. or do you have any idea how to get content of flex through C# or Java script.

    Reply
    • 42. raniskumar  |  September 11, 2010 at 3:22 pm

      You have to write your own tool library (similar to QTP.swc), use the Automation featuers from this, and communicate to your tool outside using External interface or sockets.

      Reply
  • 43. Sachin  |  October 19, 2010 at 1:27 pm

    Hi Ranish,

    We are using QTP 10 and Flex 3.0, In our application QTP is not able to identify “AdvancedDividedbox” which is under Flexcontainer. AFter object spy it returs Flexobejct and automationclassname as “FlexObject”.

    Could you please suggest any solution for above issue?

    Thanks
    Sachin

    Reply
  • 46. Vibha  |  October 21, 2010 at 8:52 am

    Hello,
    I am very new to QTP. How to test the AIR app using QTP.
    I have QTP 9.2. AIR app uses AIR 2 sdk. I am using Flex Builder version 3. Pls suggest how to proceed. When I record the application, its recording only the co-ordinates of the mouse click, not identifying the objects

    Reply
    • 47. raniskumar  |  February 11, 2011 at 1:37 pm

      Air automation is supported only from SDK 4, that means only from FlashBuilder 4
      Try to download the FlashBuilder 4 (for trial, you dont need the paid verison)

      http://raniskumar.wordpress.com/2009/08/13/how-to-enable-flex-automation/ for more details

      Reply
    • 48. raniskumar  |  April 6, 2011 at 10:07 am

      AIR automation is supported only from Flex4 . So you should be having flashbuilder 4 to test AIR application.

      Reply
  • 49. Uma Maheswari  |  February 9, 2011 at 12:09 pm

    Hi Rani,

    Am using FlexMonkium for automating “Flex Application”.
    I have a problem in automating the “DYNAMICALLY” generated objects since the id of an object changes everytime. Is there any solution for capturing the dynamically generated id’s.

    Reply
    • 50. raniskumar  |  February 11, 2011 at 1:09 pm

      will you be able to specify an automation name ?

      Reply
      • 51. Uma Maheswari  |  February 16, 2011 at 2:43 pm

        Automation Name is:

        className{CBAMApp string}automationIndex{index:-1 string}id{CBAMApp string}automationClassName{SparkApplication string}automationName{CBAMApp string}|label{ string}className{com.ava.cbam.view.authentication.Authentication string}id{cmpAuthentication string}automationIndex{index:3 string}automationClassName{FlexBox string}automationName{cmpAuthentication string}|label{ string}className{com.ava.cbam.view.authentication.Auth_Security_Questions string}id{authSecurityQuest string}automationIndex{index:4 string}automationClassName{FlexBox string}automationName{authSecurityQuest string}|automationIndex{index:11 string}id{null object}editable{true boolean}automationName{index:11 string}displayAsPassword{false boolean}automationClassName{FlexTextArea string}className{mx.controls.TextInput string}\” prop=\”automationID\”>”})) break;

      • 52. Nagesh  |  September 27, 2011 at 6:41 am

        Even I am facing the same issue the Object ID change dynamically and i am using FlexMokium with selenium.

        The AutomationName for the application is

        if (proc.getBoolean(“isFlexMonkey”, new String[] {” “})) break;

        so Please can anyone suggest me … its quite urgent

    • 53. Roma  |  August 2, 2012 at 6:59 pm

      Any solution to this problem? I am facing the same issue

      Reply
  • 54. Sakthivel Raja  |  February 21, 2011 at 3:19 pm

    Hi Rani,

    I am facing in building the application using qtp.swc, qtp_air.swc, automation_agent.swc. Because while building and running the application, i am getting error like ‘cannot access a property or method’. while analysing i found i cant find src file for the above swc’s. can you plz help me in this regard.

    thanks and regards.

    sakthivel raja

    Reply
    • 55. raniskumar  |  April 6, 2011 at 9:42 am

      you should not include qtp.swc and qtp_air.swc togather. Based on the type of your application (if flex first one and if air later)

      And you need to use automation.swc also. I am not sure how the swc’s are included what all swc’s are included etc. So please refer the http://raniskumar.wordpress.com/2009/08/13/how-to-enable-flex-automation/ and ensure that your application is testable.

      Reply
  • 56. prashant  |  March 24, 2011 at 10:17 am

    I want to select a item from weblist. upon selecting, it should be double clicked. so that the item appears in other list. Here is ex
    how it appears:
    browser(abc).page(def).frame(frame1).weblist(itemlist).select “item name”

    my problem is the script is not recording double click. Plz give solution..
    Thank you.

    Reply
    • 57. raniskumar  |  April 6, 2011 at 9:35 am

      in this blog, we discuss about the flex automation. From your sample there is no indication of the flex components. In Flex, if you are planning to record double click , let me know, i can help you provided you are ready to do some coding :)

      Reply
  • 58. Ganesh  |  April 6, 2011 at 11:57 am

    Hi,

    Need to Automate Felx 4 Application using QTP, I have installed QTP 10, IE7, FLEX QTP 4.0.0.
    Developer confirmed that on the Application End i.e. the Flex Application Build under test [AUT];
    The flex application is compiled with Automation SWCs
    Complied Flex 4 applications with static automation support:

    1. Start Flash Builder.
    2. Create a new Flex Project.
    3. Select your new Flex project in the Navigator.
    4. Select Project > Properties > Flex Compiler.
    5. In the “Additional compiler arguments” field, enter the following:
    -include-libraries
    “Flash_Builder_4_dir\sdks\4.0.0\frameworks\libs\automation\automation.swc”
    “Flash_Builder_4_dir\sdks\4.0.0
    \frameworks\libs\automation\automation_agent.swc”
    “Flash_Builder_4_dir\sdks\4.0.0\frameworks\libs\automation\qtp.swc”
    “Flash_Builder_4_dir\sdks\4.0.0
    \frameworks\libs\automation\automation_dmv.swc”
    “Flash_Builder_4_dir\sdks\4.0.0
    \frameworks\libs\automation\automation_spark.swc”
    “Flash_Builder_4_dir\sdks\4.0.0
    \frameworks\libs\automation\automation_flashflexkit.swc”

    So all the setup is done both in QA side & Dev side.

    When i try to record in QTP, QTP recognized the Flex Object correctly as Flex text area, Flex button, Flex canvas etc.

    But when I try to add the objects through Object repository, all the objects are recognized as web element instead of Flex.

    Is there any thing is missing during compiling the application or do we need to install Flash builder in the QTP machine where we try to recognize the Flex objects and Perform scripting ?

    Before Flex 4 the application was done using Flex 3. At that time every thing is working fine in QTP (We had QTP 10, Flex 3 plug-in, and IE 7).

    Current Build is upgraded to Flex 4 from Flex 3.

    Please help me out in this issue.

    Reply
  • 59. Sushil  |  April 14, 2011 at 9:14 am

    Hi Ranis, I made a custom Component extending Panel by import mx.containers.Panel. Added one more button in the titlebar of the panel. QTP not able to record any operation on button( means not able to recognize buuton ), but able to identify customComponent. For this i also used customdelegate & modofied classdefintion. But doesn’t work for me.

    Need your valuable input and suggestion.

    Thanks & regards
    Sushil

    Reply
    • 60. raniskumar  |  July 21, 2011 at 12:58 pm

      You may need to modify the getAutomationchildren, getAutomationChildAt etc methods to reflect the new child.

      Reply
      • 61. hemanamani  |  June 11, 2012 at 11:26 am

        In what way we have modify those methods…. can u please give a sample code.. I have same issue…. thank you

  • 62. Jaydeep Tank  |  June 6, 2011 at 7:12 am

    Hi,

    I have extended UIConponent for my custom Column Chart.
    What extra i have to do for Automation implementation Using FlexMonkey.

    My requirement is to get series data point (Hit data Point data), Axis Label, Category label and so on.

    Reply
    • 63. raniskumar  |  July 21, 2011 at 12:33 pm

      you have to do a lot :) refer the custom component automation sections.

      Reply
  • 64. vasu  |  July 18, 2011 at 7:19 pm

    can we use2 different tools like selenium and qtp to test a project in real time

    Reply
    • 65. raniskumar  |  July 21, 2011 at 12:27 pm

      To prepare your application for tesitng, you add the tool specific library. May be your can try adding both.

      Reply
  • 66. Jay  |  August 16, 2011 at 11:12 am

    Hi Kumar,

    I am trying to automate Flex Application in silktest. Problem is to fetch data from Flex Data Grid object, i was able to get the rowcount & column names of the data grid.But i don’t know to get the data from datagrid or from perticular column header.

    Please do suggest..

    Thanks,
    Jay

    [ ] Integer nRow = WebBrowser.BrowserWindow.Application.srkTier1.rowCount
    [ ] print(nRow)
    [ ] LIST OF STRING nCol = WebBrowser.BrowserWindow.Application.srkTier1.columnNames
    [ ] print(nCol)

    srkTier1 is flexgrid object which is defined already.
    List OF ANYTYPE srkTier1 = {“//FlexDataGrid[@caption='dynamicDataGrid'][1]“,”Emp_Rank Tier1″}

    Reply
  • 67. Oliver  |  August 19, 2011 at 12:50 pm

    Hi Ranis,

    I’m currently working on automation for Flex 4.5 UIs with use of QTP.
    Some of my components seem to work quite smooth but some I even cannot get to work by writing automation delegates for them. One major issue for me is that I do not get any hint was is going wrong. The only information from the QTPAdaper ist that it tells me sometimes that an object is null.
    [trace] TextFieldAutomationHelper:captureSelection() – null
    [trace] QTPAdapter:useErrorHandler() – null
    Depending on this information I have no idea how to fix this. (It’s not really helpfull that the QTP library is not open source)
    As you seem to have a lot of experience in this area – do you have any hint how I could get better error messages or what is going wrong.
    Generally I would like to know if you have a guideline on how to automate components used in the skin.

    Thanks & Regards
    Oli

    Reply
  • 68. devinei  |  September 9, 2011 at 10:11 pm

    Hi I am working on QTP10.0 with flex4.5 plug in. Her my question is I am not able to click on the advanced data grid. Here is the code. Please can you help me on this issue.

    Set oBrowser = Browser(“CreationTime:=0″).SparkApplication(“automationname:=VehiclesTab”,”id:=VehiclesTab”).SparkBorderContainer(“automationname:=index:2″)
    Set oVehicleList = oBrowser.SparkBorderContainer(“automationname:=resultsBox”).FlexDataGrid(“classname:=mx.controls.DataGrid”)
    Set oVehicleID = oVehicleList.SparkListLabel(“automationindex:=id:0″,”automationclassname:=SparkListLabel”)
    Msgbox oVehicleID.GetROProperty(“automationname”)

    oVehicleID.SelectIndex method -1
    oVehicleID.SetFocus
    oVehicleID.Select
    oVehicleList.DoubleClick “** | | | | | | | | ”

    Double click or click is not working what can I do

    Reply
  • 69. Manoj  |  October 21, 2011 at 4:39 am

    Hello,

    I am facing some problem with Custom flex controls where a control is not getting recognized by QTP coz as per the developer he has created lot many controls by overriding the classes. I am not sure how to handle it. Please help.

    Reply
  • 70. Nagesh  |  November 4, 2011 at 2:19 pm

    Hi,

    I have come close to automate the flex application . Flex Monkium plugin for selenium is able to record the data but not able to play back it. When i play back through selenium IDE or RC it says document.getElementById(“ext-gen11″).verifyfromselenium is not a function and i am unable to run the recorded script.

    Please can some one help me.

    Regards,
    Nagesh

    Reply
  • 71. Nagesh  |  November 4, 2011 at 2:19 pm

    I see this in fire bug

    Reply
  • 72. ambiw81  |  November 15, 2011 at 4:20 am

    Hi,

    I am evaluated tools for a Flex based applicaiton and based on certain crirerias I have finalised 3 below mentioned tools:
    1. Testcomplete:Working very good with flex objects except for few limitations of Testcomplete
    2.QTP: Is not able to recognize my custom components, But I rely more on this tool so have send a seprate email for the issue I am facing
    3. IBM Functional Tester: To be tested
    Cna you please suggest which is the best tool among all three.

    Thanks in advance

    Reply
  • 73. Anonymous  |  November 15, 2011 at 5:40 pm

    Using SilkTest 2010, flex components are not being recognized. The application is compiled with Flextechdomain.swc,automation.swc & automation_agent.swc. Flex controls are not recognized even in Adobe flex sample applications present in SilkTest. Our application uses flex 3.2. Kindly give your thoughts.

    Reply
  • 74. ambiw81  |  November 15, 2011 at 8:58 pm

    Hi Rani,

    Yesterday I left one post here but today I am not able to see the post. So, I am writing again. I am evaluating 3 tools for my Flex Appn:
    1. TestComplete : It is a very good tool and supports all the FLex based autoamiton without much change in the code.It is our choice but we are going for second though because of some limitations of TC
    2. QTP: I am looking for this tool because I believe it is a very robust tool. But I am unable to Record some of my appn custom components for which I have send you an email
    3. Rational Functional Tester: To be tested. Its quiet expensive as well.
    Please suggest according to you which tool is best for Flex based automation.
    Thanks in advance

    Regards

    Reply
  • 75. JP  |  November 16, 2011 at 4:03 am

    We are trying to use Runtimeloading for flex with QTP 10. Here are challenges we face
    - The application SWF will not load when loaded thru runtimeLoading
    - It displays a blank screen
    - We suspect there is a security login on the app server which blocks the access of app SWF file thru runtimeloading. Beyond that there might also be a further issues but this is first step – to have the app swf file loaded so that QTP can identify the controls.

    When the app URL is accessed manually there is a normal HTML login page and once we login the application SWF is loaded to browser.

    What are your thoughts on this?

    Thanks,
    JP

    Reply
  • 76. Peter  |  November 16, 2011 at 7:19 am

    Hi Raniskumar,

    I have been automating Flex using QTP in the last 1 year or so and things were working well but suddenly when we got a new release, QTP is not able to Input more than 1 character into the FlexTextArea control in my company application.
    Do you know of any possibilities on top of you head that can cause this problem ?

    Browser(“FlexApp”).FlexApplication(“app”).FlexApplication(“ui.swf”).FlexDividedBox(“applicationContainer”).FlexBox(“index:1″).FlexTextArea(“component_username”).Input “PPPPP”

    This will only input 1 character “P” into the FlexTextArea control.

    Reply
    • 77. Peter  |  November 16, 2011 at 7:21 am

      ntainer”).FlexBox(“index:1″).FlexTextArea(“component_username”).Input “PPPPP”

      I am using QTP 10 with IE 8 and Adobe Flex plugin 4

      Reply
  • 78. Bhuvana  |  November 24, 2011 at 11:43 am

    Automation API – License issue

    Hello,

    I’m currently doing a POC with FlexMonkey in order to automate some user interface tests. I have Licensed version of Flash Builder Premium 4.5.1.

    Though i have a premium license of 4.5.1, If i use FlexSDK 3.6 to compile the project, after recordning / playback of 20 ~ 30 action, I always get one of the following error messages

    License not present. With the trial version only limited records are allowed.
    License not present. With the trial version only limited replays are allowed.

    for sake of simplicity, I tested with MonkeyContacts test application.

    If i use SDK version, 4.5.1, then i dont get the license error, it works great.

    So, the license issues appear only with SDK 3.6, not with SDK 4.5.1. Unfortunatly I need to use SDK 3.6 to compile our application.

    I’d really appreciate your help on solving this issue.

    Thanks,
    Bhuvana.

    Reply
    • 79. raniskumar  |  December 7, 2011 at 6:04 am

      Licenses are different for 3.6 and 4.5.1 . Contact Adobe and get a valid license for 3.6 also.

      Reply
  • 80. Bhuvana  |  December 7, 2011 at 11:07 am

    Thanks. I am a bit surprised to hear this. Let me check with Adobe support team.

    Thanks,
    Bhuvana

    Reply
  • 81. LearnFlex  |  January 14, 2012 at 4:42 pm

    hi raniskumar,

    your blog is very nice and very informative.

    i am working on flex automation. i have installed QTP 10, IE 8 and flex add-in 4.5.
    i tested sample application in the link:
    http://examples.adobe.com/flex2/inproduct/lcds/flexstore/flexstore.html
    QTP able to recognize all the objects correctly.

    i have flex 4.1 sdk i created a sample hello application using ‘mxmlc’ command line option i also included libraries using include libraries option

    libraries included – automation.swc, automation_dmv.swc,automation_agent.swc and qtp.swc all files are included.

    but i could not able to recognize the object.

    plug-in included in Qtp : web, activex and flex 4.5

    i also tried compiling application without automation libraries and loading the file using ‘Run time loading’ option. but it also cannot able to recognize the object.

    i am working towards building an flex api for qtp and all sort of automation tool to automate flex application. can you help out of here.

    and i also need some guidance about what are need to be understand so that automating flex application can be done easily and any good resource about that…

    thank you. waiting for ur reply…..

    Reply
    • 82. raniskumar  |  June 19, 2012 at 9:51 am

      I think you are using spark components in your application <s: …
      So in that case you need to include automation_spark also in the list of the libraries.

      Reply
  • 83. learnflex  |  January 21, 2012 at 7:53 am

    Hi Raniskumar,

    Your blog is nice and informative.

    i have installed qtp 10 and flex addin 4.5 and can able to automate sample flex application in link

    http://examples.adobe.com/flex2/inproduct/lcds/flexstore/flexstore.html. that’s fine.

    now i developed a sample flex “hello world ” applicatin using flex sdk 4.1.0 by using command line option ‘mxmlc’. i have also included automation libraries qtp.swc,automation_agent,automation_dmv,automation libraries using ‘include-libraries’ option. but cannot able to recognize flex button and panel correctly.

    i have also tried with runtime loading option. but that also seems not working.

    can you help me out of here? waitinig for ur reply?

    Reply
  • 84. delingstone  |  February 29, 2012 at 5:53 am

    how to give minimize option in popup

    Reply
  • 85. Sindhu J  |  March 1, 2012 at 3:38 am

    Hi,

    I have installed QTP 11.0 in my machine and Adobe Flex v4.6 plug in for QTP.
    But in the QTP Add ins selection window, Flex add in is not listed.

    The Flex plug-in installation is not throwing any error.
    But when I look for it in the Registry , I do not find it.
    Hence the Flex Plug-in is not getting installed successfully.

    I am trying to automate a web aplication built on Flex.

    Can you suggest if I have missed out on anything ??

    Thanks

    Reply
  • 86. Sindhu J  |  March 1, 2012 at 4:14 am

    Hi,

    I am trying to automate a web application built on Flex.

    I have QTP 11 (Trial Version) , IE 8 and flex4_6_test_automation_plugin installed in my machine.
    But the Flex add-in is not listed in the QTP add-in manager window.

    The Flex plug-in installation is not throwing any error.
    But when I look for it in the Registry , I do not find it.
    Hence the Flex Plug-in is not getting installed successfully.

    Can you please let me know if I missed out on anything.

    Thanks in advance…

    Reply
  • 87. Padma  |  March 29, 2012 at 5:10 pm

    Hi,

    I want information @ flex automation with silk test workbench 2010. Workbench recorder is not recognising the flex components. I need step by step procedure

    Reply
  • 88. chataros  |  April 9, 2012 at 11:50 am

    there is a component (custom toolbar) in our app that extends a hbox, and inside there are some linkbuttons added dinamically.
    but the custom toolbar is not recognized by flexmonkey recording tool, neither are the butttons (CustomLinkButton that extends LinkButton) inside.
    Any idee on why it doesn’t work would be much appreciated

    Reply
  • 89. Utkarsh  |  April 30, 2012 at 6:06 pm

    Hi, I am working on an application and need to assign unique automationname property to every component to be uniquely identified by silktest tool.

    I have been successful in assigning unique automationnames to majority of components, but I am unable to create unique automation names for the dynamic child objects.

    For example, see the following code snippet

    <components:RadioText id="dcm_app" automationName="configurationModeStep_modeGroup_dcm_app_RB" radioGroup="{modeGroup}"

    Now, in my RadioText.mxml file, I am creating radio buttons

    Now, my question is, I have 3 radioText components and each have a radio button.

    But, now as the radioButton component is inside a RadioText component, I am unable to assign a unique automation name to each radio button. The automation names that I see for all the 3 radiobuttons is “radioLabelObj”

    Can, anyone help me, how can I assign unique automation names to the child components?

    Reply
  • 90. Subb  |  May 31, 2012 at 5:00 pm

    I am new to Flex automation.
    The client application is built in Flex 3.0 and we have to automate it with QTP 10.
    For this, I have installed QTP 10, Flex-QTP plug-in and flash player in IE8.

    Do I need to install Flash Builder as well for automating the Flex application?
    Thanks,
    Subbu

    Reply
    • 91. raniskumar  |  June 20, 2012 at 5:59 am

      Hi Subb, You dont need Flash Builder, but you need a FB professional version license.

      Reply
  • 92. Alex  |  August 24, 2012 at 8:20 am

    Hi,
    I’ve the questions about flex 4.x automation framework and i need help. Can I get your email or skype id?
    Thanks,
    Alex.

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


Follow

Get every new post delivered to your Inbox.

%d bloggers like this: