在本章节中:

概要

你可以通过在 localsettings 文件中配置首选项来配置 SOAtest 如何连接到其他 Parasoft 系统、报告错误、决定代码来源以及执行其他功能。如果此文件中指定的参数与 GUI 首选项面板(请查阅 跨团队配置 SOAtest)中的参数相同,那 localsettings 中的参数将覆盖 GUI 中指定的参数。Localsettings 可用于:

  • 将 GUI 特定的和手动指定的设置输入到 Parasoft DTP 中,集中化整个团队的报告和首选项分配。
  • 配置和使用不同项目的不同设置配置。
  • 根据需求扩展或覆盖团队设置(例如:涉及本地路径的设置)。
  • 无需打开 GUI 即可调整设置。
  • 分享整个团队的首选项,并将不同的设置组应用到不同的项目和测试运行。 

定义 localzettings

在 .properties 配置文件中定义 localsettings。在一个简单的文本文件中手动输入它们。没有任何名称或位置要求。每个本地设置应该在一行中输入。

你还可以如 将 GUI 首选项导出到 localsettings 文件 所述导出 GUI 首选项,以快速创建文本并根据需求对它们进行调整或扩展。

在首选项设置中使用变量

你可以在首选项配置设置中使用以下变量:会话标记值不能包含任何冒号字符(:)。

env_var

此变量指定环境变量的值。在关闭花括号之前使用冒号后跟系统环境变量的值来输出环境变量的值。

例如:

session.id=${env_var:HOME}

project_name

输出测试项目名称如果提供多个项目作为输入,则打印测试项目的名称,并在后面加上省略号(...)。

例如:

build.id=${project_name}

general_project

输出结果链接到一般 DTP 项目的名称。只适用于连接到DTP。 

例如:

build.id=${general_project}

workspace_name

输出空间名称或 Visual Studio 解决方案名称。

例如:

report.mail.subject=Code Review Scanner Results for ${workspace_name}

config_name

输出执行测试项目的名称仅适用于报告和邮箱设置。

例如:

report.mail.subject=Findings from running ${config_name} on the ${project_name}

analysis_type

输出一个逗号分隔的已启用分析类型列表(例如: Static、Execution)。仅适用于报告和邮箱设置。

例如:

report.mail.subject=${analysis_type} findings

tool_name

输出工具名称。

例如:

report.mail.subject=Tests executed by ${tool_name}


指定要使用的 localsettings

你可以将 localsettings 存储在 DTP 中,它会自动将其应用到连接的工具;或者是,存储在本地文件中,可以从命令行指定它们。 

对于单个测试运行,可以激活多个 localsettings 层。

有关如何存储和应用 localsettings 的更多详情,请查阅 跨团队配置 SOAtest 

其他说明

  • 每个设置应该在一行中输入。
  • 如果一个参数已在 localsettings 中指定,则它将覆盖 GUI 中指定的相关参数。如果一个参数未在 localsettings 中指定,则将使用 GUI 中指定的参数。
  • 如果引入了 DTP 中指定 localsettings 中的首选项,并且你想覆盖 GUI 中的这些设置,那么你可以禁止正确页面上的 Use DTP settings 选项,然后手动配置。
  • 如果在测试运行期间检测到任何 localsettings 问题,则将在命令行输出中报告细节。
  • 如果你正在从开发人员或测试人员的桌面(而不是服务器机器)运行 cli 模式,请使用 tasks.clear=false 选项,以确保保存以前运行的结果。

报告设置

设置目的
build.id

指定用于标记结果的生成标识符。对于每个构建,它可能是独一无二的,但也可能标记在指定的构建期间执行的多个测试会话。 

默认:build-yyyy-MM-dd HH:mm:ss

report.active_rules=true|false

确定报告是否包含为测试启用的规则列表。

默认:false

report.archive=true|false

启用指定报告位置中生成其他压缩存档(.zip)ZIP 文件包含生成用于构建报告的所有文件。 

此选项可以为任何报告格式生成一个存档(如:HTML、CSV、PDF等等)。 

通过生成存档,还可以执行报告的自定义转换,因为所有元素都生成到指定目标文件夹。

默认:false

report.associations

指定报告是否显示与测试相关联的需求、缺陷、任务和特征请求。

默认:false

report.authors_details

确定报告是否包含分配给每个团队成员的任务数量及类型的概述。 

默认:true

report.contexts_details

确定报告是否包含测试期间检查或执行文件的概述。

默认:false

report.custom.extension

report.custom.xsl.file

为自定义格式指定 XSL 文件的位置和扩展名。同 report.format=custom一起使用

有关更多详情和示例,请查阅 配置报告设置

report.developer_errors=true|false

确定管理员报告是否包含团队成员任务的细节。

默认:false

report.developer_reports=true|false

确定系统是否为所有团队成员生成详细报告(除了管理员的总结报告)。 

默认:true

report.format=html|pdf|sate|xunit|custom

指定报告格式。

默认:html

report.generate_htmls=true|false

确定是否生成 HTML 报告,并将其保存在本地文件系统上。不管该设置的值是多少,都会生成和保存 XML 报告。

默认:true

report.graph.cs_start_date=[MM/dd/yy]确定跟踪一段时间内静态分析任务的趋势图的开始日期。 
report.graph.ue_coverage_start_date=[MM/dd/yy]确定跟踪一段时间内覆盖率的趋势图的开始日期。 
report.graph.ue_start_date=[MM/dd/yy]确定跟踪一段时间内测试执行的趋势图的开始日期。 
report.location_details=true|false

指定是否将绝对文件路径添加到 XML 数据。如果希望在将任务导入到桌面安装时重新定位任务,则需要在服务器安装上启用此功能。 

默认:false

report.mail.attachments=true|false

