Search This Blog

Tuesday, December 21, 2010

Object Identification Properties



In my last post i told you how qtp identify any object. Now we will discuss what all properties of an object qtp uses to uniquely identify it.

QTP uses following properties to uniquely identify any object 

1.    Mandatory Property 
2.    Assistive Property 
3.    Ordinal Identifier 
4.    Smart Identification

Before recording, these properties has to be defined for each object by a test engineer in QTP>Tools>Object Identification.

Let’s discuss these in detail.

1.    Mandatory Property :
As per qtp help “Quick Test has a list of mandatory properties that it always learns”. Whenever we record any object as Test Object QTP learns its specified mandatory properties which helps to uniquely identify any object. If QTP feel that these are more objects with same description it learns Assistive Properties.

2.    Assistive Properties :
As per qtp help are “Assistive Properties are properties that QuickTest learns only if the mandatory properties that QuickTest learns for a particular object in your application are not sufficient to create a unique description. If several assistive properties are defined for an object class, then Quick Test learns one assistive property at a time, and stops as soon as it creates a unique description for the object. If QuickTest does learn assistive properties, those properties are added to the test object description.”

3.    Ordinal Identifier :
As per qtp Help - The ordinal identifier assigns the object a numerical value that indicates its order relative to other objects with an otherwise identical description (objects that have the same values for all properties specified in the mandatory and assistive property lists). This ordered value enables QuickTest to create a unique description when the mandatory and assistive properties are not sufficient to do so.

The assigned ordinal property value is a relative value and is accurate only in relation to the other objects displayed when QuickTest learns an object. Therefore, changes in the layout or composition of your application page or screen can cause this value to change, even though the object itself has not changed in any way. For this reason, QuickTest learns a value for this backup ordinal identifier only when it cannot create a unique description using all available mandatory and assistive properties.

In addition, even if QuickTest learns an ordinal identifier, it will use the
identifier during the run session only if the learned description and the Smart Identification mechanism are not sufficient to identify the object in your application.

If QuickTest can use other identification properties to identify the object during a run session, the ordinal identifier is ignored.

QuickTest can use the following types of ordinal identifiers to identify an
object:
  • Index. Indicates the order in which the object appears in the application code relative to other objects with an otherwise identical description.
  • Location. Indicates the order in which the object appears within the parent window, frame, or dialog box relative to other objects with an otherwise identical description.
  • Creation Time. (Browser object only.) Indicates the order in which the browser was opened relative to other open browsers with an otherwise identical description.
When qtp identifies any object first, it learn all of its specified mandatory properties, if object is uniquely identified with these mandatory properties qtp stop learning its properties if qtp feel it is not able to identify object uniquely with help of all mandatory properties, it learns first assistive properties & verify if it is  ok to identify object uniquely, if still it feels that it need some more properties it learns second assistive property & this process continues till QTP identify the object uniquely.

Some time Mandatory & Assistive Properties are not sufficient for description of an object so it uses ordinal identifier to identify.

As last attempt to learn description the object if above all Properties fail to identify object uniquely it uses Smart Identification.

We will discuss Smart Identification later in detail.

No comments:

Post a Comment