本主题介绍扩展 Parasoft 内置传输和消息格式的基本过程。
章节目录:
添加扩展
使用以下流程添加对团队正在使用的所有不同消息格式和传输的支持。所有的扩展工作都是使用 Java 完成的。
- 将
<INSTALL>/plugins/com.parasoft.ptest.libs.web_<VERSION>/root/
目录中的 com.parasoft.api.jar 文件添加到 Java 项目的 classpath 中。还可以创建一个新的 Java 项目,该项目的 classpath 中已经添加了 .jar 文件:- 前往文件> 新建> 项目。
选择 SOAtest 或 Virtualize > 定制化开发 > SOAtest 或 Virtualize Java 项目
- 实现适当的接口。有关实现适当接口的详细信息,请参阅以下部分:
在 Java 项目的默认包中创建一个
parasoft-extension.xml
文件,并根据要添加的项(或多个项)对其进行适当的配置。
- 每个 Java 项目都需要一个 parasot-extension.xml 文件。
如果希望同时添加多个扩展,可以创建一个 parasot-extension.xml 文件,该文件涵盖要添加的所有扩展,并且使用
<extensions>
顶层元素;详情请参阅Adding Multiple Extensions at Once。Parasoft 会在默认软件包下的 classpath 中查找 parasoft-extension.xml 文件,因此需要在系统属性首选项中将每一个 parasoft-extension.xml 文件所在的目录(或每一个文件包含的 jar 文件)放在 classpath 中,从而将每一个文件包含在 classpath 中。有关如何在 Virtualize 中为特定类型的扩展配置此文件的详细信息,请参阅:
定义自定义消息格式的 parasoft-extension.xml
定义自定义监听器的 parasoft-extension.xml
定义自定义工具的 parasoft-extension.xml
有关如何在 Virtualize 中为特定类型的扩展配置此文件的详细信息,请参阅:
为自定义传输定义 parasoft-extension.xml
- 构建您的 Java 项目,并将其添加到您的系统属性 classpath 区域中。作为 jar 文件、SOAtest 或 Virtualize 工作空间中的 Java 项目或类文件夹。
重启 SOAtest/Virtualize 并验证扩展是否出现在适当的区域。
详情请参阅以下 Virtualize 部分:
详情请参阅以下 Virtualize 部分:
一次添加多个扩展
如果您的团队正在使用许多扩展,则您可能希望一次添加多个扩展。例如,一个包含所有自定义消息格式、自定义传输和消息监听器的包。
若要一次添加多个扩展:
- 与其创建多个 parasot-extension.xml 文件(每个扩展一个),不如在项目中创建一个 parasot-extension.xml 文件,并确保它描述了所有的扩展。确保使用顶层 xml 元素
<extensions>
,并将特定的自定义扩展定义为这个顶层元素的子元素。 - 在 Java 项目中包含所有扩展,然后构建它,然后将生成的 jar 文件、Java 项目或类文件夹添加到系统属性 classpath 中(如上面的步骤 #4 所述)。
例如,一个扩展可能有一个 parasot-extension.xml 文件,例如:
<?xml version="1.0" encoding="UTF-8"?> <extension xmlns="urn:com/parasoft/extensibility-framework/v1/extension" type="tool" name='the name of your tool, appears in menus' description='A more detailed description'> <class>com.myCompany.MyTool</class> <!-- implements ICustomTool --> <version id='your version ID' updaterClass="com.myCompany.myUpdater"/> <tool xmlns="http://schemas.parasoft.com/extensibility-framework/v1/tool" ... </extension>
对于包含多个扩展的项目,会有一个 parasoft-extension.xml 文件,类似于:
<?xml version="1.0" encoding="UTF-8"?> <extensions xmlns="urn:com/parasoft/extensibility-framework/v1/extension"> <extension type="tool" name='the name of your tool, appears in menus' description='A more detailed description'> <class>com.myCompany.MyTool</class> <!-- implements ICustomTool --> <version id='your version ID' updaterClass="com.myCompany.myUpdater" /> <tool xmlns="http://schemas.parasoft.com/extensibility-framework/v1/tool"> ... </tool> ... </extension> <extension type="transport" name='The name of your transport, appears in the transports menu' description='A more detailed description'> <class>com.mycompany.MyTransport</class> <!-- implements ICustomTransport --> <form xmlns="urn:com/parasoft/extensibility-framework/gui"> <!-- This describes the fields you wish to appear in your transport GUI --> <section label="field group 1"> <field id="key 1" label="field 1"/> ... <field id="key n" label="field n"/> </section> </form> </extension> ... <extension> ... </extension> </extensions>
API 文档
您可以通过帮助 > 帮助内容或 Parasoft > 帮助菜单(取决于您的安装程序)访问扩展框架 API 的文档,并查找 Parasoft SOAtest 或 Virtualize Extensibility API 手册。
其他注意事项
自定义扩展可依赖除了 com.parasoft.api.jar 之外的 Java 库。 有关 SOAtest 的详细信息,请参阅配置外部依赖。有关 Virtualize 的详细信息,请参阅配置外部依赖。
您可以外部化 GUI 中显示的任何字符串,以支持不同的语言。 有关 SOAtest 的详细信息,请参阅本地化 GUI 文本。有关 Virtualize 的详细信息,请参阅本地化 GUI 文本。
如果正在使用现有的扩展,然后稍后创建具有不同 GUI 选项集的扩展的新版本,则可以使用版本更新器更新保存的 .tst(SOAtest)或 .pva, .pvn (Virtualize) 文件,使它们适应新选项集。 有关更新 SOAtest 工件的详细信息,请参阅为新版本更新 GUI 字段。有关更新 Virtualize 工件的详细信息,请参阅为新版本更新 GUI 字段。