确定报告是否作为附件发送。所有组件如附件一样被包含;在查阅带有图像的 HTML 报告之前,必须将所有附件保存到磁盘。

默认:false

report.mail.cc=[email_addresses]指定综合管理报告邮件发送要抄送的地址。此设置必须跟以分号分割的电子邮件地址列表。此设置通常用于向管理员或架构师发送报告。如果没有自动发送综合报告,还可以使用它向团队成员发送综合性报告。
report.mail.compact=trends|links

指定要用电子邮件发送压缩报告或链接,而不是完整报告。 

如果使用 trends,邮件将包含趋势图、概述表和其他压缩数据,不会包含详细数据。

如果使用 links,邮件仅包含报告的链接(团队服务器上可用)。

report.mail.domain=[domain]指定用于发送报告的邮箱域名。
report.mail.enabled=true|false

确定报告是否发送给团队成员和 cc 设置指定的其他收件人。 

记住,每个分配任务的团队成员都会自动收到一份只包含分配任务的报告。  

默认:false

report.mail.exclude=[email_addresses]指定不希望接收到报告的邮箱地址。此设置防止将报告自动发送给处理代码的人,但他不应接收报告。
report.mail.exclude.developers=true|false

指定报告是否应该发送给 report.mail.cc 属性中未显示列出邮箱的任何团队成员。此设置防止报告只发给单个团队成员。

默认:false

report.mail.format=html|ascii

指定邮件格式。

默认:html

report.mail.from=[email_address OR user_name_of_the_same_domain]

指定邮件发送 “from” 行。

默认:<global_user_name>

report.mail.include=[email_addresses]指定希望接收单个报告团队成员的邮箱地址。此设置必须跟以分号分割的电子邮件地址列表。如果没有自动发送此类报告(例如:因为团队未使用受支持的源代码控制系统),则通过使用此设置将单个报告发送给团队成员。它覆盖了 'exclude’ 列表中指定的团队成员。 
report.mail.on.error.only=true|false

确定是否仅在生成任务或发生致命异常时才将报告发送管理员。团队成员邮箱不受此设置影响;单个邮件只发送给负责报告任务的团队成员。

默认:false

report.mail.port=[port]

指定邮箱服务器主机的端口号。

默认:25

report.mail.security=[SL| STARTTLS| NONE]指定所需安全性。可用设置为 SSL、STARTTLS、NONE。SSL 在 Visual Studio 中不可用。
report.mail.server=[server]指定用于发送报告的邮箱服务器。
report.mail.subject=My New Subject

指定邮件发送的主题行。主题行默认为 ${tool_name} Report - ${config_name}。例如,如果要更改主题行为 "SOAtest Report for Project A",可使用

report.mail.subject=SOAtest Report for Project A

默认:${tool_name} Report - ${config_name}

report.mail.time_delay=[server]

指定电子邮件发送报告期间的时间延迟(避免批量电子邮件限制)。

默认:0

report.mail.unknown=[email_address OR user_name_of_the_same_domain]指定报告错误分配给“未知”时,报告应抵达的位置。
report.mail.username=[username] report.mail.password=[password] report.mail.realm=[realm]

为 SMTP 服务器身份验证指定设置。

realm 仅对使用 SASL 域进行身份验证的服务器是必需的。

report.metrics_details=true|false

确定是否生成带度量汇总信息(以及适用的个别类和方法详细数据)的 XML 报告。只有在运行启用度量标准的测试配置时才会生成此报告。HTML 和 PDF 报告中将显示度量详情。

默认:true

report.setup.problems=top|bottom|hidden

确定报告是否包含关于配置问题的部分。 

top - 在报告顶部添加“设置问题”部分。这是默认的。 

hidden - 防止添加“设置问题”部分。

bottom - 在报告底部添加“设置问题”部分。 

默认:底部

report.suppressed_msgs=true|false

确定报告是否包含被抑制的消息。

默认:false

report.test_params=true|false

确定报告是否包含测试参数细节。

默认:false

report.test_suites_only=true|false

确认测试套件汇总报告部分是只列出 .tst 文件(需要启用该选项),还是显示每个 .tst 文件中的树状视图(需要禁用该选项)。仅用于 SOAtest

默认:true

report.ue_coverage_details_htmls=[coverage_type]

确定测试的 HTML 报告是否链接到另一个报告,该报告包含逐行覆盖详细信息注释的源代码。 

以下值可用于 [coverage_type]:

LC - 行覆盖率

session.tag=[name]

指定用于标记这些结果的会话标签。该值用于上传汇总结果到团队服务器。 

标记是在分析过程中检查模块的标识符。不同模块的报告应该用不同的标签标记。

默认:${config_name}

tasks.source.control.details=true|false
此设置指示报告中是否包含来自源代码控制中的附加信息,如修订和评论。

DTP 设置

设置目的
dtp.autoconfig=true|false

使用 DTP 中存储的设置启用自动配置

默认:false

dtp.enabled=true|false

确定 SOAtest 或 Virtualize 是否连接到 DTP。 

默认:false

dtp.user=[username]指定用于 DTP 用户身份验证的用户名。
dtp.password=[password]

指定用于 DTP 用户身份验证的密码。

强烈建议对密码进行编码,以保证成功进行身份验证和安全连接。可以使用 -encodepass 标志运行 SOAtest 的命令行实例对密码进行编码。命令行工具将生成编了码的字符串,并且可在  配置文件中使用。 

有关其他信息,请查阅 CLI 选项

dtp.context.path=[path] 指定 DTP 的路径。上下文路径是 dtp.server 设置指定的主机名的相对路径。在 DTP 除了部署在主机服务器的根部还部署在了位置上时,才配置此设置。如果您的团队使用反向代理,则可能就是这种情况。
report.dtp.publish=true启用或禁用将测试结果数据发布到 DTP。
dtp.server=[host]指定 Paradsoft DTP 服务器的主机名。 
dtp.project=[project_name]

