Friday, July 11, 2008

Interview Questions of QTP

Q. What is QTP ?

A) Quick Test is a graphical interface record-playback automation tool. It is able to work with any web, java or windows client application. Quick Test enables you to test standard web objects and ActiveX controls. In addition to these environments, Quick Test Professional also enables you to test Java applets and applications and multimedia objects on Applications as well as standard Windows applications, Visual Basic 6 applications and .NET framework applications…


Q. Explain QTP Testing process ?

A) The Quick Test testing process consists of 6 main phases:
1. Create your test plan
Prior to automating there should be a detailed description of the test including the exact steps to follow, data to be input, and all items to be verified by the test. The verification information should include both data validations and existence or state verifications of objects in the application.
2. Recording a session on your application
As you navigate through your application, Quick Test graphically displays each step you perform in the form of a collapsible icon-based test tree. A step is any user action that causes or makes a change in your site, such as clicking a link or image, or entering data in a form.
2. Enhancing your test
o Inserting checkpoints into your test lets you search for a specific value of a page, object or text string, which helps you identify whether or not your application is functioning correctly.
NOTE: Checkpoints can be added to a test as you record it or after the fact via the Active Screen. It is much easier and faster to add the checkpoints during the recording process.
o Broadening the scope of your test by replacing fixed values with parameters lets you check how your application performs the same operations with multiple sets of data.
o Adding logic and conditional statements to your test enables you to add sophisticated checks to your test.
3. Debugging your test
If changes were made to the script, you need to debug it to check that it operates smoothly and without interruption.
4. Running your test on a new version of your application
You run a test to check the behavior of your application. While running, QuickTest connects to your application and performs each step in your test.
5. Analyzing the test results
You examine the test results to pinpoint defects in your application.
6. Reporting defects
As you encounter failures in the application when analyzing test results, you will create defect reports in Defect Reporting Tool.

Q.Explain the QTP Tool interface.

A)It contains the following key elements:

Title bar, displaying the name of the currently open test

Menu bar, displaying menus of Quick Test commands

File toolbar, containing buttons to assist you in managing tests, containing buttons used while creating and maintaining tests

Test toolbar

Debug toolbar, containing buttons used while debugging tests.Note: The Debug toolbar is not displayed when you open Quick Test for the first time. You can display the Debug toolbar by choosing View > Toolbars > Debug. Note that this tutorial does not describe how to debug a test. For additional information, refer to the

Quick Test Professional User’s Guide.

Action toolbar, containing buttons and a list of actions, enabling you to view the details of an individual action or the entire test flow.


Note: The Action toolbar is not displayed when you open Quick Test for the first time. You can display the Action toolbar by choosing View > Toolbars > Action. If you insert a reusable or external action in a test, the Action toolbar is displayed automatically. For additional information, refer to the Quick Test Professional User’s Guide.

Test pane, containing two tabs to view your test-the Tree View and the Expert View

Test Details pane, containing the Active Screen

Data Table, containing two tabs, Global and Action, to assist you in parameterizing your test

Debug Viewer pane, containing three tabs to assist you in debugging your test-Watch Expressions, Variables, and Command. (The Debug Viewer pane can be opened only when a test run pauses at a breakpoint.)

Status bar, displaying the status of the test


Q. Explain about the Test Fusion Report of QTP ?
A) Once a tester has run a test, a Test Fusion report displays all aspects of the test run: a high-level results overview, an expandable Tree View of the test specifying exactly where application failures occurred, the test data used, application screen shots for every step that highlight any discrepancies, and detailed explanations of each checkpoint pass and failure. By combining Test Fusion reports with Quick Test Professional, you can share reports across an entire QA and development team.


Q. To which environments does QTP supports ?
A) Quick Test Professional supports functional testing of all enterprise environments, including Windows, Web, ..NET, Java/J2EE, SAP, Siebel, Oracle, PeopleSoft, Visual Basic, ActiveX, mainframe terminal emulators, and Web services.


