• No results found

Sample Test Automation Tool

In document Handout Software Testing v1.0 (Page 126-144)

Learning Objective

After completing this chapter, you will be able to:

‰ Work with Rational Testing tool

Sample Test Automation Tool

Rational offers the most complete lifecycle toolset (including testing) of these vendors for the windows platform. When it comes to Object Oriented development they are the acknowledged leaders with most of the leading OO experts working for them. Some of their products are

worldwide leaders e.g. Rational Robot, Rational Rose, Clear case, RequistePro, etc. Their Unified Process is a very good development model that allows mapping of requirements to use cases, test cases and a whole set of tools to support the process.

Rational Suite of tools

Rational RequisitePro is a requirements management tool that helps project teams control the development process. RequisitePro organizes your requirements by linking Microsoft Word to a requirements repository and providing traceability and change management throughout the project lifecycle. A baseline version of RequisitePro is included with Rational Test Manager. When you define a test requirement in RequisitePro, you can access it in Test Manager.

Rational Clear Quest is a change-request management tool that tracks and manages defects and change requests throughout the development process. With Clear Quest, you can manage every type of change activity associated with software development, including enhancement requests, defect reports, and documentation modifications.

Rational Purify is a comprehensive C/C+ + run-time error checking tool that automatically pinpoints run-time errors and memory leaks in all components of an application, including thirdparty libraries, ensuring that code is reliable

Rational Quantify is an advanced performance profiler that provides application performance analysis, enabling developers to quickly find, prioritize and eliminate performance bottlenecks within an application.

Rational Pure Coverage is a customizable code coverage analysis tool that provides detailed application analysis and ensures that all code has been exercised, preventing untested code from reaching the end-user.

Rational Suite Performance Studio is a sophisticated tool for automating performance tests on client/server systems. A client/server system includes client applications accessing a database or application server, and browsers accessing a Web server. Performance Studio includes Rational Robot and Rational Load Test. Use Robot to record client/server conversations and store them in scripts. Use Load Test to schedule and play back the scripts. Rational Robot. Facilitates functional and performance testing by automating record and playback of test scripts. Allows you to write, organize, and run tests, and to capture and analyze the results.

Rational Test Factory. Automates testing by combining automatic test generation with ourcecode coverage analysis. Tests an entire application, including all GUI features and all lines of source code.

During playback, Rational Load Test can emulate hundreds, even thousands, of users placing heavy loads and stress on your database and Web servers.

Rational Test categorizes test information within a repository by project. You can use the Rational Administrator to create and manage projects.

The tools that are to discussed here are

‰ Rational Administrator

‰ Rational Robot

‰ Rational Test Manager

Rational Administrator What is a Rational Project?

A Rational project is a logical collection of databases and data stores that associates the data you use when working with Rational Suite. A Rational project is associated with one Rational Test data store, one RequisitePro database, one Clear Quest databases, and multiple Rose models and RequisitePro projects, and optionally places them under configuration management. Rational administrator is used to create and manage rational repositories, users and groups and manage security privileges.

How to create a new project?

‰ Open the Rational administrator and go to File->New Project.

‰ In the above window opened enter the details like Project name and location. Click Next.

‰ In the corresponding window displayed, enter the Password if you want to protect the project with password, which is required to connect to, configure or delete the project.

‰ Click Finish.

‰ In the configure project window displayed click the Create button. To manage the

‰ requirements assets connect to Requisite Pro, to manage test assets create associated test data store and for defect management connect to Clear quest database.

Once the Create button in the Configure project window is chosen, the below seen Create Test Data store window will be displayed. Accept the default path and click OK button.

Once the below window is displayed it is confirmed that the Test datastore is successfully created and click OK to close the window.

Click OK in the configure project window and now your first Rational project is ready to play with…. Rational Administrator will display your “TestProject” details as below:

Rational Robot

Rational Robot to develop three kinds of scripts: GUI scripts for functional testing and VU and VB scripts for performance testing. Robot can be used to:

‰ Perform full functional testing. Record and play back scripts that navigate through your application and test the state of objects through verification points.

‰ Perform full performance testing. Use Robot and TestManager together to record and play back scripts that help you determine whether a multi-client system is performing within user-defined standards under varying loads.

‰ Create and edit scripts using the SQABasic, VB, and VU scripting environments. The

‰ Robot editor provides color-coded commands with keyword Help for powerful integrated programming during script development.

‰ Test applications developed with IDEs such as Visual Basic, Oracle Forms,

‰ PowerBuilder, HTML, and Java. Test objects even if they are not visible in the application's interface.