指定要将这些结果连接的 DTP 项目名称。 

有关整个项目的更多详情,请查阅 连接到 DTP

默认:默认项目

团队服务器设置

设置目的
tcm.server.enabled=true|false

启用或禁用到 Parasoft 团队服务器的连接。 

默认:false

tcm.server.name=[name]指定运行团队服务器的机器的名称或 IP 地址。 
tcm.server.port=[port]

指定团队服务器端口号。

默认:18888

tcm.server.accountLogin=true|false
tcm.server.username=[username]
tcm.server.password=[password]

确定连接团队服务器是否提交用户名和密码。并不总是需要用户名和密码,这取决于你的团队设置。 

如果第一个设置为 true,那么第二个和第三个设置就需指定用户名和密码。

请注意,在使用这些设置之前,团队服务器必须已经启用了用户名和密码设置。

tcm.server.accountLogin default: false

许可证设置

有关 localsettings 的其他说明和示例,请查阅 Manually Adding the License to localsetttings

设置目的
soatest.license.use_network=true|false

启用/禁用基于网络的许可证。

使用网络许可证,请将此选项设置为 true ,并且配置许可证服务器设置(license.network.hostlicense.network.port) 或者 Parasoft DTP Settings 。  

使用本地许可证,请将此选项设置为 false ,并且配置 soatest.license.local.password 设置。

例如: soatest.license.use_network=true

默认: true

license.network.host=[host]

指定运行许可证服务器的计算机名称或 IP 地址。 

例如: soatest.license.network.host=10.9.1.63

license.network.port=[port]

指定许可证服务器的端口号。 

例如: soatest.license.network.port=8080

默认情况下,(针对 HTTP/S)常见端口号为 84438080 ,(针对 TCP)常见端口号为 2002 。

license.network.context.path=[path] 

指定 DTP 许可证服务器的路径。上下文路径是使用 license.network.host 设置指定的主机名的相对路径。在 DTP 除了部署在主机服务器的根部还部署在了位置上时,才配置此设置。如果您的团队使用反向代理,则可能就是这种情况。

独立版许可证服务器不支持配置上下文路径。

关于反向代理服务器配置和上下文路径配置的其他信息,请参阅 DTP 文档。 

license.network.user=[username] 

使用 license.network.host 和 license.network.port 选项指定辅助 DTP 服务器上身份验证的用户名。

此选项要求将 license.network.use.specified.serverlicense.network.auth.enabled 选项设置为 true

例如: license.network.user=JohnDoe

license.network.password=[password] 

通过设置以下两个选项指定辅助 DTP 服务器上身份验证的密码: license.network.host和 license.network.port

此选项要求将 license.network.use.specified.serverlicense.network.auth.enabled 设置为 true ,并且 license.network.user 已经配置。

强烈建议对密码进行编码,以保证成功进行身份验证和安全连接。可以使用 -encodepass 标志运行 SOAtest 的命令行实例对密码进行编码。命令行工具将生成编了码的字符串,并且可在  配置文件中使用。 

有关其他信息,请查阅 CLI 选项

license.network.use.specified.server=[true|false]

此选项允许 SOAtest 连接 DTP 或许可证服务器,或同时出现的两个 DTP 实例。

将此选项设置为 false 检索由 Parasoft DTP Settings指定的 DTP 服务器的许可证。 

将此选项设置为 true ,使用 license.network.connection.type 设置指定许可证网络连接。SOAtest 检索使用 license.network.host 和 license.network.port 设置指定的服务器的许可证。 

license.network.connection.type=[http|tcp]

此选项指定是否 通过 TCP 连接到 DTP/许可证服务器。 建议通过安全端口(SSL)使用 HTTP。  

默认为 http 。

license.network.auth.enabled=[true|false] 

使用 license.network.host和 license.network.port 选项启用或禁用辅助 DTP 服务器上的身份验证。

此选项要求将 license.network.use.specified.server 设置为 true

soatest.license.network.edition=[edition_name]

指定从许可证服务器检索的许可证类型。 

[edition_name] can be server_edition.如要使用自定义版本,请不要在 "="; 设置任何内容,只是让值未空即可。

例如:

soatest.license.network.edition=desktop_edition

soatest.license.network.edition=server_edition

默认: custom_edition

soatest.license.autoconf.timeout=[seconds]

指定等待从许可证服务器中自动配置许可证的最大秒数。

默认:20

soatest.license.local.password=[password]

指定 Parasoft 提供的本地许可证。 

soatest.license.wait.for.tokens.time=[time in minutes]

指定在当前许可证不可使用时,等待许可证的时间。 

例如:

soatest.license.wait.for.tokens.time=3.

默认:0

技术支持设置

设置目的
techsupport.auto_creation=true|false

确定在发生测试问题时是否自动准备了存档。

默认:false

techsupport.send_email=true|false

确定准备的存档是否发送给 Parasoft 支持部门。如果启动该功能,请确保从 GUI 或 Reporting Settings中选项的指定邮箱设置。

默认:false  

techsupport.archive_location=[directory]指定存档存储的位置。
techsupport.verbose=true|false

确定存档中是否包含详细日志。请注意,如果日志系统存在自定义配置,则不可启用该功能。

  • 详细日志存储在 xtest.log 文件中,其放置在用户主临时位置(在 Windows 上,这是 <drive>:\Documents and Settings\<user>\Local Settings\Temp\parasoft\xtest)。

  • 详细日志记录状态是跨会话持久的(在应用程序启动时恢复)。

  • 该日志文件是一个滚动文件:它不会超过指定大小,并且每次达到最大大小时,都将创建一个备份。

