Using Source Control Systems for Teamwork - Specifics

Applies to TestComplete 14.40, last modified on April 22, 2021

We recommend that you use a source control system to organize teamwork with TestComplete projects. Since TestComplete includes built-in support for source control systems, you can easily work with projects bound to source control. However, using TestComplete as a source control client has some specifics.

The problems you may face while working on TestComplete projects bound to source control are not specific to TestComplete. They are common for all development teams that use source control systems.

Is the Native Client Required?

You can use TestComplete as a client for your source control system. This means that you can perform common operations like adding a project to a source control repository, getting changes from the repository, sending your changes to the repository and so on directly from TestComplete. To perform these operations, you do not need to have the native source control client on your computer.

However, while working with projects bound to a source control system, you may need to perform specific actions like creating new branches or merging several branches. In this case, you need to install the source control client on your computer.

If you use Git, Mercurial or Subversion, you can also integrate TestComplete with the TortoiseGit, TortoiseHg and TortoiseSVN client applications and perform a number of advanced source control operations from the TestComplete IDE.

For information on source control operations you can perform from the TestComplete IDE, see Integration With Source Control Systems.

Simultaneous Work With Projects

After you bind a project suite to a source control system, you may face certain problems, as several team members will have to work with the project suite simultaneously.

  • If you integrate TestComplete with Git, Mercurial or Subversion, you can work on your TestComplete projects simultaneously with other team members.

  • If you integrate TestComplete with your source control by using the SCC API provider, TestComplete will support exclusive check-outs that allow avoiding change conflicts.

    You do not need to keep all project suite files checked out on your computer to edit them. Projects and project suites have a tree-like structure. To add a new item to a project, check out only its parent item.

Merging Item Versions

You may face a situation when you need to merge several versions of an item in your project (this can happen is several team members edit the item at the same time). Usually, source control systems include a built-in merging engine.

If you use Git, Mercurial or Subversion and have integrated TestComplete with the appropriate client application, you can merge files and work with branches directly from TestComplete. For more information, see Integration With Source Control Systems.

If you use another source control system, you have to use your source control client to merge files outside TestComplete.

Note: We recommend that you merge TestComplete name mapping files by using TestComple built-in Merge with feature. See Merge Name Mapping Files.

See Also

Using Source Control Systems for Teamwork - Overview
Using Source Control Systems for Teamwork - Overview
Using Source Control Systems for Teamwork
Integration With Source Control Systems via SCC API Providers (Legacy)
Merge Name Mapping Files

Highlight search results