Archive for the 'Tools' Category
Updating ActiveX Datagrids in QTP

In my recent testing efforts, I have comes across a desktop windows form (written in VB6) involving updating a data grid and then calculating another field’s value based on those updates. In order to achieve this functionality, the development staffs implemented two events (AfterColUpdate and LostFocus) that, when triggered, would fire off the calculation method.

None of this is obvious to the end user when testing, all they see is enter a number into the grid column and the total field automatically updates with the sum of all values in the column. Easy peasy.

I created my reusuable action in QuickTest Pro and record the entering of data, which yielded the following code:

VbWindow(”frmMain”).VbWindow(”frmChildWindow1″).VbWindow(”frmChildWindow2″).AcxTable(”PaymentGrid”).SelectCell 1,4

VbWindow(”frmMain”).VbWindow(”frmChildWindow1″).VbWindow(”frmChildWindow2″).AcxTable(”PaymentGrid”).SetCellData 1,4, “30.00″

(more…)

Using QTP to Connect to an Oracle Database with Instant Client

Using QTP to Connect to an Oracle Database with Instant Client

by Geoffrey Rodgers
Need a light-weight ODBC connection to an Oracle database for you QTP scripts? Oracle Instant Client is just the ticket, assuming you have Oracle version 10g for your database. Please read the information provided by Oracle to make sure Instant Client is right for your needs.
The Instant Client Driver

I’m not going to rewrite everything provided by Oracle, but I will quickly say (for those of you that did not click on the above link) that Instant Client is a very quick installation and contains less overhead than the full client software that was previously required to connect to an Oracle database using something other than the Microsoft ODBC for Oracle driver.
Instant Client Driver Setup:

(more…)

Accessing Methods of ActiveX Objects

I have been using QuickTest Pro for several years now and have just discovered a simple, but highly useful, feature. In dealing with ActiveX controls, there are many times when the ActiveX add-in for QTP just doesn’t full recognize an application object.

Using the ObjectSpy, you can select the object in question and see all the runtime properties and methods available for the object. For the longest time, I had been using the GetROProperty() method to retrieve the values of the properties. However, I’d not considered how to execute the methods of the objects, as I never needed to do that.

It turns out that you can access the methods, and properties, of the object with this simple code snippet:


VbWindow("frmWindow").ActiveX("testObject").Object.methodName()
VbWindow(”frmWindow”).ActiveX(”testObject”).Object.Property

Happy Testing!

Description Objects

When creating reusable actions in QuickTest Pro, there are times you may come across the need to dynamically access an object within your application that may or may not exist within your Object Repository. One approach to handling this opportunity is through the use of Description Objects.

I could spend a lot of time attempting to explain how to go about implementing description objects, but I have found that QTP’s help files do a good job explaining exactly what you need to do. To find what you are looking for, search for “Using Description Objects for Programmatic Descriptions” within the help file.

(more…)

QuickTest Pro - List of mic* Keywords

Here is a list of mic* keywords that can be used in QuickTest Pro. I do not have documentation for each of the keywords. I have posted these has a quick reference guide for myself, and others.

These codes will be useful when entering text into textboxes, manipulating datagrids, selecting items for comboboxes and listboxes. Some are useful as constants: micPass, micFail, and micInfo. Most are specific for keys on the keyboard.

(more…)

QuickTest Pro 9.5 Object Recognition Issue

The other day I was diligently creating reusable actions for later use and writing code like nobody’s business. I have had my object repository set up for weeks and haven’t had any issues with it. I have recently upgraded to QTP 9.5 with updated Add-ins for Visual Basic, Web, and .NET.

The application I have been automating is a VB6 desktop client application. Normally, my Object Spy recognizes the main form as frmMain, the VbName property for the action. Well, for whatever reason, QTP just stopped recognizing the VbName properties of all the application objects, choosing such helpful designations as VbWindow and VbButton.

Scouring the internet forums and support sites, I have discovered that this has been a fairly common issue with no distinct resolution. I had tried several remedies and then, in frustration, decided to reinstall the QTP application.

Lo and behold, I had solved the Object Recognition issue. An inelegant solution, but a solution nonetheless.

MS Project Viewer

A little while ago, I was presented a MS Project plan that I was supposed to review. I found that I didn’t have Project installed on my workstation, so I went in search of a Project viewer, like those freely available for Word or Excel. Well, apparently, Microsoft hasn’t provided such an easy solution. So I searched on… and found many commercial software packages that would do the job. But being frugal, some may say cheap, I didn’t want to spend money on such a tool.

(more…)

Creating an application using Amazon Web Service

I’ve just discovered a cool tutorial over at Coding4Fun. The show you how to implement the Amazon Web Service in a C# application allowing you to search for books and such via your application. This could be extremely useful in developing your own web application/site when attempting to integrate with larger companies.

Give it a shot…

Coding4Fun : Using the Amazon Web Service

The 3.0 release includes a downloadable software development kit. Before getting started on the application, I installed the SDK on my computer. The SDK provides all the information you need on using Amazon Web services to add content to Web sites, enable transactions, and upload products to Amazon.com. I don’t need to add content to my Web site or use the more advanced features of the Amazon Web services. Not yet, anyway. I usually have modest objectives when I begin working with unfamiliar technology. A desktop application that uses one of the Web methods provided by the Amazon Web service is a good starting point. Once I get familiar with the Amazon Web services I can look forward to tackling more ambitious projects later on.

Happy Coding!

Using External Libraries in QTP

I’ve found it necessary to create my own code libraries in QuickTest Pro to handle scenarios that aren’t generally covered by the typical QTP or VBScript APIs. This is a useful process for creating reusable functions that are accessible to your entire automation suite. (more…)

The Object Repository in QTP 9

The Software Inquisition has an article about the new Object Repository interface in QuickTest Pro 9. Since the company I work is about to migrate to this version of QTP, I figured I would read up on it a bit. This article does a good bit of explaining some new features (and added headaches), so I have a better clue what to look for in a few weeks. (more…)