Q. How the exception handling can be done using QTP
A. It can be done Using the Recovery Scenario Manager which provides a wizard that gudies you through the process of defining a recovery scenario. FYI.. The wizard could be accessed in QTP> Tools-> Recovery Scenario Manager …….


Q. How many types of Actions are there in QTP?


A. There are three kinds of actions:
non-reusable action—an action that can be called only in the test with which it is stored, and can be called only once.

reusable action—an action that can be called multiple times by the test with which it is stored (the local test) as well as by other tests.

external action—a reusable action stored with another test. External actions are read-only in the calling test, but you can choose to use a local, editable copy of the Data Table information for the external action.

Q. What is Parameterizing Tests?
A. When you test your application, you may want to check how it performs the same operations with multiple sets of data. For example, suppose you want to check how your application responds to ten separate sets of data. You could record ten separate tests, each with its own set of data. Alternatively, you can create a parameterized test that runs ten times: each time the test runs, it uses a different set of data.

Q. What is test object model in QTP ?

A) The test object model is a large set of object types or classes that QuickTest
uses to represent the objects in your application. Each test object class has a
list of properties that can uniquely identify objects of that class and a set of
relevant methods that QuickTest can record for it.
A test object is an object that QuickTest creates in the test or component to
represent the actual object in your application. QuickTest stores information
about the object that will help it identify and check the object during the
run session.
A run-time object is the actual object in your Web site or application on
which methods are performed during the run session.
When you perform an operation on your application while recording,
QuickTest:
? identifies the QuickTest test object class that represents the object on which
you performed the operation and creates the appropriate test object
? reads the current value of the object’s properties in your application and
stores the list of properties and values with the test object
? chooses a unique name for the object, generally using the value of one of its
prominent properties
? records the operation that you performed on the object using the
appropriate QuickTest test object method
For example, suppose you click on a Find button with the following HTML
source code:

QuickTest identifies the object that you clicked as a WebButton test object.
It creates a WebButton object with the name Find, and records the following
properties and values for the Find WebButton:
It also records that you performed a Click method on the WebButton.
QuickTest displays your step in the Keyword View like this:
QuickTest displays your step in the Expert View like this:
Browser(”Mercury Interactive”).Page(”Mercury Interactive”).WebButton(”Find”).Click

Q. What is Object Spy in QTP?

A. Using the Object Spy, you can view the properties of any object in an open application. You use the Object Spy pointer to point to an object. The Object Spy displays the selected object’s hierarchy tree and its properties and values in the Properties tab of the Object Spy dialog box.


Q. Syntax for how to call one script from another? and Syntax to call one “Action” in another?

A. RunAction ActionName, [IterationMode , IterationRange , Parameters] Here the actions becomes reusable on making this call to any Action. IterationRange String Not always required. Indicates the rows for which action iterations will be performed. Valid only when the IterationMode is rngIterations. Enter the row range (i.e. “1-7″), or enter rngAll to run iterations on all rows. If the action called by the RunAction statement includes an ExitAction statement, the RunAction statement can return the value of the ExitAction’s RetVal argument.



Q. What is the Diff between Image check-point and Bit map Check point?

A. Image checkpoints enable you to check the properties of a Web image.

You can check an area of a Web page or application as a bitmap. While

creating a test or component, you specify the area you want to check by

selecting an object. You can check an entire object or any area within an

object. QuickTest captures the specified object as a bitmap, and inserts a

checkpoint in the test or component. You can also choose to save only the

selected area of the object with your test or component in order to save disk Space

For example, suppose you have a Web site that can display a map of a city

the user specifies. The map has control keys for zooming. You can record the

new map that is displayed after one click on the control key that zooms in

the map. Using the bitmap checkpoint, you can check that the map zooms

in correctly.

You can create bitmap checkpoints for all supported testing environments

(as long as the appropriate add-ins are loaded).

Note: The results of bitmap checkpoints may be affected by factors such as

