无外设执行允许您从命令行或 Ant 脚本自动完成组件测试运行,而不需要用户输入和产品图形用户界面。
目的
命令行启动“无外设”工作台(开发环境没有用户界面)并运行在指定的工作空间中找到的组件测试启动配置。
注: 在某些环境中,命令行的长度可能会受到限制。如果由于命令行被截断而遇到错误,则尝试用变量替换命令的那些部分。
运行组件测试的基本命令行语法如下所示:
<Eclipse directory>/jre/bin/java <virtual
machine options><mandatory parameters> <optional
parameters>
必需参数
有三类必需参数:
在某些环境中,可能需要向这些命令追加其它参数,这取决于您的操作系统配置。用于在您的环境中启动工作台的参数位于的
系统属性下面的系统配置详细信息中。
<虚拟机选项>位于
eclipse.vmargs 属性下面,主 Eclipse 选项位于
eclipse.commands 属性下面。
- 产品 VM 参数
- -Xj9
- 与下面列示的其它参数一起对命令行方式启动应用程序。
- -cp <classpath>/startup.jar org.eclipse.core.launcher.Main
- 使用指定的类路径以无外设方式启动 Eclipse。当路径包含空格和双反斜杠(\\)而不是反斜杠时,使用双引号。以下是一个示例:"C:\\Program
Files\\IBM\\Rational\\"。
- -Dorg.eclipse.emf.ecore.EPackage.Registry.INSTANCE=org.eclipse.emf.ecore.impl.EPackageRegistryImpl
- 指定某些工作台组件所需的定义。
- Eclipse 参数
- -plugincustomization <插件定制路径>
- 将插件的定制路径替换为您的插件的 pluginCustomization.ini 文件路径。
- -application com.ibm.r2a.command.line.mode.CommandLineModeApplication
- 指定用于组件测试和概要分析的应用程序。
- -data <workspace>
- 指定启动配置所在的工作空间的位置。当路径包含空格和双反斜杠(\\)而不是反斜杠时,使用双引号。以下是一个示例:"C:\\Program
Files\\IBM\\Rational\\"。
- -os linux
- 指定 Linux 作为操作系统。
- -ws gtk
- 某些工作台组件所需的参数。此选项仅对于 Linux 是必需的。
- 命令行参数
- -onlyClient ComponentTest
- 指定当前命令行仅应用组件功能部件。如果忽略此参数,则可能会激活其它功能部件,从而使得性能很差并且结果与组件测试无关。
- -reportDirectory directory_path
- 指定将产生报告文件的目录。当路径包含空格和双反斜杠(\\)而不是反斜杠时,使用双引号。以下是一个示例:"C:\\Program
Files\\IBM\\Rational\\"。
可选参数
- -profile
- 在进行组件测试和概要分析的情况下,运行工作空间中的所有启动配置。
- -persistKind html|xml
- 指定此参数以只生成 HTML 或 XML 报告。缺省情况下,生成这两个报告。
- -multifile
- 为每个启动配置生成一个报告文件。此选项仅适用于 HTML 报告。缺省情况下,为从命令行调用的所有启动配置生成单个报告文件。
- -fullreport
- 生成一个完整的报告,它包含所有成功、失败、不确定和错误测试结论。缺省情况下,只有不成功的结果出现在报告中。
- -launch config1 config2 ...
- 启动指定的启动配置。缺省情况下,启动指定工作空间中包含的所有组件测试启动配置。如果指定的启动配置不用于组件测试,则即使增加了 -profile 选项,也不会启动它们。当配置名称包含空格时,请使用引号,例如,"My Configuration"。
- -timeStampMode
- 在报告目录的中间目录中生成用测试的时间戳记命名的结果(格式为 YYYYMMDD_HHMMSS)。如果计划多次运行同一个启动配置,则使用此选项。
样本
对于 Windows,此样本 Ant 脚本以静默方式运行位于
D:\workspace 中的所有启动配置,并在位于工作空间的名称为
batch_report 的目录中生成结果:
<?xml version="1.0" encoding="UTF-8">
<project name="MyTestProject" default="ComponentTestHeadless" >
<target name="ComponentTestHeadless">
<property name="eclipse_dir" value="D:\\eclipse"/>
<property name="workspace_dir" value="D:\\workspace"/>
<property name="options" value=" -onlyClient ComponentTest -reportDirectory ${workspace_dir}\\batch_report -fullreport -timeStampMode"/>
<exec executable="${eclipse_dir}/jre/bin/java" dir="${eclipse_dir}" vmlauncher="false">
<arg line="-Xj9 -Dorg.eclipse.emf.ecore.EPackage.Registry.INSTANCE=org.eclipse.emf.ecore.impl.EPackageRegistryImpl -cp ${eclipse_dir}/startup.jar org.eclipse.core.launcher.Main -application com.ibm.r2a.command.line.mode.CommandLineModeApplication -data ${workspace_dir} ${options}" />
</exec>
</target>
</project>