Software configuration management

You can use the ClearCase® or Rational Team Concert integration with HCL OneTest™ UI to maintain an auditable and repeatable history of your organization's test assets.

What is software configuration management?

Software configuration management is referred to as source control, change management, and version control.

Software configuration management systems are commonly used in software development groups in which several developers are concurrently working on a common set of files. If two developers change the same file, that file might be overwritten and critical code changes lost. Software configuration management systems are designed to avoid this inherent problem with sharing files in a multiuser environment.

Any software configuration management system creates a central repository to facilitate file sharing. Each file to be shared must be added to the central repository to create the first version of the file. After a file is part of the central repository, users can access and update it, creating new versions.

Benefits of software configuration management

If you have not used a software configuration management system or are not that familiar with the concept, you might wonder whether it is appropriate to use software configuration management on your project. Test automation is a software development effort. Every time a test script is created, whether through recording or coding, a file is generated that contains code. When created, developed, or edited, that code is a valuable test asset.

A team environment presents the risk of losing functioning code or breaking test scripts by overwriting files. A software configuration management system offers a way to overcome this risk. Every time a file changes, a new version is created and the original file is preserved.

For the team that is new to software configuration management, all of the essential features for versioning test scripts are available through the HCL OneTest UI interface. This integration simplifies the use and adoption of software configuration management.

Note: Use a software configuration management like ClearCase or Rational Team Concert if multiple users must access functional test assets in a test team environment.

Software configuration management products

The ClearCase or Rational Team Concert integration for versioning test assets is specialized and cannot be duplicated with other tools. For this reason, some ClearCase operations cannot be performed outside HCL OneTest UI.

When you use HCL OneTest UI, the ClearCase or Rational Team Concert operations appear to be very simple. But a lot is going on behind the scenes. A Functional Test script is a collection of files. The complexity of treating several files as a single entity is hidden because all actions in the product user interface are performed on the script. You do not see the related files anywhere in the user interface. In addition, some software configuration management operations, such as merging, are very complex. There is built-in logic to determine the order in which files are merged, and then different utilities are employed as needed to complete the merge.


The built-in HCL OneTest UI integration with ClearCase provides all the basic software configuration management features and hides the complexity of the HCL OneTest UI test asset structure.

Also, if a user attempts to perform file operations on HCL OneTest UI files outside the product user interface, scripts may become out of sync with their related files and become corrupt or unusable.

HCL OneTest UI works in a ClearCase view enabled for Unified Change Management (UCM) if the view was created as part of a single-stream UCM project. HCL OneTest UI does not work in views that are part of multistream UCM projects.

Note: HCL OneTest UI uses its own integrated Team provider. It does not support using the SCM integration adapter directly with Functional Test projects.

In ClearCase, a checkout operation creates a local copy of the file in which you can make changes. When you are satisfied with your work, you check in the file to create a new version. The original file version always exists.

One fact of life in a multiuser environment is that many users can check out the same file at the same time. When this happens, a special feature of the software configuration management system called "merge" is available to combine multiple changes to a single file. The first user to check in the file creates the new version. The second user to check in the file must merge her changes into that version. If the software configuration management system can combine the changes, they are merged into a new version of the file. If the changes conflict or cannot be resolved by the software configuration management system, the conflicts must be resolved manually.

Rational Team Concert:

You can use Jazz source control to manage source code, documents, and other artifacts that you want to place under version control and share with a team. Jazz source control is closely integrated with the other application development lifecycle tools included in Rational Team Concert.

  • You can create a project in your workspace, share the project to place the project under Jazz source control.
  • Check-in your changes to the repository workspace.
  • Deliver the changes to the stream from the repository workspace so that the changes are available to all members of the team.
  • You can accept a team invitation, or create a new repository workspace from one of the streams of the team.

Functional test assets

A typical HCL OneTest UI test script object includes these files:

  • Script file ( for HCL OneTest UI, Eclipse Integration, or scriptname.vb for HCL OneTest UI, Microsoft Visual Studio .NET Integration)

This file is created through recording.

  • Script helper file ( scriptname for HCL OneTest UI, Java Scripting, or scriptname ScriptHelper.vb for HCL OneTest UI, VB.NET Scripting)

Each script has a script helper file that is generated after recording.

  • Shared test object map file ( kadov_tag{{<ignored>}}filename.rftmap kadov_tag{{</ignored>}}) or private test object map file (scriptname.rftxmap )

Each script has a map file. The map file can be associated with only one script (*. rftxmap ) or shared among many scripts (*. rftmap ). To prevent users from accidentally selecting a private map name as a shared map, the suffixes are different.

  • Verification Point file ( verificationpointname .rftvp )

Each script may also contain one or more verification point files. Verification point files are not shared among scripts.

  • Script Definition file (scriptname.rftdef )

Each script contains a script definition file. The script definition file contains the name of the map file, script name, the names of all of the recognized objects, and other file linkage information.

  • Public Test Datapool ( filename.rftdp ) or Private Test Datapool ( scriptname.rftxdp )

You can associate a public or private test datapool with a test script. You can associate a public test datapool with one or several test scripts.