Navigation



Frequently Asked Questions

Feel free to contact us if you do not find an answer to your question below.

Features and Functionality

What operating systems does RIATest run on?
Do I need to compile with RIATestAgent.swc or RIATestAgent2.swc?
I am using 1.5 beta version. Will I have to recompile my application after downloading RIATest 1.5 Final?
Is RIATest an open source product?
Does RIATest support Flex 2 applications?
Does RIATest work with AIR applications?
Does RIATest support applications written with Flex 3?
How similar is RIATest scripting language to ActionScript?
I get "Agent protocol version 1 connecting. Some features will not be available" message.
Are there features like parameterization, object repository, running tests in loops?
How can I use command line execution to run my test scripts?
How can I get individual script test results? I want to know the cause of failure.
How we can customize RIATest results with our way of logging?
RIATest waits for a few seconds for the agent to connect. Can I increase the wait time?
How can I get the Application ID?
I am getting the following error: TypeError: Error #1009.
How the methods like Read(), Write() can be used to work with an external file?
I would like to know if there is a way of recording actions on objects based on their IDs?
Can you supply examples of drag and drop scripts on FlexDataGrid?
We derived a custom component from HBox and it is not recognized by RIATest.
I get a security violation error when using Runtime Loader (RIATestLoader)
I get a "No scripts in the project to run" message

Integration and 3rd party frameworks

Is it possible to integrate RIATest tool with a [third-party tool name here]?
Can RIATest be used for testing the hybrid model of Flex/ASP.NET?
Can we frame the test cases in NUnit format?
Is it possible to use the same browser which had been opened up by another testing tool?
Is there a way to pass variables to RIATest through my third-party tool?
How to call RIATest from Apache Ant?
Can we launch our application against Tomcat?

Licensing

Do I have to buy a LiveCycle Data Services license from Adobe to use RIATest?
I get a "License not present. With trial version only limited replays are allowed" message.
Does the serial number expire? Do I need to renew at one point?
Once I purchase a license, do I get all the future updates or subsequent releases for free?
Can you please let us know the pricing and the licensing model for the tool?
What kind of support do you provide?
Do you have any provision for floating license?
If we buy RIATest licenses what technical support is included?
What is $99/hour support option?

What operating systems does RIATest run on?

Microsoft Windows 2000, XP, Vista.


Do I need to compile with RIATestAgent.swc or RIATestAgent2.swc?

Compile Flex 3 applications with RIATestAgent.swc only and Flex 2 applications with RIATestAgent2.swc only. Do not ever compile with both swc's.


I am using 1.5 beta version. Will I have to recompile my application after downloading RIATest 1.5 Final?

Yes, you will need to download full release and recompile your application if you are using static compilation option.


Is RIATest an open source product?

RIATest is a closed source commercial product. There are currently no plans to open source RIATest.


Does RIATest support Flex 2 applications?

RIATest versions 1.5 and higher support Flex 2.
Runtime Loader option is not supported for Flex 2 applications, only static compilation option is supported. You need to compile your application with the following libraries (instead of the ones specified in the "Getting Started" document):

"C:\Program Files\RIATest\agent\RIATestAgent2.swc" "C:\Program Files\Adobe\Flex Builder 3\sdks\2.0.1\frameworks\locale\en_US\automation_rb.swc" "C:\Program Files\Adobe\Flex Builder 3\sdks\2.0.1\frameworks\libs\automation.swc" "C:\Program Files\Adobe\Flex Builder 3\sdks\3.0.0\frameworks\libs\2.0.1.automation_swcs\automation_agent.swc" "C:\Program Files\Adobe\Flex Builder 3\sdks\3.0.0\frameworks\libs\2.0.1.automation_swcs\automation_agent_rb.swc"


Does RIATest work with AIR applications?

Yes, RIATest does work with AIR applications.

1. Compile you AIR application with RIATestAgent.swc and Flex automation libraries. See section "Embedding RIATest Agent at compile time" in Getting Started document.

2. In Project|Options select "Without browser, standalone exe or AIR application" and type AIR application exe file path in the Application URL box, e.g. C:\Program Files\TestAIR\TestAIR.exe
The AIR application must be previously compiled in Flex and installed on your computer.


Does RIATest support applications written with Flex 3?