operating system, screen resolution, and color settings.


Q. How many ways we can parameterize data in QTP ?


A. There are four types of parameters:

Test, action or component parameters enable you to use values passed

from your test or component, or values from other actions in your test.

Data Table parameters enable you to create a data-driven test (or action)

that runs several times using the data you supply. In each repetition, or

iteration, QuickTest uses a different value from the Data Table.


Environment variable parameters enable you to use variable values from

other sources during the run session. These may be values you supply, or

values that QuickTest generates for you based on conditions and options

you choose.

Random number parameters enable you to insert random numbers as

values in your test or component. For example, to check how your

application handles small and large ticket orders, you can have QuickTest

generate a random number and insert it in a number of tickets edit field.


Q. How do u do batch testing in WR & is it possible to do in QTP, if so explain?

A.Batch Testing in WR is nothing but running the whole test set by selecting “Run Testset” from the “Execution Grid”. The same is possible with QTP also. If our test cases are automated then by selecting “Run Testset” all the test scripts can be executed. In this process the Scripts get executed one by one by keeping all the remaining scripts in “Waiting” mode.

How to capture a tool tip text in QTP?

A.For example, how to get tool tip ('Go to My Yahoo!') from the yahoo page:

Actually, this is not a difficult task. The steps are:

1. Place mouse cursor over the link
2. Wait for tool tip
3. Get text of shown tool tip


This QTP script captures a text of a tool tip:
' Place mouse cursor over the link
Browser("Yahoo!").Page("Yahoo!").WebElement("text:=My Yahoo!").FireEvent "onmouseover"
wait 1
' Grab tooltip
ToolTip = Window("nativeclass:=tooltips_class32").GetROProperty("text")

Please, pay attention on details:

1. We use FireEvent("onmouseover") to simulate mouse placing over the link
2. Function wait(1) waits 1 second for a tool tip
3. To get tool tip text, we use:
Window("nativeclass:=tooltips_class32").GetROProperty("text")

Let's run our code and compare captured tool tip with expected ('Go to My Yahoo!'):
As you can see, above QTP script captures correct text of a Tool tip.

Thursday, July 3, 2008

Quick Test Professional (QTP) - Tutorial

Here is the detailed description of each topic with navigation.......

Test Object Model(TOM):

It is a Set of classes,Environment & Properties.
It helps QTP to record properties for each Test Object.

TOM will supply properties that QTP records for each test object during recording,for every class of the selected environment ,properties will configured in the above given order.

With the help of AD-Ins we have selected in the AD-in s manager screen. QTP will get to know the environment and class name of the object,With this information ,it goes to object identification screens and get the list of properties configured in mandatory list. Imedialty it goes to the application window and records current properties of these values. Now the properties and its current values will be placed in the object repository and a statement will be generated in expert view(Script Editor Window).

During Play back QTP goes to object repository and recollects properties description ,with this it recognizes object in the application window and repeats the operation. Sometimes execution fails and a message will appear saying that “Can not Identifying an Object of Class**”Make sure that Properties available in the application. This may happen due to two reasons

Properties available in the repository in adequate to recognized the object.
Properties description in Object repository does not match with the description in AUT(Application Under Test).

When QTP identifies that the properties in the mandatory list are not enough to uniquely identify an object then it records current values of properties available in Assistive properties list.

Smart Identification is properties intelligent,It is complex and reduces performance of test execution. When test execution is posses because object was found with the help of Smart Identification then a warning message will appear in test results window.

- For window application we need to configure Smart Identification by Manually.
- For Web applications Smart identification will be configured automatically.

In Smart Identification we have to separate list to configure includes “ Base filter properties & Optional filter properties”.


Play Back: Steps

Hit Run ----Expert view –Object repository-- application----Expert view –Application –Result screen


OBJECT REPOSITORY :


It stores : ------ Resource file
-------Test object repository description
------- File extensions .mtr & .tsr

File extension of
-- Per test object rep :- filename.mtr