‰ Collect diagnostic information about an application during script playback. Robot is integrated with Rational Purify, Quantify, and PureCoverage. You can play back scripts under a diagnostic tool and see the results in the log.

The Object-Oriented Recording technology in Robot lets you generate scripts quickly by simply running and using the application-under-test. Robot uses Object-Oriented Recording to identify objects by their internal object names, not by screen coordinates. If objects change locations or their text changes, Robot still finds them on playback.

The Object Testing technology in Robot lets you test any object in the application-under-test, including the object's properties and data. You can test standard Windows objects and IDEspecific objects, whether they are visible in the interface or hidden.

Once logged you will see the robot window. Go to File-> New->Script In the above screen

displayed enter the name of the script say “First Script” by which the script is referred to from now on and any description (Not mandatory).The type of the script is GUI for functional testing and VU for performance testing.

The GUI Script top pane) window displays GUI scripts that you are currently recording, editing, or debugging. It has two panes:

‰ Asset pane (left) – Lists the names of all verification points and low-level scripts for this script.

‰ Script pane (right) – Displays the script.

The Output window bottom pane) has two tabs:

‰ Build – Displays compilation results for all scripts compiled in the last operation. Line numbers are enclosed in parentheses to indicate lines in the script with warnings and errors.

‰ Console – Displays messages that you send with the SQAConsoleWrite command.

Also displays certain system messages from Robot.

To display the Output window:

Click View ® Output.

How to record a play back script?

To record a script just go to Record->Insert at cursor

Then perform the navigation in the application to be tested and once recording is done stop the recording. Record-> Stop

In this window we can set general options like identification of lists, menus, recording think time in General tab:

Web browser tab: Mention the browser type IE or Netscape…

Robot Window: During recording how the robot should be displayed and hotkeys details…

Object Recognition Order: the order in which the recording is to happen.

For ex: Select a preference in the Object order preference list.

If you will be testing C++ applications, change the object order preference to C++

Recognition Order.

Go to Tools-> Playback options to set the options needed while running the script. This will help you to handle unexpected window during playback, error recovery, mention the time out period, to manage log and log data.

Verification points

A verification point is a point in a script that you create to confirm the state of an object across builds of the application-under-test. During recording, the verification point captures object information (based on the type of verification point) and stores it in a baseline data file. The information in this file becomes the baseline of the expected state of the object during subsequent builds

When you play back the script against a new build, Robot retrieves the information in the baseline file for each verification point and compares it to the state of the object in the new build. If the captured object does not match the baseline, Robot creates an actual data file. The information in this file shows the actual state of the object in the build.

After playback, the results of each verification point appear in the log in Test Manager. If a verification point fails (the baseline and actual data do not match), you can select the verification point in the log and click View ® Verification Point to open the appropriate Comparator. The Comparator displays the baseline and actual files so that you can compare them. Verification point

is stored in the project and is always associated with a script. When you create a verification point, its name appears in the Asset (left) pane of the Script window. The verification point script

command, which always begins with Result =, appears in the Script (right) pane.

Because verification points are assets of a script, if you delete a script, Robot also deletes all of its associated verification points. You can easily copy verification points to other scripts if you want to reuse them.

List of Verification Points

The following table summarizes each Robot verification point.

About SQABasic Header Files

SQABasic header files let you declare custom procedures, constants, and variables that you want to use with multiple scripts or SQABasic library source files.SQABasic files are stored in the SQABas32 folder of the project, unless you specify another location. You can specify another location by clicking Tools ® General Options. Click the Preferences tab. Under SQABasic path, use the Browse button to find the location. Robot will check this location first. If the file is not there, it will look in the SQABas32 directory.

You can use Robot to create and edit SQABasic header files. They can be accessed by all modules within the project. SQABasic header files have the extension .sbh.

Adding Declarations to the Global Header File

For your convenience, Robot provides a blank header file called Global.sbh. Global.sbh is a project-wide header file stored in SQABas32 in the project. You can add declarations to this global header file and/or create your own.

To open Global.sbh:

‰ Click File ® Open ® SQABasic File.

‰ Set the file type to Header Files (*.sbh).

‰ Select global.sbh, and then click Open.

Inserting a Comment into a GUI Script:

During recording or editing, you can insert lines of comment text into a GUI script. Comments are helpful for documenting and editing scripts. Robot ignores comments at compile time. To insert a comment into a script during recording or editing.

‰ If recording, click the Display GUI Insert Toolbar button on the GUI Record toolbar. If editing, position the pointer in the script and click the Display GUI Insert Toolbar button on the Standard toolbar.

‰ Click the Comment button on the GUI Insert toolbar.

