Custom Libraries | Test Automation Features | Rapise

Custom Libraries

The JavaScript source code for library recognition and execution is available to the user, as well as a JavaScript Application Programming Interface (API). New recognition and execution capabilities can be added to Rapise by the end user and shared with colleagues, giving your team the flexibility to automate where other tools fail.

What are Custom Libraries?

If a GUI control is not natively supported by Rapise you can add the required support yourself by means of creating a Custom Library. Such library will enable Rapise to record, learn and operate with your GUI control during test playback and this control will become natively supported.

Type of Custom Library

Your library can provide Basic or Full support for your application. Basic support allows you to manually Learn objects, write test scripts, and Playback your scripts. Full support allows you to Record as well.

Basic Support

Add a Matcher Rule to the library for every window type in your application. The SeSMatcherRule includes information to identify your application, and a set of behaviors.

var yourApplicationRule = new SeSMatcherRule(


object_type: "yourAppObject",

classname: "yourAppFrame", //You can use a regular expression here

behavior: [yourAppBehavior]


Override Actions: Override actions in yourAppBehavior (above). The action definitions you provides will be used during Playback. Overriding actions does not affect recording.

var HTMLFirefoxBehavior =


actions: [{

actionName: "Click",

DoAction: function(){}



actionName: "SetText",

DoAction: function(/**String*/txt){}



Full Support

Enable Recording: You can enable recording in two ways. If your application notifies the Accessibility Events interface about application events, you can override events in the behavior section of SeSMatcherRules:

var newBehavior={

actions: [{/*section deleted for brevity*/}],



OnSelect: function(/**SeSObject*/ param, /**Boolean*/ badd)

{ /*...*/


OnSelectAdd: function(/**SeSObject*/ param, /**Boolean*/ badd)

{ /*...*/



var newRule = new SeSMatcherRule({

object_type: "someType",

role: "someRole",

behavior: [newBehavior],


About Inflectra

Our mission to helping our customers - large corporations, small businesses, professional services firms, government agencies and individual developers – with the means to effectively and affordably manage their software development and testing lifecycles, so as to decrease the time to market and increase return on investment.

At Inflectra, we are fully committed to provide our customers with the very best products and customer service. We believe in going the extra mile to ensure that each customer is satisfied with our software products. We have the experience and the commitment to deliver the products customers need to deliver their projects and assure quality every step of the way. (Learn More)

Our Guarantee

We are so confident that you will be fully satisfied with our products that we offer a 30-day, unconditional, money back guarantee! (Learn More)