-- Shared Oject rep :- filename.tsr

---Code file extension id script.mts


The purpose of Logical Name is to identify the object in the repository.The purpose of Properties Description is to identify the Object in the repository.


For each object in the application on which end user perform on application a logical name and Physical description of that object will be place in the object repository. Then a statement will be generated in Expert View.

Purpose of the Logical Name is to identify the object in Object repository. QTP generates a Logical name for test object in the repository and the same logical name will be maintained in the expert view.

During test run QTP takes Logical name from the current line from the expert view and find the match in the object repository. For each logical name properties description has been attached .QTP takes properties description to the identified logical name and recognize the object in the application to repeat same operation.
It means the purpose of the properties description is to identify an object in the application.
By default QTP takes Label name to generate Logical Name. This is the unique within the repository file. When multiple objects in the same application window share similar Logical name then for the second object the logical name would be Label name_2.If the another same object is

Identify name would be label name-3 etc...
When an object in the application does not have any label name then QTP generates Class name of that object as logical name. If multiple objects have the same description the logical name would be Class name_2 etc....

Ex: Vbedit_2, Link_3 ,WinButton_4 ......

We can edit auto generated Logical name to any other meaningful name.But make sure that this new name will updated in test script automatically.

Steps for edit Logical name:

1.Go to Resource ---->Object repository
2.Object repository Window will displaying.
3.Select the required logical name to change and press mouse right button and chose the Rename option or press F2.
4.Specify new logical name and press Enter button.


Note:1 When we edit Logical name in the repository all the occurance of existing logical names in script will be updated at a time,but vise verse is not possible.

Note:2 To delete object description from object repository completely, we need to follow the steps sequences.

Steps for Delete object description:


1.Go to Resource -----> Object repository.
2.Object repository Window will displaying.
3.Select logical name to delete its description
4.Press mouse right click for delete option.

Note :3 : To ensure weather properties description uniquely identifies an object in the description and follow the bellow steps:

1.Go to Resource -----> Object repository.
2.Object repository Window will displaying.
3.Select logical name to ensure its properties description
4.View -----> highlight in the application or click on highlight button from tool bar of QTP.
5.If properties are enough to identify the object the respective object will be highlighted else a pop up window with error message appeared.

Steps to Creates Repository by manually:

1.Make sure that application is invoked and navigated to the desired screen.
2.Resource-------> Object Repository
3.Object repository screen appeared.
4.Object --->

Add object to local
5.Mouse pointer changes to pointing icon
6.select the required object in the application window
7.Object selection dialog box with the selected object and all its assendents (Parent)will appear.
8.Make sure that required object is selected and click on OK button.
9.Select object Logical name and properties description will be placed within the object repository under test object root
10.Repeat the steps 4 to 8 to add more objects into repository.


Note:1 Place only the required object into the object repository screen to reduce repository size.

Note:2 the max size of the object repository file is 2MB


OBJECT SPY


This tool is used to let us know all the properties with in current values ,completes object hierarchy and available methods.

Steps:
1.Make sure that application is invoked and navigated to the desired screen.
2.Tools-Object spy
3.Object spy screen appears
4.Hit pointing hand icon from object spy window.
5.Mouse pointer changes to pointer icon
6.select the required object
7.Information of the selected object will be displaying within SPY window.
8.Repeat above to Spy on other objects.

Note: Properties and its object values displayed in object SPY window cannot be saved

Run time object properties are the internal properties of a n object given by developer. Its is not necessary that all the objects must have internal properties.

Test Script Template:

Parent1 Object Class name (“Logical Name”).Parent2 Object Class Name(“Logical Name). ------------- .Child object Class Name(“Logical Name”).Method (Arguments).

Test Object:
It is an object which we creates in the test script. All the test objects would be placed in the object repository


Test Object Properties :

All the properties the test object holds are called test object properties. Test object properties would be placed in the object repository along with the logical Name.

Run Time object:
An object exists in the application on which we execute method during test run.

