Copy link to clipboard
Copied
Hello,
I'm currently experimenting with FlexMonkey in order to automate some user interface tests. However, neither FlexMonkey 1 nor FlexMonkey 4 seem to work with our application build with Flex SDK 3.5. It looks like there is a problem with the automation API licence. After recording or replaying a couple of actions I always get one of the following error messages within the Flex application:
I'm not sure why I get those error messages. We have valid licenses for Flex Builder 3 Professional and Flash Builder 4 Premium which should, if I'm not mistaken, include licenses for the automation API.
I've also tested using a simple application with just one single button in it. When I compile it with SDK 3.5 and record my actions with FlexMonkey I get the error messages after about 30 clicks on the button. When I compile the application with SDK 4.1 everything works fine.
So, the license issues appear only in conjunction with SDK 3.x, not with SDK 4.x. Unfortunatly I need to use SDK 3 to compile our application.
I'd really appreciate your help on solving this issue.
Best regards,
Gerhard
Copy link to clipboard
Copied
Hi,
The combinations of license info is present below.
Automation licensing works in the following fashion with Flash Builder 4
SDK Version | License | Status |
3.5 | Flex Builder 3 professional license | Works |
3.5 | Flash Builder 4 premium license | Works |
4.1 onwards | Flex Builder 3 professional license | Licensing error |
4.1 | Flash Builder 4 premium license | Works |
Since you are using 3.5 sdk , with the valid 4 license on the Flash Builder 4, you should not be getting the license error.
Are you compiling the apps from the FB or using some scripts ?
Can you give the following information ?
Which FB you are using ?
How is the license applied?
Please check for the license.properties file (C:Documents Setting/ALL users/applicatiodata/adobe/flex) and check when you enter a value it is reflected.
have you recompiled the application after licensing ?
thanks,
rani
Copy link to clipboard
Copied
Hi,
thanks for your response. First, to answer your questions:
I've compiled my application with the following additional compiler options as recommended in the documentation of FlexMonkey.
-include-libraries "../libs/automation_monkey.swc" "${flexlib}/libs/automation.swc" "${flexlib}/libs/automation_agent.swc" "${flexlib}/libs/automation_dmv.swc"
This results in the license problems I mentioned in my first post.
I finally got it working with the run-time-loading suggested in the Flex Builder 3 Release Notes. The RunTimeLoading application includes one additional swc (qtp.swc) which seems to be the reason that no license notices are shown after 30 actions. So, I've to compile my application with
-include-libraries "../libs/automation_monkey.swc". After that I can use the RunTimeLoading application to load our swf. However, when I use the swf of our application without the runtime loading I get an error message from FlexMonkey since the other automation SWCs are missing. Well, I guess I have to compile two different applications.
I also tried adding the automation_monkey.swc to the RunTimeLoading application so I could load all automation SWCs at runtime. Well, that didn't work. It seems like there is a conflict between QTP and FlexMonkey (which was to be expected). Somehow that conflict doesn't exist when the SWCs of FlexMonkey and QTP are in different SWFs.
I'm not sure why QTP is needed in order to suppress license warnings. I don't need to include it in SDK 4.x, so, why is it needed in SDK 3.x?
Even though I've got a working solution now, I'd still like to know why I need to include qtp.swc when using SDK 3. The current solution isn't optimal yet. I'd rather be able to compile all needed SWCs directly into my SWF or at least compile all SWCs into the RunTimeLoading application. Dividing it into two applications where none can work without the other just doesn't feel right.
Best regards,
Gerhard