默认:false

techsupport.verbose.scontrol=true|false

确定详细日志是否源代码控制命令的输出。请注意,输出可以包含源代码的片段。  

默认:false

techsupport.item.general=true|false

确定是否包含整个应用程序日志。

默认:false

techsupport.item.environment=true|false

确定存档中是否包含环境变量、JVM 系统属性、平台详情和其他属性(如内存等等)。

默认:false

techsupport.advanced=true|false

指定是否发送高级选项。

默认:false

techsupport.advanced.options=[option]指定技术团队要求你输入的任何高级选项。

原创作者及范围设置

设置目的
authors.mappings.location=team|local|shared

指定存储原创作者映射文件的位置。此设置默认为 team ,除非指定了 local shared

如果设置为 local (推荐),则可以直接在 localsettings 中设置原创作者映射。有关更多详情,请查阅 authors.mappingauthors.user{n}

如果设置为 shared,则可以使用 authors.mappings.file 选项存储映射。 

不建议使用 teamshared 选项。这些选项指定的文件应采用以前使用的格式:

#author to author
user1=user3
user2=user3
#author to email
[email protected]

 默认: team

authors.mapping{n}=[from_user, to_user]

如上所述,为 authors.mappings.location=local指定特定的原著作者映射。

例如:

authors.mappings.location=local
authors.mapping1=baduser,gooduser
authors.mapping2=brokenuser,fixeduser 
authors.mapping3=olduser,newuser 

authors.user{n}=[username, email, full_name]

authors.mappings.location=local指定特定的原著作者名和邮箱。

例如:

authors.user1=dan,[email protected],Dan Stowe
authors.user2=jim,[email protected],Jim White 

authors.mappings.file=[path]

指定上述 authors.mappings.location 中描述的 “shared” 文件的位置。

例如:

authors.mappings.file=/home/user/dev/temp/author_mapping1.txt

authors.ignore.case=true|false

确定是否忽略作者名区分大小写。如果设置为 true,David 和 david 将视为同一个用户。如果设置为 false,David 和 david 将视为两个单独的用户。

默认:false

scope.sourcecontrol=true|false

确定是否基于所支持的源代码控制系统的数据计算代码原著作者。 

默认:false

scope.local=true|false

确定是否基于本地用户计算代码原著作者。

默认:true

scope.recommended.computation=first|random

确定如何为每个团队成员选择推荐的任务。可以设置以下模式:

random:(默认)分配随机数任务。

first:每天向每个团队成员显示报告的第一个任务。

scope.xmlmap=true|false

确定是否基于 XML 文件计算任务分配,该文件定义了如何为特定文件或文件集分配任务(可以在 GUI 中指定这些映射,然后将其保存在 XML 文件中)。

默认:true

scope.xmlmap.file=[file]指定 XML 文件的名称,该文件定义了如何为特定文件或文件集分配的任务。

源代码控制设置

对相同类型的多个存储库进行定义

如果要定义相同类型的多个存储库,必须在前缀上添加索引(从 1 到 n 的数字)。例如: 

scontrol.rep1.type=ccase
scontrol.rep1.ccase.vob=/vobs/myvob1

scontrol.rep2.type=ccase
scontrol.rep2.ccase.vob=/vobs/myvob2

如果只定义一个存储库,则不需要使用索引。例如:

scontrol.rep.type=ccase
scontrol.rep.ccase.vob=/vobs/myvob1

AccuRev 存储库定义属性(已弃用)

属性说明
scontrol.rep.type=accurevAccuRev 存储库类型标识符。 
scontrol.rep.accurev.host=AccuRev 服务器主机。 
scontrol.rep.accurev.port=AccuRev 服务器端口。默认端口为 1666。
scontrol.rep.accurev.login=AccuRev 登录用户名。 
scontrol.rep.accurev.password=AccuRev 登录密码。 

ClearCase 存储库定义属性(已弃用)

属性说明
scontrol.ccase.exec=外部客户端可执行的路径(cleartool)。
scontrol.rep.type=ccaseClearCase 存储库类型名称。 
scontrol.rep.ccase.vob= VOB. ccase.vob value + File.separator 中的路径必须是到 ClearCase 控制目录的有效路径。 

CVS 存储库定义属性(已弃用)

属性说明
scontrol.rep.type=cvsCVS 存储库类型标识符。 
scontrol.rep.cvs.root=完整的 CVSROOT 值。 
scontrol.rep.cvs.pass=

普通密码或加密密码。加密密码应该与 .cvspass 文件中的保持一致。

对于 CVS,使用来自用户主目录 .cvspass 中的值。

对于 CVS,使用 HKEY_CURRENT_USER\Software\Cvsnt\cvspass下注册表中存储的值。

在第一次使用 “cvs login” 的命令行登录到 CVS 存储库时,密码已经保存到注册表中。若要检索它,到注册表(使用 regedit),并在 HKEY_CURRENT_USER->CVSNT> cvspass下查找值。这应该显示整个登录名。(:pserver:exampleA@exampleB:/exampleC) 加密的密码值。

scontrol.rep.cvs.useCustomSSHCreden-tials=确定是否应该使用 cvs 登录和密码进行 EXT/SSH 连接。支持的属性值为 truefalse默认为禁用。
scontrol.rep.cvs.ext.server

如果连接到 EXT 模式下的 CVS 服务器,则指定在服务器端启动哪一个 CVS 应用程序。

和 CVS_SERVER 变量一样具有相同的意义。cvs 是默认值。