Run Time object Properties :
All the properties developer associated to an object in the application are called run time object properties.

Note: Test properties are a subset of run time object Methods.


TEST OBJECT METHODS:

1.Button Class:
Click : Click is specified object during the test run.
Syntax : object . click ([x],[y],[button]).

Example: Dialog(“Login”).WinButton(“Ok”).click

Note: [] indicates that Optional

Dbclick : It double clicks on object.
Sytax: object .dbclick (x,y,[button]).

2.Edit Box/Text Box

Set: Sets the value of the specified edit object.click
Syntax: Object . set “text”
Example: Dialog (“Login”).WinEdit(Agent Name”).Set “sekhar”

Setcaretpos : Place the cursor at specified edit object.
Syntax: Object . setcaretpos Position
Example :Dialog(“Login”) winedit(“Agent Name”).setcaretpos 4

Set selection : Selects the specified characters of the string within the specified object
Syntax : Object . Selection startpo,end pos
Example:Dialg(“Login”) .winedit (“Agent name”).set selection 0,4
result: S ekha R

Setsecure: Sets the encoded string in to the password edit object.
Syntax: Object .Setsecure Encryptedstring
Example: 1.Dialog(“Login”).Winedit(“Password”).setsecure “***********”

Navigations : Start--> programs--> QTP—>Tools( to encrypt the password by using QTP)

Example: 2: str= crypt.encrypt.encrypt(“Mercury”)

Dialog(“Login”).Winedit(“Password”).setsecure. Str

3.Window:

Maximize: Maximize the window during the test run.

Syn: Object . Maximize
Example: window(“Notepad”).Maximize


Minimize : Minimize the window during the test run.
Syntax: Object . Minimize
Example: window(“Notepad”). Minimize


Activate: Activate the window
Syntax: Object .Activate
Ex: Window(“Notepad”).Activate

Move: Move the window to the specified co ordinates
Syn: Object move x,y
Ex : Window(“Notepad”).move 150,162

Resize: Resizes the window to the specified dimensions
Syn: object. Resize width,height
Ex: Window(“Notepad”). Resize 180,520

Close: close the window
Syn: Object . close
Ex: Window(“Notepad”). close


4.Radio button:

Set: Set the specified radio button object
Syntax: object . set
Ex: Window(“Flight Reservation”).WinRadiobutton(“Economy”).Set


5.Check Box:

Set: Selects/Unselects the specified check box
Syntax: object . Set boolean value --------- >boolean values: ON/OFF

