QTP Note On Object Repository
QTP Note On Object Repository
www.ramupalanki.com
7. Click <OK>.
3. Manually define a new test object.
1. Go to Resources -> Object Repository.
2. In the Filter combobox, select “Local Objects.”
3. Go to Object -> Define New Test Object.
4. Select the appropriate Environment for your test object. For
example, to add a Link object, select “Web.”
5. Select the desired test object class for the new object.
6. Enter a name for your test object.
7. Fill in the Test object details as needed. The Test object details area
automatically contains the mandatory properties defined for the object
class in the Object Identification dialog box. You can add or remove
properties as required, and define values for the properties.
To add properties, click the “Add description properties” button (with the + icon).
Select the properties to be added and click <OK>.
To remove properties, select the properties to be removed, and click the
“Remove selected description properties” button (with the X icon)
8. Click <Add> to add the new object.
9. Repeat steps d through h as needed.
10. When done, click <Close>.
Note:
When you manually define an object, QuickTest Professional will not automatically
add the object’s parent. If the parent objects are not present, you will need to define
them as well. Once the objects are added to the repository, you can drag-and-drop
them to their appropriate positions.
4. Add the object using the Active Screen.
1. In the Active Screen, right-click on the object to be added.
2. Select “View/Add Object.”
3. If the Object Selection window appears, verify the desired object is
selected, and click <OK>.
4. In the Object Properties window, click <Add to Repository>.
Adding objects to a shared object repository:
An object can be added to a shared object repository in one of the following ways:
1. From a local repository.
2. Add objects manually.
For more QTP Realtime Sripts, visit
www.ramupalanki.com
1. Go to Resources -> Object Repository Manager.
2. Go to File -> Open -> <repository to open>.
3. By default the repository will open in read-only mode. Go to File -> Enable
Editing.
4. Go to Object -> Add Objects.
5. Click on the object to be added to the repository.
6. If the Object Selection window appears, select the desired object, and
click <OK>.
7. If the Add Object to Object Repository window appears, select the
appropriate option:
To add only the selected object, select the “Only the selected object” radio
button. To add the selected object and its child objects of a specified type, select
the “Selected object and its descendants of type” radio button. Then, select the
checkbox next to the child object types that should be added.
8. Click <OK>.
3. Manually define a new test object.
1. Go to Resources -> Object Repository Manager.
2. Go to File -> Open -> <repository to open>.
3. By default the repository will open in read-only mode. Go to File -> Enable
Editing.
4. Go to Object -> Define New Test Object.
5. Select the appropriate Environment for your test object. For
example, to add a Link object, select “Web.”
6. Select the desired test object class for the new object.
7. Enter a name for your test object.
8. Fill in the Test object details as needed. The Test object details area
automatically contains the mandatory properties defined for the object
class in the Object Identification dialog box. You can add or remove
properties as required, and define values for the properties.
To add properties, click the “Add description properties” button (with the + icon).
Select the properties to be added and click <OK>.
To remove properties, select the properties to be removed and click the
“Remove selected description properties” button (with the X icon)
9. Click <Add> to add the new object.
10. Repeat steps d through h as needed.
11. When done, click <Close>.
Note:
When you manually define an object, QuickTest Professional will not automatically add the object’s
parent. If the parent objects are not present, you will need to define them as well. Once the objects
are added to the repository, you can drag and drop them to their appropriate positions.
For more QTP Realtime Sripts, visit
www.ramupalanki.com
4. Merge with another shared object repository.
1. I have a problem related to object identification. Please take a look
at this, and let me know if you can help with this:
Hi Ankur/fellow testers,
I am currently trying to run QTP scripts which were recorded on a PC- PC1, on one of my
PCs- PC2 and the script continually fails at points where it does not find objects in the
repository. I am forced to re-record time and again to solve this problem.
Right now, I am doing this step where I’m logged into Outlook and am trying
to select File –> Open.
I get the following error for the Context Menu object
”
The “ContextMenu” object was not found in the Object Repository.
Check the Object Repository to confirm that the object exists or to find the
correct name for the object.
Line (36): “Window(”Outlook Express”).WinObject(”Outlook Express
Message_2″).WinMenu(”ContextMenu”).Select “Open Ctrl+O”".
”
How do we avoid this problem while porting between PCs? One of the
approaches I tried was to export the objects in PC1 and save it as a .tsr file
which i copied into the other pc, PC2. In PC2, I tried to import this tsr file by
pasting the following bit of code in my qtp script:
Dim App ‘As Application
Set App = CreateObject(”QuickTest.Application”)
App.Test.Settings.Resources.ObjectRepositoryPath
=”c:\act.tsr” However, this failed with the error:
You cannot change the object repository type for this test.
Line (3): “App.Test.Settings.Resources.ObjectRepositoryPath =”c:\act.tsr”".
Any idea? We are wasting a lot of time having to re-record/add objects which
are not recognized.
Appreciate any help.
How to merge object repository files (QTP 9.0)?
Merging a local object repository with a shared object repository:
To merge the contents of a local repository into a shared repository, the shared
repository must be associated with the action containing the local repository. In the
Object Repository Manager, select the “Update from Local Repository” option.
Updating the Shared Object Repository with the objects in the Local Repository will
merge all objects from the Local Repository into the Shared Repository. All objects will
be removed from the Local Repository.
1. Save the script containing the Local Repository. Open a new test.
2. Go to Resources -> Object Repository Manager.
3. In the Object Repository Manager window, go to File -> Open, and select the
Shared Object Repository file. Clear the “Open in read-only mode” checkbox.
4. If the repository file opened in read-only mode, go to File -> Enable Editing.
5. Go to Tools -> Update from Local Repository.
6. Click the “Add Tests” icon button. If you are connected to a TestDirector for
Quality Center with Business Process Testing, you will have the option to
browse for a test or a component. Select the appropriate choice.
7. Navigate to the test or component containing the Local Repository.
For more QTP Realtime Sripts, visit
www.ramupalanki.com
Note:
You can only add a test containing actions that are associated with the Shared Object
Repository you are updating and whose Local Object Repositories contain objects.
8. In the Update from Local Repository dialog, select the desired action.
9. Repeat steps 6 through 8 as needed.
10. Click <Update All>.
Note:
If the test using the Shared and Local Repositories is currently open, you may
receive an error similar to the following:
“You cannot update this shared object repository from the <path> test’s local object repository
because the test is currently locked by ‘<username> on machine ‘<machine name>’. Wait for
the test to be unlocked and then try to perform the update operation for this test again.
If so, open a new test in QuickTest Professional to release (unlock) the test and repeat step 10.
11. Perform any steps needed to resolve conflicts.
12. If you are performing multiple merges, go to File -> Save and Merge Next to
perform the next merge (the Local Object Repository of the next action being
merged into the Shared Object Repository).
13. Click <Yes> to save your changes between merges. If you click <No>, the
current merge (objects merged from the last action) will not be saved.
14. Repeat steps 11 through 13 to complete the multiple merges.
15. Choose File -> Exit, then click <Yes> to save the updated Object Repository.
Merging shared object repositories:
1. Open the Object Repository Manager.
2. Go to Tools -> Object Repository Merge Tool.
3. In the New Merge window, browse to the primary repository file. Mercury recommends
selecting the repository file you have invested the most time into as the primary repository
file.
4. Select the secondary repository file.
5. Click <OK>.
6. Review the merge statistics, as described in Viewing Merge Statistics, and click
<Close>.
7. Resolve any merge conflicts that were reported.
Resolving object conflicts:
Conflicts between objects in the primary and secondary object repositories are
resolved automatically by the Object Repository Merge Tool using default resolution
settings. For information on defining the default settings, refer to the QuickTest
Professional User’s Guide (Help -> QuickTest Professional Help -> QuickTest
Professional User’s Guide -> Managing and Merging Object Repositories -> Merging
Shared Object Repositories -> Defining Default Settings).
The Object Repository Merge Tool also allows you to change the way the merge was
performed for each individual object that causes a conflict.
1. In the object repository tree, select an object that has a conflict (there will be an
icon to the left of the object name). The conflicting objects are highlighted in the
source repositories. A description of the conflict and the resolution method used
by the Object Repository Merge Tool is described in the Resolution Options
pane.
2. In the Resolution Options pane, select a radio button to choose a resolution
method. The target object repository is updated according to your selection and
redisplayed.
For more QTP Realtime Sripts, visit
www.ramupalanki.com
Note:
http://qtpfaq.wordpress.com/2007/09/04/object-repositories/ •
How to associate Shared Object Repositories to the test (QTP 9.0)?
· Some Useful Tips with QTP
· Oracle BI EE 10.1.3.3/2 - Import from Repository - Deprecated 2-Way Merge
· Difference between QTP 8.2 & QTP 9.0 ??
What are the new features of the
QTP 9.0 Object Repository?
Features and functionality of the QTP 9.0 Object Repository With the QTP
9.0 Object Repository, you can:
1. Associate multiple repositories with an action.
2. Use both a Local and Shared Object Repositories with an action.
Note:
If both the Local and Shared Object Repository files contain the same object,
QuickTest Professional will use the object in the Local Repository.
For more QTP Realtime Sripts, visit
www.ramupalanki.com
3. Add objects from the Local Repository to an associated Shared Repository.