‰ Type the comment (60 characters maximum).

‰ Click OK to continue recording or editing.

Robot inserts the comment into the script (in green by default) preceded by a single quotation mark. For example:

This is a comment in the script

To change lines of text into comments or to uncomment text:

‰ Highlight the text.

‰ Click Edit ® Comment Line or Edit ® Uncomment Line.

About Data pools

A datapool is a test dataset. It supplies data values to the variables in a script during script playback. Datapools let you automatically pump test data to virtual testers under high-volume conditions that potentially involve hundreds of virtual testers performing thousands of transactions.

Typically, you use a datapool so that:

‰ Each virtual tester that runs the script can send realistic data (which can include unique data) to the server.

‰ A single virtual tester that performs the same transaction multiple times can send realistic data to the server in each transaction.

Using Datapools with GUI Scripts

If you are providing one or more values to the client application during GUI recording, you might want a datapool to supply those values during playback. For example, you might be filling out a data entry form and providing values such as order number, part name, and so forth. If you plan to repeat the transaction multiple times during playback, you might want to provide a different set of values each time. A GUI script can access a datapool when it is played back in Robot. Also, when a GUI script is played back in a TestManager suite, the GUI script can access the same datapool as other scripts.

There are differences in the way GUI scripts and sessions are set up for datapool access:

‰ You must add datapool commands to GUI scripts manually while editing the script in Robot. Robot adds datapool commands to VU scripts automatically.

‰ There is no DATAPOOL_CONFIG statement in a GUI script. The SQADatapoolOpen command defines the access method to use for the datapool.

Although there are differences in setting up datapool access in GUI scripts and sessions, you define a datapool for either type of script using TestManager in exactly the same way.

Debug menu

The Debug menu has the following commands:

‰ Go

‰ Go Until Cursor

‰ Animate

‰ Pause

‰ Stop

‰ Set or Clear Breakpoints

‰ Clear All Breakpoints

‰ Step Over

‰ Step Into

‰ Step Out

Note: The Debug menu commands are for use with GUI scripts only.

Compiling the script

When you play back a GUI script or VU script, or when you debug a GUI script, Robot compiles the script if it has been modified since it last ran. You can also compile scripts and SQABasic library source files manually.

During compilation, the Build tab in the Output window displays compilation results and error messages with line numbers for all compiled scripts and library source files. The compilation results can be viewed in the Build tab of the Output window.

Compilation errors

After the script is created and compiled and errors fixed it can be executed. The results need to be analyzed in the Test Manager.

Rational Test Manager

Test Manager is the open and extensible framework that unites all of the tools, assets, and data both related to and produced by the testing effort. Under this single framework, all participants in the testing effort can define and refine the quality goals they are working toward. It is where the team defines the plan it will implement to meet those goals. And, most importantly, it provides the entire team with one place to go to determine the state of the system at any time.

In Test Manager you can plan, design, implement, execute tests and evaluate results.

With Test manager we can:

‰ Create, manage, and run reports. The reporting tools help you track assets such as scripts, builds, and test documents, and track test coverage and progress.

‰ Create and manage builds, log folders, and logs.

‰ Create and manage data pools and data types

When the script execution is started the following window will be displayed. The folder in which the log is to stored and the log name needs to be given in this window.

In the Results tab of the Test Manager, you could see the results stored. From Test Manager you can know start time of the script and

Supported environments

Operating system

‰ WinNT4.0 with service pack 5

‰ Win2000

‰ WinXP(Rational 2002)

‰ Win98

‰ Win95 with service pack1

Protocols

‰ Oracle

‰ SQL server

‰ HTTP

‰ Sybase

‰ Tuxedo

‰ SAP

‰ People soft

Web browsers

‰ IE4.0 or later

‰ Netscape navigator (limited support)

Markup languages

‰ HTML and DHTML pages on IE4.0 or later.

Development environments

‰ Visual basic 4.0 or above

‰ Visual C++

‰ Java

‰ Oracle forms 4.5

‰ Delphi

‰ Power builder 5.0 and above

‰ The basic product supports Visual basic, VC++ and basic web pages.

To test these types of application, you have to download and run a free enabler program from Rational’s website.

For more details visit www.rational.com

SUMMARY

Rational offers the most complete lifecycle toolset (including testing) of these vendors for the windows platform. When it comes to Object Oriented development they are the acknowledged leaders with most of the leading OO experts working for them. Some of their products are worldwide leaders e.g. Rational Robot, Rational Rose, Clear case, RequistePro, etc.

In document Handout Software Testing v1.0 (Page 126-144)