RIATest does support both Flex 2 and Flex 3 applications.


How similar is RIATest scripting language to ActionScript?

Both ActionScript and RIAScript are based on ECMAScript standard. RIAScript is a subset of ActionScript with very few enhancements (such as waitfor operator). Formally RIAScript and ActionScript are not the same language but they are as close as it gets.


I get "Agent protocol version 1 connecting. Some features will not be available" message.

Recompile your application with RIATestAgent.swc file that comes with Version 1.5. Your application is compiled with older version of Agent that comes with RIATest 1.0.

With properly compiled application you should not get the message "Agent protocol version 1 connecting...". This only happens if you use older RIATestAgent.swc with new RIATest IDE.


Are there features like parameterization, object repository, running tests in loops?

RIATest supports parameterization through user defined functions. Just define test cases inside functions and call with whatever parameters you want.

You can create object repositories by extracting Locators to separate script file, assigning Locator values to global variables, including this file in all your scripts and using those variable for scripting instead of directly generated Locators.

Loops are also supported, see RIAScript Documentation for the description of for and while statements.


How can I use command line execution to run my test scripts?

Use the following:
riatest.exe /b /r /p c:\mypojectdir\myproject.rtp
It will execute and return exit code 0 on success or other exit codes on failure.

You can also use environment variable RIATEST:
"%RIATEST\riatest.exe" /b /r /p c:\mypojectdir\myproject.rtp

RIATEST variable points to the installation directory not to riatest.exe.
This is done purposely so that you can also refer to other files such as
"%RIATEST%\agent\RIATestAgent.swc" in the build tool.


How can I get individual script test results? I want to know the cause of failure.

When an action or verification fails appropriate error message is printed in the log (e.g. "Verification failed at line 134"). You can parse the log file using some 3rd party text parsing tool and extract those messages.


How we can customize RIATest results with our way of logging.

You can instruct RIATest to output its log to a file instead of console. Use command line option /o.


RIATest waits for a few seconds for the agent to connect. Can I increase the wait time?

RIATest by default waits for 30 seconds for agent to connect after starting the script execution. If 30 seconds are not enough you can disable the "Wait for Agent before running" project option and perform waiting actions from within your first running script by adding the following lines at the top of the script:

setWaitTimeout(100000);
waitfor(isAppConnected("App"));
The first line sets timeout for waitfor operation to 100 seconds (default is 30 secs). Second lines waits until the agent is connected to RIATest. You need to pass to isAppConnected function the id of your application.


How can I get the Application ID?

You can look in the html file that loads your swf file. If you are using standard Flex html wrapper you need to find the call to function AC_FL_RunContent and see what is passed for "id" parameter. This is usually the same as the name of your main mxml file of your Flex application.

You can also temporarily enable the "Allow multiple Agent connections" project option in RIATest and launch your application. When agent connects you should see something like this in the message log: Agent connection accepted. Application id=App


I am getting the following error: TypeError: Error #1009.

If you are using RIATest 1.0 upgrade to RIATest 1.5. If you are using static compilation option make sure to recompile your application with new RIATestAgent.swc that comes with version 1.5. If you still get the error please contact us.


How the methods like Read(), Write() can be used to work with an external file?

Read/write methods allow you to work with the console of externally launched application. See Process.rts script in ScriptTest sample project.


I would like to know if there is a way of recording actions on objects based on their IDs?

For example, I have an action

FlexButton("My Button Text")=>click();
Where "My Button Text" is the Label on the Button. If this label changes (for example during localization) it will throw off the test scripts created based on them. Instead if it were using the underlying ID, which does not change that often, the test scripts can be mostly stable.

RIATest uses automationName for identifying components. Each Flex component uses one of its properties as default value for automationName.
For example Button uses it label for automationName.
However you can set automationName to something else in your application and it will be picked by RIATest and used for recording/playing. For example:
<mx:Button label="My Button Text" automationName="myBtn"/>

For the above Button RIATest will generate FlexButton("myBtn") locator. This is how it is supposed to work according to Flex automation framework and this is what RIATest currently uses.


Can you supply examples of drag and drop scripts on FlexDataGrid?

The Components sample project included in RIATest installation has examples of DataGrid drag and drop functionality (see DataGridComponent.rts).


We derived a custom component from HBox and it is not recognized by RIATest.

