本主题说明如何将 C/C++test 连接到您的源代码管理库。

各节内容包括:

关于 C/C++test 源代码管理支持

插入到 C/C++test 环境中的任何源代码控制系统都可以用来管理源代码和测试文件。

如果您的团队使用的是下面列出的指定的受支持源控制系统之一,并且按照本主题后面的说明执行必要的配置,则 C/C++test 可以:

C/C++test 附带了对以下源代码控制系统的支持:

商标测试版本
Git1.7, 1.8, 1.9, 2.x
Microsoft Team Foundation 服务器

2012, 2015, 2017, 2018, 2019

Perforce 2006.2, 2015
Subversion (SVN)1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10, 1.11, 1.12, 1.13

您可以使用源代码管理 API 与其他源代码管理系统集成。有关详细信息,请参见添加自定义源代码控制集成

  • 每个 Subclipse 插件版本都与特定的 Subversion 版本兼容。确保您的 Subclipse 插件与 Parasoft 支持的 Subversion 版本兼容。例如,您不应安装使用 Subversion 1.4 安装 Subversion 1.3 和 Subclipse 插件 1.2。Subclipse 1.4.x 需要 JavaHL/SVNKit 的 Subversion 1.5.0 版本。Subclipse 1.4.5 已经具有 Subversion 客户端适配器 1.5.2。
  • 由于 Subversion 1.4 中引入的更改,早于 1.4 的 Subversion 客户端无法使用 Subversion 1.4 生成的工作副本。如果您正在使用 Subclipse 插件 1.2(包括 Subversion 1.4),则可能会收到以下错误消息:
    svn: 该客户端太旧,无法使用工作副本'.'; 请获取更新的 Subversion 客户端
    。这意味着 Parasoft 使用的是 1.3 或更早版本的命令行客户端。解决方案是将命令行 SVN 客户端更新为版本 1.4。客户端版本可以通过执行svn --version来验证

某些源代码管理(例如 Perforce)要求用户在编辑源代码之前对其进行标记(锁定)。如果您正在使用这些源代码管理系统之一,并且提示您执行 C/C++test 来执行涉及在源代码管理中编辑“只读”文件的操作,它将首先打开一个对话框,询问您是否要进行该文件可写并锁定它。单击 确定 ,然后在打开的下一个对话框中提供您的源代码管理用户名和密码。这样就可以访问源代码管理系统并设置锁定。

启用源代码管理支持

要启用对任何受支持的源代码管理系统的支持:

  1. 确保给定源代码管理的命令行客户端在系统 %PATH%/$PATH 上,并且在启动 C/C++test 时可用。 例如,如果您使用 Subversion,仅仅将 Subclipse 插件安装到 Eclipse(SVN Eclipse 插件)是不够的(甚至是必需的)。  相反,您应该具有简单的命令行 svn.exe Subversion 客户端。

  2. 选择 Parasoft> 首选项以打开首选项页面。
  3. 在【首选项】页面的左窗格中选择Parasoft> 范围和作者
  4. 启用使用源代码管理(修改作者)到计算机范围选项。
  5. 在【首选项】页面左窗格中,选择Parasoft>源代码管理
  6. 如果已经设置了适当的存储库 (通过C/C++test 配置概述中所述的自动配置过程 ),请输入用户名和密码,然后指定源代码控制客户端可执行文件的路径(如果尚未在系统路径上)。
    尚未设置(请参阅C/C++test 配置概述中描述的自动配置过程), 如下进行指定:  
    1. 启用您想要使用的源代码管理系统
    2. 指定 SCM 客户端可执行文件的路径。如果可执行文件路径已在系统路径中,则无需指定该路径。
    3. 在【存储库属性】字段中单击新建 ,然后输入所选类型的源代码管理系统所需的源代码管理属性。  
    4. 单击确定 关闭【源代码管理描述】对话框。
  7. 应用您的变更,然后单击确定

要测试集成:

  1. 在 C/C++test 环境中,打开一个从存储库中检出的项目。
  2. 在编辑器中打开一个文件。
  3. 右键单击源代码,然后选择 Parasoft>在行中显示作者。如果显示的是正确的作者,则说明集成成功。

要对源代码管理集成的问题进行故障排除,运行 -consolelog -J-Dcom.parasoft.xtest.logging.config.jar.file=/com/parasoft/xtest/logging/log4j/config/logging.on.xml.这应导致将详细的日志信息打印到控制台。

要包含来自源代码管理系统的报文,其中可能包含用户源代码的片段,请使用其他标志:-Dscontrol.log=true

Git 配置

您连接到的 Git 存储库必须允许匿名拉取。

  1. 打开命令提示符并克隆您的存储库:
    git clone <repository>
  2. 如果从 git URL 克隆,则还必须将git push URL 配置为自动推送使用
    git config remote.origin.pushurl git@<your repository URL>检入的测试用例。 
  3. 在新创建的存储库user.name上设置git config
    git config user.name "<your username>"
    如果已经设置了全局 git user.name ,则可以跳过此步骤。user.name 必须与用户的 DTP 用户名匹配。

启用源代码管理支持时,请在【创建源代码管理说明】对话框中指定以下存储库属性:

如果要从 Git 向 DTP 报告作者信息,则克隆的存储库不应太浅。如果存在.git/shallow文件,则认为 Git 存储库较浅。当从存储库中检出浅克隆时,Git 可能无法准确产生作者数据。您应该检出完整的克隆以检索准确的作者信息。

Perforce 配置

启用源代码管理支持时,请在【创建源代码管理说明】对话框中指定以下存储库属性:

默认情况下,用户名用于确定文件/方法的作者身份。但是,某些团队使用共享的用户名和每个开发人员唯一的工作空间访问 Perforce。

如果要使用工作空间名称(或用户名和工作空间名称)来确定作者身份,请打开 作者身份选项卡并根据需要修改设置。

Subversion 配置

Parasoft 的 Subversion 支持基于命令行客户端 'svn'。要将 Subversion 与 C/C++test 一起使用,请确保:

启用源代码管理支持时,请在【创建源代码管理说明】对话框中指定以下存储库属性:

Team Foundation Server 配置

启用源代码管理支持时,请在【创建源代码管理说明】对话框中指定以下存储库属性:

默认情况下,C/C++test 使用缓存的凭据访问 TFS(这可以是您的用户登录名或一些以前登录的信息)。如果要使用自定义凭据而不是缓存的凭据,则可以提供自定义凭据。

通过 localsettings 指定源代码控制定义

可以在 localsettings 中指定源代码控制定义(例如,通过 DTP 共享团队范围的设置或在命令行中指定选项)。有关详细信息,请参见配置本地设置