Ex:For i=1 to 4
Window (“Flight Reservation”).Diallog(“Openorder).WinCheckbox(“customer name”).Set “ON”
wait1
Window(“Flight Reservation”).Diallog(“Open order").WinCheckbox(“customername”).Set
“OFF”

6.Combo Box:


Select :
Selects an items from the specified combo box.
Syn: Object .select “ item name/index”
Ex: Window(“Flight Reservation”).WinCombobox(“FlyFrom”).select”London”

Get items Count:
Retrieves the count of max items from specified object
Syn: object . GetitemsCount

Ex:CNT=Window(“Flight Reservation”).WinCombobox(“Fly From”).Get items count

MSGBOX CNT


Get Selection:
Retrieves item name currently selected in the specified object
syn: Object.Getselection
Ex: Msgbox Window(“Flight Reservation”).WinCombobox(“Fly From”).getselection

Get item :
Retrieves item name for specified index value from the object
Syn: Object.get item (Index)

Ex:Msgbox Window(“Flight Reservation”).WinCombobox(“Fly From”).Getitem(10)


Get content:
Names of the all items will displayed for specified object
Syn : Object .Get Content

7.List Box:

Extend select : Adds current selection to the existing items selection.

Syn: Object . Extend select “item name”

Ex: Browser (“JobsAhead”).page(“JobsAhead”).Weblist(“JobLoc”).Select “Bangalore”
Browser (“JobsAhead”).page(“JobsAhead”).Weblist(“JobLoc”).Extend Select “HYD”
Browser (“JobsAhead”).page(“JobsAhead”).Weblist(“JobLoc”).Extend Select “Goa”

Note: we can select at a time list of locations in the list box.


8.Web Table:

Column Count: Returns count of Max columns for the specified row id from the specified web Table.

Syn: Object. Column count(Row id)
Row Count: Returns counts of maximum rows for a specified web table.
Syn. Object. Row count

Set cell date: Sets the values of specified cell within the specified web table.
Syn: Object. Set cell data Row id ,column id,Value

Get cell date: Returns the current value of the specified cell from web table
Syn: Object . getcelldata (Rowid,columnid)

Example:
Column Count=Browser(“JobsAhead”).Page(“JobsAhead”).webTable(“Personal
Details”).Columncount(1)

Row Count =Browser (“JobsAhead”).Page(“JobsAhead”).webTable(“Personal Details”).Row count

Msgbox Column count
Msgbox row count

For i=1 to Row count

For j=1 to column count


Msgbox Browser (“JobsAhead”).Page(“JobsAhead”).webTable(“Personal Details”).Getcelldata(i,j)

Next
Next
---------------*--------------


Get row with cell text: Returns first row id found that contains the cell with the specified text.
Syn : Object . Get row with cell text “ Text”
Ex:Msgbox Browser (“JobsAhead”).Page(“JobsAhead”).webTable(“Personal Details”).Getrow with cell text ( “Mobile number”).


9.Browser

Refresh: Reloads the specified web browser
Syn: Object.Refresh
Ex: Browsers(“Google”).Refresh

Navigate: Navigates the specified browser to the specified URL

Sny: Object.Navigate “URL Path
Ex : Browsers(“Google”).Navigate ”www.globe7.com”

Back: Navigates the browser to its previous page
Sny: Object. Back
Ex: Browsers(“Google”).Back

Forward: Navigates the specified browser to the next page in the history list
Sny: Object .Forward
Example : Browsers(“Google”).Forward


Home:
Navigates the browser to have page specified
Sny: Object.home
Ex:Browsers(“Google”).home

Full screen: Shows the browser in full screen mode
Syn: Object.Full.screen
Example : Browsers(“Google”). Full screen

Stop: Stops the browser request
Syn: Object.Stop
Ex: Browsers(“Google”).Stop


Sync:
Wait until the current browser loads completely (Synchronization)
Syn: Object .sync
Ex: Browsers(“Google”).Snyc

Close: Closes the browser
Syn: Object.Close
Ex: Browsers(“Google”).Close

10.Page:

Waits until the specified page loads completely
Ex:Browser(“Google”.page(“qtp-googleserach”.Sync

Common Methods

1.Capture BitMap: Caputures the specified object from the application has an image(.bmp or .png) and saves in the specified file drop
Syn: Object . capturebitmap “Full file Path” over write existing (TRUE)

Ex: Browser(“Google”).capturebitmap “C:\New.bmp”,True ----To overwrite

2.Child Objects: Retries the child objects of the specified parent object that matches the given description.
Syn:Object . Childobjects (description)

Example: Set desc =Description . Create
desc(“Nativeclass”).value=”edit”
Set coll =Dialog(“Login”).ChildObjects(Close)
Msgbox coll.count

3.Exist: Checks weather the specified object exists in the open application and window and returns between value(True or False).The default time for exist method wait when an object is not available in the open application window is 20Sec.
The default time for web application is 60Sec
Syn: object . Exist [Time out]

4.Getvisible Text: Returns text visible for the specified Object
Syn: Object.getvisible Text

Ex: Msgbox Dialog(“Login”).getvisibletext

Note:This method is not met for web objects

3.GetTOProperty: Returns the current value of specified test object property of the specified object from the repository
Syn: Object.GetTOProperty(“Property Name”)

Ex: MSGbox Dialog(“Login”).GetTOProperty(“Text”)

6.GetTOProperties: Returns properties collection of the specified test Object from Object repository.

Syn: Object.GetToProperties

Ex: Set Props = Dialog("BOLOTOLINE"). GetTOProperties

PropsCount = Props.Count

For i = 0 To PropsCount - 1

PropName = Props(i).Name

PropValue = Props(i).Value

MsgBox PropName & " = " & PropValue

Next


7.GetROProperty: Returns current value of the specified property of an object from the application window.

Syn: Object.GetROProperty(“Propertyname”)

Ex: Msgbox window(“Login”).GetROProperty(“Height”)

Note: GetROProperties is not work for runtime application


8.SetTOproperty: Sets the value of the specified test object property dynamically. This new value is not updated in the object Repository.
Syn: Object . SetTOProperty “Property Name”,Property value”

Ex: Dialog (“Login”).Set To Property “Text”, “Login1”

Note: The scope of the new value is till the end of the execution of the script.


9.Type: Performs the keyboard inputs in to the specified objects

Ex: Dialog(“Login”).winEdit(“Agent Name”) .Type “Quick”
Ex: Dialog(“Login”).Winedit(“Agent Name”) .Type “Test”
Ex: Dialog9”Login”).Type mic AltDwn +mic F4 + Mic All Up
Ex: Dialog(“Login”).Type mic ESC

Note: Type and Set perform same operation for edit field,But Type can also perform Active X edit


10.WaitProperty:

Waits until specified property reaches specified target value.

Syn: Object .waitproperty “Property Name”,”target Value”

Ex: Window(“Flight Reservation”).WinButton(“insert Order”).Waitproperty “Enabled”,False

Quality Center


Quality Center

A Quality Center project is a database for collecting and storing data relevant to a testing process. For QuickTest to access a Quality Center project, you must connect to the local or remote Web server where Quality Center is installed. When QuickTest is connected to Quality Center, you can create tests and save them in your Quality Center project. After you run your tests, you can view the results in Quality Center.


Quality Center helps you maintain a project of all kinds of tests (such as QuickTest tests, business process tests, manual tests, tests created using other Mercury products, and so forth) that cover all aspects of your application's functionality. Each test in your project is designed to fulfill a specified testing requirement of your application. To meet the goals of a project, you organize the tests in your project into unique groups.

You can instruct QuickTest to automatically submit a defect to a Quality Center project for each failed step in your test. You can also manually submit a defect for a specific step to Quality Center directly from within your QuickTest Test Results window. These options are only available when you are connected to a Quality Center project.

Saving Tests to a Quality Center Project

When QuickTest is connected to a Quality Center project, you can create new tests in QuickTest and save them directly to your project. To save a test, you give it a descriptive name and associate it with the relevant subject in the test plan tree. This helps you to keep track of the tests created for each subject and to quickly view the progress of test planning and creation. In QuickTest, click Save or choose File > Save to save the test. The Save Test to Quality Center dialog box opens and displays the test plan tree.

The Save Test to Quality Center dialog box opens only when QuickTest is connected to a Quality Center project. To save a test directly in the file system, click the File System button to open the Save QuickTest Test dialog box. You can return to the Save Test to Quality Center project dialog box by clicking the Quality Center button.

Submitting Defects to a Quality Center

When viewing the results of a run session, you can submit any defects detected to a Quality Center project directly from the Test Results window.

To manually submit a defect to Quality Center: or click the Choose Tools > Quality Center ConnectionQuality Center Connection button to connect to a Quality Center project. Choose Tools > Add Defect or click the Add Defect button to open the Add Defect dialog box in the specified Quality Center project. The Add Defect dialog box opens. You can modify the defect information if required. Basic information about the test and any checkpoints (if applicable) is included in the description. Click submit button.

To automatically submit defects to Quality Center: Choose Tools > Options or click the Options button . The Options dialog box opens. Click the Run tab. Select the Submit a defect to Quality Center for each failed step check box.