How does Ranorex identify UI elements?
Ranorex uses the RanoreXPath to identify applications and their UI elements required for test automation. The RanoreXPath provided by Ranorex Spy consists of many different, technology dependent attributes which can be modified and adapted by the user. To separate test code from identification information Ranorex provides a repository (see Lesson 6: UI Mapping with Ranorex Repository
) to map logical names to RanoreXPath expressions.
Is it possible to run the same Ranorex test code on Vista and XP?Yes. All identification information is stored within a RanoreXPath expression and is therefore separated from the test automation code. The following RanoreXPath expression finds a button both on Windows XP and on Windows Vista:
/form[@title='WordPad']/.//button[@text='&No' or @text='Do&n''t Save']
The RanoreXPath searches for a button, whether it contains the text '&No' or 'Do&n''t Save'.
Does Ranorex support data driven testing?
Yes. Ranorex supports four different data connectors to build data driven test cases:
A general description of how to create data driven test cases can be found here:
Lesson 3: Data-Driven Testing
How can I speed up my Excel-based data connector?
Especially with big files, the performance of Microsoft's default file format for excel spreadsheets is getting poor. This weakness might also affect your data driven test execution. For performance improvements you could use the binary file format (xlsb) instead of the default one (xlsx). Simply save your Excel spreadsheet with the extension "xlsb" and assign it to your excel data source
What to do when items can't be found during Ranorex test execution?
There are two primary reasons why some items can't be found during replay:
- Search timeout: Each element and each folder stored within the objects repository defines is it's own timeout used for search. In many cases it is required to wait for a dialog before continuing automation. Use the 'SearchTimeout' property to define the maximum time to search for the specified element.
- Wrong RanoreXPath: Start the application under test and make sure that the relevant GUI object is visible. Check the object's RanoreXPath within the repository browser using the 'Highlight Element' context menu item to see if Ranorex can find the element. Open Ranorex Spy to track the specified GUI object again. Compare the absolute path, shown within the object repository's property grid, with the given RanoreXPath provided by Ranorex Spy. If the given path by Ranorex Spy differs from the path represented by the repository use the path from Spy to the repository.
Is it possible to extend recordings with user specified code actions?
You can easily extend standard recordings with user specific code actions by converting existing action items or by adding a new user code action item to a recording. Learn more about how to use user code actions in recordings here: Lesson 5: User Code Actions
What is the difference between Adapter and Element?Adapters provide an easy-to-use interface for accessing attributes and actions of elements. Each item generated by the Ranorex object repository automatically represents a Ranorex Adapter (Button, CheckBox, Text, ListItem, TreeItem, ...). You can only create a Button Adapter of an element if the element supports the Button role, i.e. if Ranorex Spy recognizes the element as a Button.
If your controls are recognized as 'Unknown' or 'Element', Ranorex cannot assign them a role. You can't use special attributes or actions with these elements, but you can usually still create a path that identifies the element to execute minimally mouse clicks.
Is it possible to trigger Ranorex tests from an existing test or build environment?The result of a Ranorex test automation project is always an executable file. The generated *.exe can easily be started from other environments supporting command line execution.
Can I run my tests on machines where I am not allowed to install Ranorex?
Yes, it is possible to run automated tests on runtime machines without Ranorex Installation. Please refer to the chapter XCOPY Deployment
(Running tests without Ranorex Installation) in the User Guide.
Can I use Ranorex libraries within Visual Studio?
That's one of the big advantages of using Ranorex. You're able to use your existing development environment to develop Ranorex based test automation code. Additionally the code generated by the Ranorex Recorder or Ranorex Repository can easily be integrated into your Visual Studio projects. Read more ...
What shall I do with unexpected dialogs and popup windows during test automation?
Ranorex provides the dedicated class "PopupWatcher" to watch for and to handle popup windows. By using this class, not only simply click actions to close popup dialogs can be called. Even more complex scenarios can be handled in custom callback routines being called at the time the popup appears.
Read more about how to handle popup dialogs with Ranorex in the section code examples.
Is it possible to test Silverlight applications with Ranorex?
Yes it is. Simply ensure that your Silverlight application does not run in window-less-mode, i.e. set the 'Windowless' property of the Silverlight HTML object to false. Find more information about window-less mode on the following site: msdn.microsoft.com/en-us/library/cc838156(VS.95).aspx
Is it possible to automate a webpage without moving the mouse pointer?Yes it is. Simply use the 'PerformClick' instead of the normal 'Click' method when working with web adapters like 'DivTag', 'Input' or 'Link'.
What are the system requirements for developing and running Ranorex tests?
The following link to our online documentation shows what is needed to develop or to simply run Ranorex tests. Click here ...
Are there known incompatibilities with other software?In general, there are no known incompatibilities. However, some antivirus or security software blocks certain Ranorex functionality. Consequently, if you experience problems with your automation and are running antivirus or security software, we recommend temporarily switching that software off for a test run.