本主题解释了如何创建 JMS、XPath、SOAP 数据头和数据库,以及可以在全局共享和引用的属性。在本章节中:
全局 HTTP 连接属性
使用多种工具创建大型测试套件时,在某些情况下,某些工具(比如,SOAP 客户端、消息传递客户端和回调工具)可能会使用相同的 JMS 连接属性。您可能希望多个工具使用相同的 JMS 连接属性。而不是手动将相同的信息输入到每个工具中,或者在两个工具之间进行复制和粘贴设置。这可能更易于创建每个工具能引用的 JMS 设置。在这种情况下,可以在测试或操作套件级别创建全局 JMS 连接属性。若要创建全局 JMS 属性,请完成以下内容:
选择所需节点,并单击 Add Property 按钮。
- 在 Add Global 向导中,选择 Global Property> JMS Connection Properties 然后单击 Finish。将显示一个 Properties 节点,JMS 连接属性面板将显示在 GUI 的右侧。
- 在 JMS 连接属性面板中指定设置:
- (可选项)在 Name 字段中输入新名称。名称将显示在引用这些属性的工具中。可以为 JMS 连接属性创建多个全局引用,这样您指定的名称应该直观地反映它的使用方式。
单击 Add Property to All 按钮。如果不单击此按钮,则套件中的工具将忽略添加的全局属性。如果从下拉菜单中选中了 Use Shared Property Only ,则套件中相应的工具将只可用您所添加的全局属性, 以及在单个工具中配置的任何属性。
- 在 Provider URL 字段中,指定 JMS Administered 对象的位置。
- 在 Initial Context 字段中,指定包含所有 JMS 属性映射的 Java 类。
- 在 Connection Factory 字段中,指定用于从初始上下文查找特定于 MOM 的工厂的键。这可以是 Queue Connection Factory,也可以是 Topic Connection Factory。
- 在 Authentication 区域,选择 Perform Authentication 多选框并输入 Username 和 Password 以对请求进行身份验证。如果未使用正确的用户名和密码,则不会对请求进行身份验证。
仅 SOAP 客户端、消息传递客户端和回调工具才可引用全局 JMS 连接属性
指定全局 JMS 连接属性之后,可以在这些 SOAtest 工具的多个示例中共享这些属性。
全局忽略 Xpath 属性
与全局 JMS 属性一样,当拥有多个使用相同 Xpath 设置的 Diff 工具时,可能会有一些实例。您可能希望多个 Diff 工具使用相同的 XPath 设置。而不是手动将相同的信息输入到每个 Diff 工具中,或者在两个 Diff 工具之间进行复制和粘贴设置。这可能更易于创建每个 Diff 工具能引用的 XPath 设置。在这种情况下,可以在操作或测试套件级别创建全局 Xpath 属性。
若要创建全局 JMS 忽略属列表性,请完成以下内容:
选择所需节点,并单击 Add Property 按钮。
将显示 Add Global 向导。
- 从 Add Global 向导中选择 Global Property> Ignored XPaths ,然后单击 Finish。将显示一个 Properties 节点,忽略 Xpaths 面板将显示在 GUI 的右侧。
- 在忽略 XPaths 面板中指定设置,如下所示:
- 如果希望更改默认名称,请在 Name中输入新名称。这将是在要引用这些 XPaths 的 Diff 工具中显示的名称。因为可以为 XPaths 创建多个全局引用列,所以输入的名称应该对它的使用很直观。
单击 Add Property to All 按钮(如果不单击此按钮,则套件中的工具将忽略添加的全局属性)。根据从下拉菜单中所选定内容,将发生其中一项以下之一:
如果从下拉菜单中选中了 Use Shared Property Only ,则套件中相应的工具将只可只用您所添加的全局属性,
如果从下拉菜单中选中了 Use Local and Shared Properties ,则套件中相应的工具将可使用您所添加的全局属性,以及在单个工具中配置的任何属性。
- 单击 Add 按钮。将在 Ignored XPaths List的 Xpath 列中显示一个空字段。默认, Settings 列填充指定的所有 XPath 操作,它意味着您添加的整个 Xpath 将被忽略。
在 Xpath 列中双击时使用打开的忽略 Xpaths 设置对话框,指定 XPath 位置。输入的 Xpath 可以在套件中多个差异工具之间共享。 如果希望忽略元素 Xpath 位置上的多个属性,请保留属性名为空或使用通配符 * (例如,myAttribute*)。
全局 SOAP 数据头属性
使用多个工具创建大型测试套件时,在某些情况下,SOAP 客户端测试可能会使用相同的 SOAP 数据头属性。您可能希望多个工具使用相同的 SOAP 数据头属性。而不是手动将相同的信息输入到每个工具中,或者在两个工具之间进行复制和粘贴设置。这可能更易于创建每个工具能引用的 SOAP 数据头。在这种情况下,可以在测试或操作套件级别创建全局 SOAP 数据头属性。
若要创建A全局 SOAP 数据头,请完成以下内容:
选择所需节点,并单击 Add Property 按钮。
将显示 Add Global 向导。
- 从 Add Global 向导中选择 Global Property> SOAP Headers ,然后单击 Finish。将显示一个 Properties 节点,SOAP 数据头面板将显示在 GUI 的右侧。
- 在 SOAP 数据头面板中指定设置,如下所示:
- 如果希望更改默认名称,请在 Name 字段中输入新名称。
单击 Add Property to All 按钮(如果不单击此按钮,则套件中的工具将忽略添加的全局属性)。根据从下拉菜单中所选定内容,将发生其中一项以下之一:
如果从下拉菜单中选中了 Use Shared Property Only ,则套件中相应的工具将只可使用您所添加的全局属性,
如果从下拉菜单中选中了 Use Local and Shared Properties ,则套件集中相应的工具将可使用您所添加的全局属性,以及在单个工具中配置的任何属性。
单击 Add 按钮。将显示一个 Choose Header Type 对话框。
- 从 Available Header types 列表选择一个 SOAP 数据头类型并单击 OK。
根据需求配置 SOAP 数据头参数。有关每个 SOAP 数据头的更多信息,请查阅 Adding SOAP Headers in SOAtest。
全局数据库帐户属性
使用多个工具创建大型测试套件时,在某些情况下 DB 工具可能会使用相同的数据库属性。您可能希望多个工具使用相同的数据库属性。而不是手动将相同的信息输入到每个工具中,或者在两个工具之间进行复制和粘贴设置。这可能更易于创建每个工具能引用的数据库账户。在这种情况下,可以在套件级别创建全局数据库帐户属性。
若要创建全局数据库帐户,请完成以下内容:
选择所需套件,并单击 Add Property 按钮。
- 在 Add Global 向导中,选择 Global Property> Database Account ,然后单击 Finish。将显示一个 Properties 节点,数据库帐户面板将显示在 GUI 的右侧。
- 在数据库账户面板中指定设置,如下所示:
- 如果希望更改默认名称,请在 Name 字段中输入新名称。
单击 Add Property to All 按钮(如果不单击此按钮,则套件中的工具将忽略添加的全局属性)。根据从下拉菜单中所选定内容,将发生其中一项以下之一:
如果从下拉菜单中选中了 Use Shared Property Only ,则套件中相应的工具将只可只用您所添加的全局属性,
如果从下拉菜单中选中了 Use Local and Shared Properties ,则操作套件中相应的工具将可使用您所添加的全局属性,以及在单个工具中配置的任何属性。
- 根据需求配置剩下的数据库账户设置。
- 如果账户设置存储在文件中,则请选择 File ,然后指定该文件的路径。
- 若要刷新/重载文件(比如,如果在外部编辑它),请单击 Refresh Configuration Settings。
如果希望在此面板中指定设置,请启用 Local 并指定驱动器设置。请查阅
查阅Database Configuration Parameters in SOAtest 或 Database Configuration Parameters in Virtualize 以获得更多信息。
若要将这些值导出到文件中,请单击 Export Configuration Settings。一旦值被导出到文件中,则可以通过 File> Input File 控件导入该文件(如上所述)。通过这种方式,如果要添加相同的帐户到不同的套件时,将不必重新定义相同的值。
注意,导出的属性文件包含以下属性:
- driver
- url
- username
- password
- close.connection
例如:
version=1
driver=org.hsqldb.jdbcDriver
url=jdbc:hsqldb:hsql://localhost/parabank username=sa
password=dGVzdA==
close.connection=true
- 如果账户设置存储在文件中,则请选择 File ,然后指定该文件的路径。
全局密匙库
密匙库包含通过服务器/客户端身份验证、XML加密和 XML 数字签名等方式执行安全 Web 服务所需的必要证书和私有密钥。在密匙库中指定的值可与 SOAP 客户端、XML 加密和 XML 签名器一起使用。
SOAP 客户端工具可以使用密匙库证书来完成与服务器的握手。XML 加密工具可以使用密匙库证书加密 XML 文档。XML 签名器可以使用密匙库证书和私钥在 XML 文档中签名并识别身份。
需要无限强度 Java 密码学扩展
若要使用密匙库,则需下载并安装无限强度的 Java 加密扩展(Unlimited Strength Java Cryptography Extension)。有关更多详情,请查阅 JCE 前提条件。
MQ SSL
如果正在为 MQ 配置全局测试套件属性,则需要配置密匙库和一个信任库。在密匙库设置中,只需要填写 Certificate 选项卡。Certificate alias 字段不做要求。 Private Key 选项卡不适用于 MQ SSL。
本地密匙库配置
本地密钥库配置与测试套件中的所有客户端和工具有关。
- 右键单击测试套件浏览器中的测试套件,并选择 Add New> Global Property。
- 选择 Global Key Store ,然后单击 Finish。具有 Key Stores 子项的 Key Stores 节点将被添加到测试用例中。
- 如果希望更改默认名称,请在 Name 字段中输入新名称。
- 选择 Local 选项,并在 Key Store 面板的 Certificate 选项卡中指定以下设置:
- 如果密匙库包含证书的私钥,则选择 Use same keystore for private key 选项。
- 在 Key store file 字段中指定密匙库文件。启用 Persist as relative path ,将文件作为相对路径保存(比如,促进项目共享)。
- 在 Key store password 字段中指定密匙库密码。
- 在 Key store type 下拉菜单中选择要使用的密匙库类型。(例如,JKS、PKCS12、BKS、UBER、PEM)。
- 单击 Load 将可用的证书/密匙填入别名中。如果路径、类型和密匙库密码无效,则不会加载证书/密匙。
- 在 Certificate Alias 下拉菜单中选择证书别名。
- 单击 Private Key 选项卡。
- 如果 Certificate 选项卡中的 Use same key store for private key 为禁用状态(请查看步骤 4.a-4.d),请在适当的字段中指定密匙库文件、密匙库密码以及密匙库类型。
- 单击 Load 将可用的证书/密匙填入别名中。如果路径、类型和密匙库密码无效,则不会加载证书/密匙。
- 在 Private key password 字段中指定私钥密码,然后保存此变更。
如果密匙库文件在外部编辑过,请单击 Refresh Configuration Settings 以重新加载配置字段,以便全局密钥库使用最新的值。
导出全局密匙库配置
配置全局密钥库后,可以将设置导出到 .properties 文件,并引用其他 .tst 文件中的设置,这样就不必为项目中的每个套件都配置相同的密钥库设置。
- 配置本地密匙库设置,然后单击 Export Configuration Settings。
- 出现提示时,选择一个名称来保存 .properties 配置文件的位置。
导入全局密匙库配置
可以引用从其他测试场景导出的密匙库配置。这让您只需配置一次证书设置便可在项目中共享。如果源密匙库配置 .properties 文件更新了,则引用该文件的测试用例也会随着更新。
- 右键单击测试套件浏览器中的测试套件,并选择 Add New> Global Property。
- 选择 Global Key Store ,然后单击 Finish。具有 Key Stores 子项的 Key Stores 节点将被添加到测试用例中。
- 如果希望更改默认名称,请在 Name 字段中输入新名称。
- 选择 File 选项,然后浏览到密匙库配置 .properties 文件。
- 保存变更。
全局工具
如果希望 只在当前测试套件的上下文中使用特定的专业化工具(例如:特定的 XSLT 工具或操作请求或响应,然后将其输出发送至其他可以发送其输出到其他工具的“链”工具,等等),您可以将它们添加到测试套件工具资源库,然后将其添加至测试套件中,而无需每次都对它们进行重新创建。(如果计划将专业化工具用于多个测试套件,则需要通过可用的 Tools 面板将其添加到项目中,这都发生在选择 Tools> Customize的时候。
若要向测试套件工具资源库添加工具:
- 则选择所需测试套件节点,并单击 Add Property 按钮。
将显示 Add Global 向导。 - 选择 Global Tool> [Tool_name] ,该选项在 Add Global 向导中,然后单击 Finish。测试用例资源管理器(如果不存在,将添加在 Tools 分支)中将显示一个新的工具节点,并在 GUI 的右侧显示一个工具配置面板。
- 在打开的工具配置面板中自定义工具设置。
- 可以将附加工具链接到该工具,如 Adding a Single Output中所述。
若要在测试中使用资源库工具,则在添加工具或输出时,便从可用的 Existing Tools 选中它。
全局 WS-Policy 银行
Web 服务最大的方面之一是互操性。wen 服务依赖于标准化的接口来声明必须满足什么样的需求,以便服务使用者与服务提供者进行交互。基本 WSDL 规范不能声明负载的客户端需求。为了适应这种情况,使用 WS-Policy 和 WS-PolicyAttachment 扩展的 WSDL 允许服务提供者在 WSDL 内定义额外的需求。WS-Policy 让其他 WS-* 规范定义自己的策略集。这样的规范是 WS-SecurityPolicy ,它定义了与 WS-Security 相关的策略。
读取具有 SecurityPolicy 扩展的 WSDL 时,SOAtest 使用所有必要的策略相关配置自动生成测试用例。一些测试用例的属性仍然存在需要手动配置,但是 SOAtest 会自动建立基础。
注意
若要添加 WS-Policy 银行,请完成以下内容:
- 选择所需测试套件节点,并单击 Add Property 按钮。
将显示 Add Global 向导。 - 从 Add Global 向导中选择 WS-Policy Bank ,然后单击 Finish。测试用例资源管理器(如果不存在,将添加在 WS-Policy Banks 分支)中将显示一个新的 WSDL 策略节点,并在 GUI 的右侧显示一个 WSDL 策略配置面板,并且各种 Ws-security 测试都将被链接到 SOAP 客户端工具。
- 在 WSDL 策略面板中指定设置,如下所示:
- 如果希望更改默认名称,请在 Name 字段中输入新名称。
- 在 WSDL URI中,指定可以访问 Web 服务的 WSDL URI。可以输入 WSDL 或单击 Browse 按钮。
- 单击 Refresh from WSDL 以刷新给定位置 URL 中的 WSDL,并重新解析它。
- 在 Global Policies 区域,以非 XML 格式查看策略定义,以及您的 WSDL 所隐含的策略选择。左侧树中每个部分都表示 WSDL 中的一个全局策略元素。