HBox is specifically excluded from automation hierarchy by setting showInAutomationHierarchy to false (since it is not a interactive component, and is only used for layout).
If your component is an interactive component and you will want it to be visible to automation you simply need to add one line in the constructor of your component:

public function MyComponent()
{
    super();
    showInAutomationHierarchy = true;
}


I get a security violation error when using Runtime Loader (RIATestLoader)

You are probably using RIATest 1.0 as this problem is fixed in RIATest 1.5. A workaround for users of version 1.0 is the following.

To avoid error message that reads something like "SecurityError: Error #2121: Security sandbox violation" make RIATest globally trusted for your Flash Player. To do so create a text file RIATest.cfg that contains one line:
C:\Program Files\RIATest\
(Adjust the path if you installed RIATest to non-default location)

Put this file in C:\windows\system32\Macromed\Flash\FlashPlayerTrust\ directory (make sure to use the correct path if you have a non-default Windows installation).


I get a "No scripts in the project to run" message

There must be at least one script in the project to run.

Right click on the project item on the 'Project' pane and select 'Add Existing Script' then navigate to your script file and add it to the project.

You should be able to run the project now. Note that only scripts added to the project are being executed when 'Run' command is selected. Make sure that you save the scripts before running.


Is it possible to integrate RIATest tool with a [third-party tool name here]?

RIATest has full support for unattended command line execution, so it can be integrated into your testing framework or build tool if that tool supports calling external programs and passing command line parameters. You can also execute external programs from within RIATest scripts.


Can RIATest be used for testing the hybrid model of Flex/ASP.NET?

RIATest can be used for automating only Flex part of any mixed/hybrid application.


Can we frame the test cases in NUnit format?

RIATest test cases are written in RIAScript proprietary script language. Test cases can be only run using RIATest. You may be able to integrate RIATest tests within other testing frameworks if that other framework supports calling external programs.


Is it possible to use the same browser which had been opened up by another testing tool?

You can instruct RIATest not to open browser window at all. Just uncheck project option "Launch application".


Is there a way to pass variables to RIATest through my third-party tool?

You can write any data to a file on disk and read file content using fileGetContents function in RIATest.


How to call RIATest from Apache Ant?

You can use Ant's built-in exec task to call RIATest from your ant projects. For example:

<target name="test" description="test the project">  
	<property environment="env"/> 
 	<exec dir="." executable="${env.RIATEST}\riatest.exe" failonerror="true"> 
 		<arg line="/b /r /p Components.rtp"/> 
 	</exec> 
</target> 


Can we launch our application against Tomcat?

It does not matter how exactly your application SWF is being served to the browser (via Tomcat or any other way). As soon as you application is loaded in the browser and it is allowed to make outgoing TCP connections it will work.



Do I have to buy a LiveCycle Data Services license from Adobe to use RIATest?

No. Adobe Flex 3 Professional Edition includes automation libraries. No additional licenses are required.


I get a "License not present. With trial version only limited replays are allowed" message.

You get this message because you are using trial version of Flex. You will need a valid Flex Builder 3 Professional license. This is not our limitation, it comes from Adobe.


Does the serial number expire? Do I need to renew at one point?

Serial numbers will never expire.


Once I purchase a license, do I get all the future updates or subsequent releases for free?

Current upgrade policy is that minor version upgrades and hot fixes are free. For example if you buy version 1.0 now then version 1.5 will be free however version 2.0 will not.


Can you please let us know the pricing and the licensing model for the tool?

RIATest 1.5 costs $399 per user. Each license allows you to install RIATest on one computer only. Here is the RIATest License Agreement


What kind of support do you provide?

We provide free support to the customer requests which are strictly related to RIATest. We also provide consultative paid support for issues which require significant time investment such as helping in automation of custom components or reviewing test scripts and advising for changes, etc. See more details here.


Do you have any provision for floating license?

No, RIATest currently is licensed per user only. One license allows you to install RIATest on one computer and be used by one user.


If we buy RIATest licenses what technical support is included?

We provide free technical support via email. This includes answers to bug postings, feature requests, suggesting workarounds to RIATest limitations, etc.


What is $99/hour support option?

Paid support gives access to our engineering resources, for example when you need help with automating a custom component, writing test scripts, etc.