scontrol.rep.cvs.ssh.loginname=指定用于 SSH 连接的登录(如果使用外部程序提供登录)。
scontrol.rep.cvs.ssh.password=指定用于 SSH 连接的密码。
scontrol.rep.cvs.ssh.keyfile=指定用于建立具有密匙身份验证的 SSL 连接的私钥文件。
scontrol.rep.cvs.ssh.passphrase=指定用于具有密匙身份验证的 SSH 连接的通行码。
scontrol.rep.cvs.useShell=启用外部程序(CVS_RSH)用来建立到 CVS 存储库的连接。支持的属性值为 truefalse默认为禁用。
scontrol.rep.cvs.ext.shell=指定作为 CVS_RSH 程序使用的可执行路径。应在 cvs.ext.params 属性中指定命令行参数。
scontrol.rep.cvs.ext.params=

指定传递到外部程序的参数。以下区分大小写的宏定义可用于将值展开为命令行参数:

  • {Host} 存储库主机
  • {port} 端口
  • {user} cvs 用户
  • {password} cvs 密码
  • {extuser} 参数 cvs.ssh.loginname
  • {Extpassword} 参数 cvs.ssh.password
  • {Keyfile} 参数 cvs.ssh.keyfile
  • {Passphrase} 参数 cvs.ssh.passphrase

Git 存储库定义属性

