Rapise, Selecting the Library for Recording

January 29th, 2015 by Adam Sandman

automated testing

Rapise is powerful, and flexible. But how? It is not only in the many ways you can learn an object, manipulate an object, or alter the test. Rapise also gives you the ability to select which recognition engine to use. Not only that, you can also modify the engine itself.

Selecting the Application to Record

Once you have launched Rapise, you have the option to select an application under test. In most cases you will just select the Application under test and go forth to learn the objects. This is allowing Rapise to make its most intelligent selection of which parts of the recognition engine are best suited to the task at hand. Typically you are good at this point and can go ahead and learn your objects:

Choosing a Specific Library

Occasionally, you are interested in testing using a specific technology, or Rapise seems to be having a hard time making the best selection. In these cases you will click on the plus (+) sign at the bottom of the selection window to expand the libraries menu:

Once expanded, you will see the list of available libraries. By default Rapise is set to use “Auto” as its selection. This allows Rapise to guess the best set of libraries to use based on the application selected. You will also see a listing of many technologies which you can select amongst. It is not limited to a single selection, for example, if you are using a Telerik control in the IE web browser you would select the Telerik, Internet Explorer HTML and possibly even the UI Automation (WPF) libraries.. Each of these libraries represents a separately developed engine available to Rapise.

In tests where you have allowed Rapise to determine the best selection of engine for the Application under test, you may have noticed a line in the test that looks like this

g_load_libraries=["Generic"];

This is the line that tells Rapise which libraries to load during playback of the test. In theory, you could load all of the engines, but that will significantly slow down playback. Being specific to the necessary case is a better way of insuring your tests run reliably and quickly.

Each library contains the logic and definition of how Rapise will learn an object, and later how it will interact with an object, based on the technology used to deploy the object. It is an engine that makes the framework of Rapise able to perform tasks. It is important to include the libraries required to interact with your application otherwise Rapise will not be able to interact as it is designed.

The User Library

In the listing of Libraries, or Engines, You will also see a library listed as "User". This is an advanced function of Rapise where you can develop you own engine. This is particularly useful in the case where you have an object that has not been previously defined, or a technology stack that is proprietary or brand new. We are actively developing community around this capability so that our users may share how they have developed and deployed testing on various technologies.

Developing you own libraries is a task that will require fair knowledge of both JavaScript and the technology to be integrated. We would suggest a deep dive into the user manuals and other libraries to see how others have conquered this task in the past. Our support team will also be able to assist you in this task.

Summary

In conclusion, Rapise usually does a fine job of automatically selecting the libraries to use in a test. However it is good to know that you have the ability to select a library explicitly without Rapise's help and to develop your own library if necessary. This allows you to extend Rapise as necessary and ensures that you have a unified platform for all your testing activities.

Spira Helps You Deliver Quality Software, Faster and with Lower Risk.

Get Started with Spira for Free

And if you have any questions, please email or call us at +1 (202) 558-6885

Free Trial