本主题解释如何将 Parasoft 测试连接到源代码控制资源库中。
本章包含:
关于 Parasoft 测试的源码控制支持
插入到 Parasoft 测试环境中的任何源代码控制系统都可以用来管理源代码和测试文件。
如果团队正在使用一个指定的受支持的源代码系统(请参阅下面的列表)并执行必要配置(如本主题后面所述),则 Parasoft 可以:
- 使用源代码控制中的文件修订数据来决定作者(用于自动将测试失败和策略违反分配给负责的团队成员,以及根据作者和/或修改时间限制测试范围)。有关更多详情,请查阅 Configuring Task Assignment and Code Authorship Settings 。
- 测试前更新源代码中的项目(如果启用了测试配置的 Common> Source Control> Update projects 设置)。
- 自动化编码查核的准备和跟踪(请查阅 Code Review)。
Parasoft 目前支持以下源代码控制系统。
- AccuRev - tested on 4.6, 5.x
- ClearCase - tested on 2003.06.00
- CVS - tested on 1.1.2
- Git - tested on version 1.7+
- Perforce - tested on 2006.2, 2015
- Serena Dimensions - tested on 9.1, 10.3 (2009 R2), 12.2
- StarTeam - tested on 2005, 2008, 2009
- Subversion (SVN) - tested on 1.2.x, 1.3.x, 1.4.x, 1.5.x, 1.6.x, 1.7.x, 1.8.x
- Synergy - tested on 6.4, 7.0, 7.1
- Team Foundation Server - tested on 2008, 2010, 2012, 2015
- Visual SourceSafe - tested on 5.0, 6.0 and 2005
此外,可以使用 Parasoft 的源代码控制 API 来添加与团队正在使用的任何其他源代码控制工具的无缝集成。有关更多详情信息,请查阅 Adding a Custom Source Control Integration
Subclipse 支持注意事项
- 每个 Subclipse 插件版本都与特定 Subversion 版本兼容。确保 Subclipse 插件与 Parasoft 支持的 Subversion 版本兼容。例如,不应该安装 Subversion 1.3 和使用 Subversion 1.4 的 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
来验证。
启用源代码控制支持
若要启用对任何受支持的源码控制系统的支持:
确保用于给定源代码控制的命令行客户机位于 system%PATH%/$PATH 上,并且在启动 Parasoft 测试时可用。
例如,如果您有 Subversion,则将 Subclipse 插件安装到 Eclipse(SVN Eclipse 插件)是不够的(甚至是必要的)。相反地,应该使用普通命令行 svn.exe Subversion 客户机。
- 选择 Parasoft> Preferences。将打开一个首选项对话框。
- 在首选项对话框中,选择 Parasoft> Scope and Authorship 。
- 选中 Use source control (modification author) to compute scope。
- 在首选项对话框中,选择 Parasoft>Source Controls。
- 如果已经设置了合适的资源库 ARE(从 Configuring Preferences Overview中描述的自动配置过程),则输入用户名和密码,并指定到可执行源代码客户机的路径(如果它还没有在您的系统路径上)。
- 如果仍未设置合适的资源库(从 Configuring Preferences Overview中描述的自动配置过程),则指定它们如下所示:
- 启用要使用的源代码控制系统的复选框。
- 如果系统路径上不存在可执行源代码控制客户机,则在源代码控制系统名称右侧的 text 字段中指定到它的路径。
- 通过单击定义源代码(Defined Source Control)表中的 New 输入所选类型的源代码控制系统所需的源代码控制属性,完成 Create Source Control Description 对话框中适合您的系统的字段,然后单击 OK。
- 注意,Create Source Control Description 对话框中的字段在以下部分进行的描述。
- 单击 OK 以关闭 Source Control Description 对话框。
- 单击 Apply,然后 OK。
若要测试集成:
- 在 Parasoft 环境中,打开从存储库检出的项目。
- 在编辑器中打开一个文件。
- 右键单击源代码,然后选择 Parasoft> Show Author at Line。如果显示了正确的作者,则说明集成成功。
调试技巧
若要使用源代码控制继承来排除故障问题,则运行 -consolelog -J-Dcom.parasoft.xtest.logging.config.jar.file=/com/parasoft/xtest/logging/log4j/config/logging.on.xml
。这将导致将详细的日志信息打印到控制台。
若要包含来自源代码控制系统的可能包含用户源代码片段的消息,请使用附加标志:-Dscontrol.log=true
AccuRev 配置
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- Server: 输入运行 AccuRev 的服务器的主机名(必需)。
- Port: 输入运行 AccuRev 的服务器的主机Port:(必需)。
- Username: 输入 AccuRev 用户名/登录(必需)。
- Password: 输入 AccuRev 密码(如果需要)。
ClearCase 配置
若要使用 ClearCase 和 Parasoft 测试:
- 检查 ClearCase 是否可以通过调用
cleartool describe -fmt %Vn <file_path>
命令控制源码文件。没有输出意味着该文件不受 ClearCase 控制。 - 确保
VOB
根目录包含lost+found
目录。
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- VOB location:输入动态或快照 VOB 访问路径。使用完整的 VOB 路径(比如,/vobs/myvob (Linux 动态视图)或 M:\\my_dynamic_view\myvob (Windows VOB 路径)。注意,当输入 Vob 位置时,Vog 标签字段将自动显示 vob 标签。如果位置不是正确地 vob 路径,则将显示一条警告消息。
CVS 配置
若要使用带有和 Parasoft 测试的 CVS,请确保 .cvspass 文件位于以下路径之一:
- user.home 系统属性
- HOME env 变量
- (Windows)HOMEDRIVE 和 HOMEPATH 的组合(例如:"C:"+ "\home")
- 当前工作目录
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
常规选项
- Connection type:输入 CVS 服务器的身份验证协议。
- User:输入要连接到资源库的用户名。
- Password:输入上述用户名的密码。
- Repository path:在服务器上输入资源库的路径。
- Server:输入 CVS 服务器的机器名称或 IP 地址。
- Port::输入 CTP 服务器的Port:。
自定义 SSH/CVS_RSH 选项卡
- CVS_SERVER value:如果连接到 EXT 模式下的 CVS 服务器,则指定在服务器端启动哪一个 CVS 应用程序。
- Use custom authentication properties for ext/server method:如果希望使用 ext/sever 方法的自定义身份验证,请启用此选项。
- Remote shell login:输入 SSH 登录。
- Remote shell password:输入上述 SSH 登录的密码。
- Private key file:输入私钥文件。
- Passphrase for private key file:输入上述私钥文件的密码。
- Use command-line program to establish connection:允许运行外部项目建立 EXT 连接。仅对非标准和传统协议连接(telnet,rsh)使用此选项。目前不支持 Linux/Unix/Cygwin ssh prompts for passwords/passphrases/ 安全字序列。
- CVS_RSH path:指定用于建立 EXT 连接的可执行文件的完整路径。
- CVS_RSH parameters:指定可执行文件的参数。以下宏定义(区分大小写)可用于将值展开为命令行参数:
{host}
- 主机参数{port} -
Port:参数{user}
- 来自主页的用户参数{password}
- 来自主页的用户密码{user}
- 来自 EXT/CVS_RSH 页的用户参数{password}
- 来自 EXT/CVS_RSH 页的密码参数{keyfile}
- key 文件路径{passphrase}
- key 文件密码
Git 配置
若要使用具有 Parasoft 测试的 ClearCase:
- git clone <repository>。注意,资源库必须允许匿名提取。
- 如果从 git://url 中克隆,则如果想让 git 自动提交生成的测试用例,并将其检入,必须配置 git push url。
- 在新创建的存储库 user.name 上设置 git config(如果已经设置了全局 git user.name,可以跳过此步骤)。注意,这个 user.name 必须匹配用户的 Concerto 用户名。
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- URL: 指定要 pull/push 到的远程资源库 URL。如果禁用了 pull 和 push ,则可以将此字段留空。可以使用所有 git urls(比如,git://host/repositoryssh://user@host user@host)。注意,由于 Git 命令行不支持使用标志设置凭证,通常情况下要求身份验证(如 ssh)的协议必须设置身份文件以启用无凭据登录,否则必须接受匿名连接。
- Branch: 在本地工作空间输入源代码控制模型将使用的分支名称。如果留空,则将使用当前检出的分支。
- Working folder: 输入本地 git 资源库的根。
Perforce 配置
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- Server:输入 Perforce 服务器的机器名称或 IP 地址。
- Port::输入 Perforce 服务器的Port:。
- User:输入要连接到资源库的用户名。
- Password:输入上述用户名的密码。
- Client:输入客户端工作区名称,如 P4CLIENT 环境变量或其等效项中指定。
Serena Dimensions 配置
Linux 和 Solaris 的配置说明
要想使用具有 Parasoft 测试的 Serena Dimensions,Linux 和 Solaris 用户应在为使用 Serena 程序准备的环境中运行 Parasoft 测试,比如 'dmcli’
- LD_LIBRARY_PATH 应该包含到 <SERENA Install Dir>/libs 的路径。
- 应指定 DM_HOME 。
由于许多 Solaris 用户通常通过运行 Serena dmgvar.sh 文件来设置所需的 Serena 变量,所以它也需要修改 LD_LIBRARY_PATH 变量。要想使用具有 Parasoft 测试的 Serena Dimensions,LD_LIBRARY_PATH 需要包含以下项目(客户机上的路径可以不同):
- SSL/Crypto library - /usr/local/ssl/lib
- STDC++ library - /usr/local/lib
在启用源代码控制支持时,请在以下选项卡中指定资源库属性:
属性选项卡
- User:输入 Serena Dimensions 登录名。
- Password:输入 Serena Dimensions 登录密码。
- Server:输入 Serena Dimensions 服务器主机名。
- Database name:输入正在使用的产品的数据库名称。
- Database connection:输入该数据库的连接字符串。
- Server locale:选择语言。
Workset Map 选项卡
如果项目已下载/移动到默认工作区以外的位置,则使用此选项卡来指定使用 Serena 存储库的项目(或流)和本地项目之间的映射。
如果在默认工作区中工作,则不需要定义映射。
输入将工作区资源映射到 Serena Dimension 资源库路径的表达式。
- 示例 1:如果使用 scontrol.rep.serena.mapping_1=${project_loc\:MyProject};PRODUCT1\: WORKSET1;src\\MyProject,则项目 'MyProject’ 将映射到 Serena workset PRODUCT1:WORKSET1 和工作集相对路径:src\\MyProject
- 示例 2:如果使用 scontrol.rep.serena.mapping_2=${workspace_loc};PRODUCT1\:WORKSET1,则完整工作区将映射到 Serena workset PRODUCT1:WORKSET1。
StarTeam 配置
若要使用具有 Parasoft 测试的 StarTeam,则请确保:
- 确保安装了 Borland StarTeam SDK。这可以从 Borland 网站免费下载。
对于 Visual Studio 插件,Parasoft StarTeam 支持适用于 VS 2005 和 VS 2008。在启用源代码控制支持时,请指定以下资源库属性:
- Server:输入 StarTeam 服务器的机器名称或 IP 地址。
- Port::输入 StarTeam 服务器的Port:。
- User:输入要连接到资源库的用户名。
- Password:输入上述用户名的密码。
- Paths lookup> StarTeam Path: 当使用大型多项目存储库时,您可以通过制定项目、视图或当前使用的文件夹来提高性能。可以表明一个简单的项目名称(搜索存储库路径时,将扫描所有视图),或一个项目/视图(将只扫描给定的视图),或项目/视图/文件夹(将只扫描指定的 StarTeam 文件夹)。
- Paths lookup> Working Folder: 如果 StarTeam Path 设置指定一个 StarTeam视图或文件夹,那么您就可以使用这个字段来指示用于所选视图根文件夹的新工作目录(如果路径代表一个视图)或用于所选文件夹的新工作目录(如果路径代表一个文件夹)。
Subversion 配置
Parasoft 的 Subversion 支持基于命令行客户端‘svn’的。若要使用具有 Parasoft 测试的 Subversion,请确保:
- 安装了 1.2.x、1.3.x、1.4.x、1.5.x、1.6.x、1.7.x 或 1.8.x 的 Subversion 客户机。
- 客户机证书存储在 Subversion 配置区域。Subversion 客户机有一个内置系统,用于在磁盘上缓存身份验证凭据。默认情况下,无论何时命令行客户机成功地向服务器进行身份验证,它都会将凭据保存在用户的私有运行时配置区域—在像 Unix 系统地 ~/.subversion/auth/ 或 Windows 上的 %APPDATA%/Subversion/auth/。
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- URL: 输入 SVN 服务器的 URL。URL 指定协议、服务器名称、Port:号和启动存储库路径(如:svn://buildmachine.foobar.com/home/svn)。
- User:输入要连接到资源库的用户名。
- Password:输入上述用户名的密码(未编码)。
Synergy 配置
Synergy 7.0 引入了一种新的更快的工作方式,称为 Web 模式。Parasoft 测试支持以下 Synergy/CM 通信模式:
- Web 模式(自 Synergy 7.0 起)
- 传统模式
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- Database path:输入 Synergy 数据库的绝对路径。
- Engine host:输入 Synergy 服务器的机器名称或 IP 地址。对于 Web 模式,主机必须是具有协议和Port:的有效 Synergy Web URL(如: http://synergy.server:8400)。
- User:输入要连接到资源库的用户名。
- Password:输入上述用户名的密码。
- Use remote client (UNIX systems only):如果希望将 CCM 作为远程客户端会话启用,则启用该选项。不适用于 Web 模式。
- Local database (remote client):输入在运行远程客户端会话时复制数据库信息的位置的路径名。不适用于 Web 模式。
团队基础服务器配置
Parasoft 测试与 TFS 2008, 2010, 2012, 2013, 2015 一起工作
Eclipse 的 Parasoft 测试不要求为 TFS 集成安装任何附加软件(包括所需库)。
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- URL: 输入团队基础服务器资源库的 URL(例如, http://localhost:8080/tfs)。
- Use custom credentials:如果希望提供自定义 TFS 凭证,请选择此选项,然后提供这些凭证。禁用此选项时,将使用系统凭证。
- User:输入用户名。
- Password:输入密码。
默认情况下,Parasoft 测试使用缓存凭证(这可以是您的用户登录或之前登录的一些信息)访问 TFS。如果希望使用自定义凭证而不是缓存凭证,可以提供自定义凭证。
Visual SourceSafe 配置
在启用源代码控制支持时,请在 Create Source Control Description 对话框中指定以下资源库属性:
- VSS Database Path:输入数据库路径(SRCSAFE.INI 的位置)。
- User:输入要连接到资源库的用户名。
- Password:输入上述用户名的密码。
- Project root in repository:输入项目根。它以
$/
开头,例如,$/nightly_test
。
通过 localsettings 指定源码控制定义
源码控制定义可在 localsettings 中指定(比如,对于通过 Concerto 共享团队范围的设置,或在命令行指定选项)。有关更多详情,请查阅 Configuring Localsettings 。