属性说明
scontrol.rep.type=gitGit 存储库类型标识符。
scontrol.git.exec=Git 可执行路径。如果未设置,则将定 git 位于该路径上。
scontrol.rep.git.branch=源代码控制模型将使用的分支名称。这可以留空,并且将使用当前检出的分支。
scontrol.rep.git.url=远程存储库 URL(如:git://hostname/repo.git)。
scontrol.rep.git.workspace= 目录包含本地 git 存储库。

Perforce 存储库定义属性

属性说明
scontrol.perforce.exec=外部客户端可执行的路径(p4
scontrol.rep.type=perforcePerforce 存储库类型标识符。 
scontrol.rep.perforce.host=Perforce 服务器主机。 
scontrol.rep.perforce.port=Perforce 服务器端口。默认端口为 1666。
scontrol.rep.perforce.login=Perforce 用户名。 
scontrol.rep.perforce.password=登录密码。 
scontrol.rep.perforce.client=客户端工作空间名称,如 P4CLIENT 环境变量或其等效项中指定。该工作空间的根目录应该配置为本地路径(这样便可以下载文件)。 

Serena Dimensions 存储库定义属性(已弃用)

Linux 和 Solaris 的配置说明(Eclipse)

要想使用 Serena Dimensions,Linux 和 Solaris 用户应在为使用 Serena 程序准备的环境中运行 SOAtest,比如 'dmcli’

  • LD_LIBRARY_PATH 应包含到 <SERENA Install Dir>/libs的路径。
  • 应指定DM_HOME

由于许多 Solaris 用户通常通过运行 Serena dmgvar.sh 文件来设置所需的 Serena 变量,它也需要修改 LD_LIBRARY_PATH 变量。要想使用 Serena Dimensions,LD_LIBRARY_PATH 需要包含以下项目(客户机上的路径可以不同):

  • SSL/Crypto library - /usr/local/ssl/lib
  • STDC++ library -  /usr/local/lib
属性说明
scontrol.rep.type=serenaSerena Dimensions 存储库类型标识符。 
scontrol.serena.dmroot=Serena Dimensions 可执行的路径(如: scontrol.serena.dmroot=C\:\\Program Files (x86)\\Serena\\Dimensions 2009 R2\\CM\\
scontrol.rep.serena.login=登录名。
scontrol.rep.serena.password=登录密码。
scontrol.rep.serena.host=Serena Dimensions 服务器主机名。
scontrol.rep.serena.dbname=正在使用的产品的数据库名称。
scontrol.rep.serena.dbconn=该数据库的连接字符串。
scontrol.rep.serena.locale=使用的语言(如: scontrol.rep.serena.locale=en_US)。
scontrol.rep.serena.mapping=

如果项目已下载或移动到默认工作区以外的位置,则使用此选项指定使用 Serena 存储库的项目(或流)和本地项目之间的映射。

如果在默认工作区中工作,则不需要定义映射。

StarTeam 存储库定义属性(已弃用)

属性说明
scontrol.rep.type=starteamStarTeam 存储库类型标识符。 
scontrol.rep.starteam.host=StarTeam 服务器主机。 
sscontrol.rep.starteam.port=StarTeam 服务器端口。默认端口为 49201。 
scontrol.rep.starteam.login=登录名。 
scontrol.rep.starteam.password=登录密码(未编码的)。
scontrol.rep.starteam.path=

当使用大型多项目存储库时,你可以通过制定项目、视图或当前使用的文件夹来提高性能。 

你可以表明一个简单的项目名称(搜索存储库路径时将扫描所有视图),或一个项目/视图(将只扫描给定的视图),或项目/视图/文件夹(将只扫描指定的 Star Team 文件夹)。

例如:

scontrol.rep.starteam.path=proj1
scontrol.rep.starteam.path=proj1/view1
scontrol.rep.starteam.path=proj1/view1/folderA
scontrol.rep.starteam.path=proj1/view1/folderA/folderB 

scontrol.rep.starteam.workdir=

如果 scontrol.rep.starteam.path 设置指定一个 StarTeam视图或文件夹,那么你就可以使用这个字段来指示用于所选视图根文件夹的新工作目录(如果路径代表一个视图)或用于所选文件夹的新工作目录(如果路径代表一个文件夹)。

例如:

scontrol.rep.starteam.workdir=c:\\storage\\dv
scontrol.rep.starteam.workdir=/home/storage/dv 

Subversion 存储库定义属性

属性说明
scontrol.rep.type=svnSubversion 存储库类型标识符。 
scontrol.rep.svn.url=Subversion URL 指定协议、服务器名称、端口号和启动存储库路径(如:svn://buildmachine.foobar.com/home/svn)。 
scontrol.rep.svn.login=登录名。 
scontrol.rep.svn.password =登录密码(未编码的)。 
scontrol.svn.exec=外部客户端可执行的路径 (svn).

CM Synergy 存储库定义属性(已弃用)

属性说明
scontrol.rep.type=synergySynergy/CM 存储库类型标识符。 
scontrol.rep.synergy.host=运行 synergy/cm 引擎的计算机。本地主机在丢失时使用。对于 Web 模式,主机必须是具有协议和端口的有效 Synergy Web URL(如: http://synergy.server:8400
scontrol.rep.synergy.dbpath=

synergy 数据库绝对路径 如 \\host\db\name (UNC/Windows 路径中的反斜线符号 '\' 必须加倍)。

scontrol.rep.synergy.projspec= Synergy 项目规范,其中包含项目名称及其版本 e.g name-version。 
scontrol.rep.synergy.login=Synergy 用户名。 
scontrol.rep.synergy.password=Synergy 密码(未编码)。 
scontrol.rep.synergy.port=Synergy 端口。
scontrol.rep.synergy.remote_client=(仅 UNIX)指定希望将 ccm 作为远程客户端。默认值为 false。可选项。不适用于 Web 模式。
scontrol.rep.synergy.local_dbpath=指定在运行远程客户端会话时将数据库信息复制到的路径名。如果未 null,则使用默认位置。不适用于 Web 模式。
scontrol.synergy.exec=外部客户端可执行的路径 (ccm

Microsoft Team Foundation Server 存储库定义属性 

属性说明
scontrol.rep.type=tfsTFS 存储库类型标识符。 
scontrol.rep.tfs.url=TFS 存储库 URL (如: http://localhost:8080/tfs)。
scontrol.rep.tfs.login =TFS 用户名。
scontrol.rep.tfs.password=TFS 密码。

Microsoft Visual Source Safe 存储库定义属性(已弃用)

属性说明
scontrol.rep.type=vssVisual SourceSafe 存储库类型标识符。
scontrol.rep.vss.ssdir=存储库数据库路径((UNC/Windows 路径中的反斜线符号 '\' 必须加倍)。 
scontrol.rep.vss.projpath=VSS 项目路径。 
scontrol.rep.vss.login=VSS 登录名。 
scontrol.rep.vss.password=VSS 登录密码。 
scontrol.vss.exec= 外部客户端可执行的路径(ss)。
scontrol.vss.lookup=确定是否执行完整的 VSS 数据库搜索,以查找本地路径和存储库路径之间的关联。true 或 false。 

重要说明

  • 存储库(n).vss.ssdir 属性应包含一个 UNC 值,即使存储库数据库驻留在本地。
  • 注意 VSS 的命名语法、约定和限制。除以下外,任何字符均可用于名称或标签:
    • 美元符 ($)
    • 艾特符(@)
    • 尖角括号 (< >)、中括号 ([ ])、花括号 ({ }) 和圆括号 (( ))
    • 冒号 (:) 和分号 (;)
    • 等于符 (=)
    • 插入符 (^)
    • 感叹号 (!)
    • 百分号 (%)
    • 问号 (?)
    • 逗号 (,)
    • 单双引号 (' ")
  • VSS 6.0 (build 8163) 是与 Visual Studio 6 一起部署的,它不能正确地处理名称以点(.)符号开头的项目。如果使用这样的项目名称,将不可添加子项目。
  • 请不要为子项目使用自定义工作目录(如:Project $/SomeProject has the working directory C:\TEMP\VSS\SomeProject and its subproject $/SomeProject/SomeSubProject has the working directory D:\SomeSubProject).

文件编码设置

设置目的
fileencoding.mode=default|user|auto

定义如何计算文件编码。 

Default 指定你希望使用的系统属性。

User 指示你将显示指定编码名称(使用以下设置)。

Auto 启动自动检查 fileencoding.autolanguage指定的 Far-East 语言。

默认:默认

fileencoding.user-encoding=<name_of_encoding>

如果 fileencoding.mode 设置为 user,则这指定编码名称 

有效名称有 ASCII-US、UTF-8、UTF-16、UTF-16LE、UTF-16BE 或 java.nio 规范名。 

它应该以形式 parasoft-dotNET-[codepagenumber]指定

fileencoding.auto-language=<language’s numeric_code>

如果 fileencoding.mode 设置为 auto,则这指定语言数据代码。有效代码有:

  • JAPANESE = 1
  • CHINESE = 2
  • SIMPLIFIED CHINESE = 3
  • TRADITIONAL CHINESE = 4
  • KOREAN = 5

Miscellaneous 设置

设置目的
report.rules=[url_path_to_rules_directory]

为规则 html 文件指定目录(通过单击测试配置的静态分析选项卡中的 Printable Docs 按钮生成)。 

例如:

report.rules=file:///C:/Temp/Burt/parasoft/xtest/gendoc/report.rules=../gendoc/ 

默认:none

tasks.clear=true|false

在 cli 模式下启动时清除现有任务。这可以防止花费过多的时间“加载现有结果”。 

默认:true

console.verbosity.level=low|normal|high

为控制台视图指定冗长级别。可用设置有:

:配置控制台视图,以显示错误和当前步骤名称和状态的基本信息(完成、失败、最新)。

正常:同时还显示命令行以及测试和分析期间报告的问题。

:同时还显示警告。

默认:低

soatest.custom.rules.dir=[directory]

指示用户定义规则保存的位置。

soatest.custom.configs.dir=[directory]

指示用户定义规则测试配置保存的位置。

exec.env=[env1; env2; ...]指定描述执行测试会话环境的标签列表。标签可以描述操作系统(如:Windows、Linux)、体系结构(如:x86、x86_64)、浏览器等等。这些标签描述了一个完整的测试会话;还可以通过服务 API 在测试套件、测试或测试用例级别上添加更多的环境细节。
issue.tracking.tags=[value]

指定自定义问题跟踪标签。多个标签可以用逗号分隔。例如:

issue.tracking.tags=@custom,@pr ,@fr

有关更多详情信息,请查阅 指示代码和测试相关性.

parallel.mode=Manual|Auto|Disabled

确定激活以下哪个模式: 

  • 自动模式:SOAtest 控制并行处理设置。
  • 手动模式:允许你手动配置并行处理设置以适应你的特定需求。
  • 禁用:仅使用其中一个 CPU。

有关此和其他并行处理选项的更多详情,请查阅 配置并行处理

默认:自动模式

parallel.max_threads=<number>

指定可并发执行的并行线程的最大数。并行线程的实际数量是根据 CPU 数量、可用的内存和许可证设置。

默认:[available_processors]

parallel.free_memory_limit=<percentage>

指定低内存条件下应保持空闲的内存数量(用应用程序可用的总内存的百分比来表示)。这用来确保其他进程可用的闲置内存。

默认:25

parallel.no_memory_limit=true|false

指示不希望对可用内存施加任何限制(超出现有系统限制)。 

默认:false

SOAtest/Virtualize 的其它选项

设置目的

datasources.jdbc.classpath=[path1];[path2];[path3] ...

指示 JDBC 驱动器 jar 文件和类文件夹的位置。

特殊符号(空格、斜线、冒号等等)必须转义;例如: 

%20 = SPACE
%3A = :
%5C = \
%7B = {
%7D = }
%24 = $

如果列出多个 jar,使用 \n 作为分隔符。

例如, C:\temp\withspace\${example}\jar.jar

变成

C%3A%5Ctemp%5Cwith%20space%5C$2 4%7Bexample%7D%5Cjar.jar\n 

scripting.jython.home指定 Jython 安装目录。这必须是单个目录。使用转义斜线(/)或反斜线转义特殊字符。
scripting.jython.path用来添加到不在 jython.home/Lib 目录的路径模块可以列出多个路径。使用转义斜线(/)或反斜线转义特殊字符。
scripting.timeout.minutes指示产品试图停止无响应的脚本并记录错误消息的分钟数。

system.properties.classpath=[path1];[path2];[path3] ...

指定类路径中的 jar 文件和类文件夹。例如:

system.properties.classpath=C\:\\myjars\\myLib1.jar;C\:\\myjars\\myLib2.jar

xml.conversion.data.model.directories注册数据模型,该模型指定如何将固定长度的数据转换为 XML 或从 XML 转换为 XML。输入一个分号分隔的目录列表,其中包含适当的数据模型。
browsertesting.chrome_executable_path指定 Chrome 浏览器可执行的路径。 
browsertesting.firefox_executable_path=[path]指定 Firefox 可指定的路径。
browsertesting.proxy_port=[port]指定代理端口。有关更多详情和提示,请查阅 SOAtest 用户指南 > 代理配置详情。
browsertesting.browser_communication_port=[port]指定浏览器通讯端口。
browsertesting.startup_timeout=[seconds]指定 SOAtest 应该停止等待浏览器启动并将其视为“超时”的延迟长度(以秒为单位)。
browsertesting.user_action_timeout=[seconds]指定 SOAtest 应该停止等待用户操作并将其视为“超时”的延迟长度(以秒为单位)。
browsertesting.page_load_timeout=[seconds]指定 SOAtest 应该停止等待页面加载并将其视为“超时”的默认延迟长度(以秒为单位)。

browsertest-
ing.asynchronous_request_timeout=[seconds]

指定 SOAtest 应该停止等待异步请求并将其视为“超时”的默认延迟长度(以秒为单位)。
browsertesting.element_timeout=[seconds]指定 SOAtest 应该停止等待元素并将其视为“超时”的延迟长度(以秒为单位)。
browsertesting.dialog_timeout=[seconds]指定 SOAtest 应该停止等待打开对话框并将其视为“超时”的默认延迟长度(以秒为单位)。
browsertesting.http_traffic_timeout=[seconds]

指定 SOAtest 应该停止等待完成加载的流量并将其视为
“超时”的默认延迟长度(以秒为单位)。

browsertesting.print_debug_info=true|false在录制浏览器功能测试场景过程中,SOAtest 有可能不会记录所进行的操作。启用此选项将允许消息在录制期间打印到控制台,其中包含了关于 SOAtest 处理了哪些事件、可能生成的任何定位器,以及在录制期间发生的任何异常的消息。

browsertest-
ing.allowable_binary_extensions=[extensions]

允许在流量视图器和输出中使用具有指定扩展名的二进制文件。默认情况下,仅允许文本文件。扩展列表以逗号分割。

browsertest-
ing.allowable_binary_mimetypes=[mime_types]

允许在流量视图器和输出中使用具有指定 MIME ;类型的二进制文件。默认情况下,仅允许文本文件。MIME 类型列表以逗号分割。
browsertesting.content_fetch_mode=all.con-tent|non.hidden.iframes能够确定隐藏框架内容是否在 pre- 和 post- 操作的视图器中显示。  有关此设置的更多详情,请查阅 SOAtest 用户指南。
security.trust.all.certificates指示要接受的任何证书。如果你想加载证书不被“信任的”页面,这非常有用。
security.use.default.java.cacerts指示只接受来自 Java 受信任证书供应商的标准列表中的证书。

仅用于 Virtualize 的其他选项

请注意, SOAtest/Virtualize 的其他选项 中包含的选项也适用于 Virtualize。

设置目的
server.startup确定服务器是否在 Virtualize 启动时自动启动。
server.port.http指定 Virtualize 服务器用于 HTTP 的端口。
server.port.https指定 Virtualize 服务器用于 HTTPS 的端口。
server.port.monitoring指定 Virtualize 服务器用于监视的端口。
traffic.wizard.xpath.ignores

格式中指定的排除: 

traffic.wizard.xpath.ignores=[element name 1]:[value pattern 1];[element name 2]:[value pattern 2];[element name 3]:[value pattern 3]

例如:

traffic.wizard.xpath.ignores=*:[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0- 9]{2}:[0-9]{2}([.][0-9]{1,3})?(([+-][0-9]{2}:[0- 9]{2})|Z)?;uuid:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}

请注意,当在正则表达式中使用反斜杠(\)时,需要进行转义。例如,表示当个数字的正则表达式 [\d],应输入为 [\\d] 。

持续测试平台(CTP) 的其他选项

设置目的
env.manager.server

指示 CTP 服务器的位置。要求

例如: env.manager.server=http://em_hostname:8080/

env.manager.server.name

指定将用于在 CTP 中标识该服务器的名称。可以指定任何有助于识别此服务器的值。可选项

例如: env.manager.server.name=MyVirtServerLabel

env.manager.notify

确定 Virtualize 服务器在部署虚拟资产时是否通知 CTP。可选项

例如: env.manager.notify=true

env.manager.username

指示登录到 CTP 的用户名。可选项

例如: env.manager.username=me

env.manager.password

指示登录到 CTP 的密码。可选项

例如: env.manager.password=12345

强烈建议对密码进行编码,以保证成功进行身份验证和安全连接。可以使用 -encodepass 标志运行 SOAtest 或 Virtualize 的命令行实例对密码进行编码。命令行工具将生成编了码的字符串,并且可在  配置文件中使用。

有关其他信息,请查阅 CLI 选项

简单的 Localsettings

示例 1

# Team Server settings: (these may be redundant with settings already specified in Team Preferences of the installed version, so may not be needed).
tcm.server.enabled=true
tcm.server.name=<team_server.company.com>
 
# Report settings
report.developer_errors=true 
report.developer_reports=true 
report.format=html
session.tag=<project name>
 
# Mail settings:
report.mail.enabled=true
report.mail.cc=<[email protected];[email protected]> 
report.mail.server=mail.company.com
report.mail.domain=company.com
report.mail.subject=<Static Analysis results on Project X> 
report.mail.attachments=true

示例 2

# Team Server settings
tcm.server.enabled=true
tcm.server.name=teamserver.mycompany.com
tcm.server.port=18888
tcm.server.accountLogin=true
tcm.server.username=tcm_user
tcm.server.password=tcm_pass
 
 
# Mail settings
report.mail.enabled=true
report.mail.server=mail.mycompany.com   
report.mail.domain=mycompany.com   
report.mail.cc=project_manager   
report.mail.subject=Coding Standards   

示例 3

# REPORTS
 
#Determines whether reports are emailed to developers and to the additional recipients specified with the cc setting.
#Remember that if the team is using CVS for source control and each developer's email address matches his or her CVS username + the mail domain, each developer that worked on project code will automatically be sent a report that contains only the errors/results related to his or her work.

report.mail.enabled=true
 
#Exclude developers emails (true/false) 
report.mail.exclude.developers=false
 
# Append developers errors to manager emails (true/false) 
report.developer_errors=true
 
# Send reports to developers (true|false) 
report.developer_reports=true
 
# Append suppressed messages (true|false) 
report.suppressed_msgs=false
 
#Determines where to mail complete test reports.
#This setting is typically used to send reports to managers or architects.
#It can also be used to send reports to developers if developer reports
#are not sent automatically (for example, because the team is not using CVS). 
[email protected]; ${env_var:USERNAME} @domain.com
 
# mail target for unknown developer errors 
[email protected]
 
#Specifies the mail server used to send reports. 
report.mail.server=mail_server.domain.com
 
#Specifies the mail domain used to send reports. 
report.mail.domain=domain.com
 
#Specify mali from 
report.mail.from=nightly
 
#Specifies any email addresses you do not want to receive reports.
#This setting is used to prevent from automatically sending reports to someone that worked on the code, but should not be receiving reports. This setting is only applicable if the team is using CVS for source control and developer reports are being sent automatically.
report.mail.exclude=developer1;developer2
 
# Specifies the subject line of the emails sent.
report.mail.subject= ${tool_name} Report - ${config_name}
 
# Report test params include (true|false) 
report.test_params=true
 
# Team Server
 
#Determines whether the current installation is connected to the Team Server. 
tcm.server.enabled=true
 
#Specifies the machine name or IP address of the machine running Team Server. 
tcm.server.name=team_server.domain.com
 
#Specifies the Team Server port number. 
tcm.server.port=18888
 
tcm.server.accountLogin=true 
tcm.server.username=user 
tcm.server.password=password 
session.tag= ${config_name}
 
# SCOPE
 
#code authorship based on CVS 
scope.sourcecontrol=true
 
#code authorship based on author tag 
scope.author=false
 
#code authorship based on local user 
scope.local=false
 
# LICENSE
 
#override license settings
#soatest.license.autoconf.timeout=40
soatest.license.use_network=true
soatest.license.network.host=license_server.domain.com 
soatest.license.network.port=2222
soatest.license.network.edition=server_edition
 
# SOURCE CONTROL
 
scontrol.rep1.type=cvs
scontrol.rep1.cvs.root=:pserver:developer@cvs_server.domain.com:/home/cvs/scontrol.rep1.cvs.pass=mypassword 
  • No labels