Archive for the 'Tech' Category
My Blog’s Graph

I was reading Griner’s Blog over at TheSocialPath.com and his latest post had an interesting image of a graph the blog. Of course, I got curious and decided to graph out my blog using this cool web page graphing site:

Webpages as Graphs

I am not sure what exactly it all means, but it sure looks purty.

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!

Make a Color Image Look Like a Sketch in Photoshop

How to Make a Color Image Look Like a Sketch in Photoshop

from wikiHow - The How to Manual That You Can Edit

A sketch is a free hand drawing. In Adobe Photoshop, you can add a sketch effect to any color image or photograph and give it an artistic feel, or perhaps trick your friends into thinking you’ve suddenly become an amazing sketcher.
(more…)

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.

Selecting “SQL_Latin1_General_CP1_CI_AS” Collation in SQL Server

Recently, I have had to install a named instance of SQL Server 2005 along side a default instance of SQL Server 2000. The 2000 server had the following collation configured: SQL_Latin1_General_CP1_CI_AS. For testing purposes, we had to make sure the new instance had the same collation setting.

(more…)

Determine SQL Database Collation Setting

If you want to determine the Collation setting for a particular database in SQL Server:

  1. Open Query Analyzer (or SQL Management Studio)
  2. Select your database
  3. Execute the following query:

SELECT DATABASEPROPERTYEX(db_name(), 'Collation') SQLCollation;
Hope this helps.