数据资源库 CRUD 工具使您可以在测试活动期间更新连接的数据资源库中的数据集记录。
原生 CRUD 工具与 CRUD 扩展
使用数据资源库 CRUD 工具扩展可以操作数据资源库中的数据,但是需要此工具未要求的其他配置。
章节目录:
前言
数据资源库 CRUD 工具旨在帮助您自动执行需要修改资源库中数据的操作,例如更改银行应用程序中的帐户余额值。它可以对数据资源库中的记录执行以下操作:
- 创建新数据集记录
- 读取现有数据集记录
- 更新现有数据集记录
- 删除数据集记录
主要用例是将工具作为输出添加到消息响应器中,并配置在将消息发送到虚拟资产时对数据执行的操作。可以在更新数据资源库之前手动配置工具操作设置或更改脚本以记录值。
基本配置
右键点击响应器,然后选择添加输出...
- 在向导中选择传入的请求类型,然后选择数据资源库 CRUD 工具。
- 点击完成,然后指定工具名称(可选)。
- 点击配置选项卡中的添加并指定操作的名称(可选)。
- 启用创建、读取、更新或删除选项。
- 在数据源下拉菜单中选择要执行操作的数据资源库数据源。
点击关联性部分的添加,指定要处理的数据集记录的相关列和值。 有关配置数据源关联性标准的详情,请参阅数据源关联性选项卡。
- 配置创建、读取、更新或删除操作的具体设置,然后保存更改。
- 您可以添加其他配置,以便可以在同一执行中对多个字段执行多项操作。
- 部署响应器,并执行客户端以执行您在连接的资源库上配置的操作。
创建配置
在“创建设置”部分中指定用于创建新记录的方法。
复杂值
使用复杂选项可以手动输入新的结构和值。
- 点击编辑 JSON 打开指定记录的编辑器。默认情况下,将预先填充记录结构的 JSON 模板。
- 在输入模式下拉菜单下选择表单 JSON 视图或字面量视图。默认情况下,选择表单 JSON。
- 指定值,然后点击 OK。还可以点击重置模板来根据现有的 JSON 结构重置表单。
表单 JSON 视图还支持右键点击菜单中的剪切、复制、删除和插入操作。
- 然后点击 OK。值字段将显示 JSON 的预览。
脚本化值
还可以选择脚本化并通过脚本化构造 JSON 有效负载
更多信息,请参阅扩展和脚本基础。
参数化值
如果您的工具已连接到数据库工具,则可以选择参数化并从下拉菜单中选择提取值(另请参见 使用从其他工具中提取出来的值对工具进行参数化 (Virtualize)或使用从其他测试中提取出来的值对测试进行参数化(SOAtest)中所述)。
操作设置
如果找到匹配的相关性,启用替换任何现有的关联匹配选项以更新现有记录。
读取配置
您可以配置读取操作来复制、提取请求或响应数据,并将其传递给其他操作。这样就可以根据测试场景修改数据资源库中的记录。
- 点击读取部分的添加,然后选择元素选择器类型。
- 选择记录,指定要读取的记录值的 XPath。
- 选择键,指定包含要读取的键值的键列。在下面的示例中,资源库包含一个名为 “catsKeyCol” 的键列。
资源库包含两行可选择的记录。
在此示例中,数据源关联性部分设置了通配符,表示 CRUD 工具应读取所有记录。在运行时,CRUD 工具应返回值1
和2
。
- 选择记录,指定要读取的记录值的 XPath。
- 指定存储值的自定义列名。
- 如果将该工具与 SOAtest 客户端一起使用,还可以从可写数据源列中选择一列。
- 如果您的套件中包含变量,可以指定与变量值匹配的列名
- 点击 OK,然后启用要应用的其他操作设置:
- 启用如果没有相关匹配,则失败选项,以防止工具在报告错误时读取资源库。该选项默认启用。
- 启用仅返回第一个相关匹配,在达成第一次匹配后停止读取。该选项默认启用。
- 启用提取空元素为: 选项,并指定元素为空时使用的值或参数化值。
- 启用提取缺失元素为: 选项,并指定元素缺失时使用的值或参数化值。
更新配置
使用类似 Xpath 的选择器指定要更新的记录的位置,以访问数据资源库中的记录。
- 点击添加,指定更新模式。可使用以下模式:
- 替换元素。此模式更新单个原始记录值,例如字符串。
- 替换列表。此模式更新非原始值,例如数组。
- 追加到列表。此模式将一个值添加到数组的末尾。
- 前置到列表。此模式将一个值添加到数组的开端。
- 从列表中删除。此模式从数组中删除一个值。
- 在 location 字段中指定要更新的元素的位置。
- 在值字段中,使用以下选项之一指定新值:
- 选择简单,输入一个固定值。还可以从下拉菜单中选择特定的 [exclude] 或 [null]。
- 选择脚本化,然后点击编辑脚本,根据现有记录以编程方式指定新值。
- 选择参数化并从下拉菜单中选择一个提取值。
- 选择复杂,然后点击编辑 JSON,手动指定对记录的结构和值的更新。可以使用表单 JSON 视图(默认)或字面量视图修改 JSON。点击重置模板撤消修改。表单 JSON 视图还支持右键点击菜单中的剪切、复制、删除和插入操作。
- 然后点击 OK。
- 在操作设置部分中启用任何其他设置:
- 启用如果无法更新,则创建选项,此选项表示如果找不到现有记录,则创建新记录。
- 启用发生关联和更新错误时失败选项,防止工具在报告错误时更新资源库。该选项默认启用。
删除配置
如果启用了删除操作,则将删除与关联标准配置设置匹配的任何记录(请参阅General Configuration)。
可以启用或禁用如果没有相关匹配,则失败选项。
CRUD 工作流示例
在本例中,我们将 CRUD 工具与 JSON 消息响应器关联,并操作连接的数据资源库。在本示例中,我们将根据样本响应创建一个新的资源库,因此如果要执行以下步骤,您需要能够访问一个功能 API 端点。
设置项目
在此阶段,我们将设置项目、添加响应器并关联数据资源库。如果现有响应器或 SOAtest 客户端已连接到数据资源库,则可以跳过此步骤。
- 右键点击项目文件夹,添加新的 .pva 文件。
- 指定名称并点击下一步。
- 在本例中,我们将创建一个空项目。选择空,然后点击完成。
- 右键点击这个空响应器套件节点,选择新建 > 响应器。
- 选择 JSON 消息响应器或其他响应器类型(如果您要根据自己的项目进行调整,则选择其他响应器类型),然后点击完成。
- 在本教程中,我们将根据响应器通讯报文示例创建一个新的资源库。点击响应选项卡,将表单输入模式切换为字面量模式。
- 将样本响应粘贴到字段中,然后将输入模式切换到适合您的通讯报文的表单输入模式。在本例中,我们将切换到表单 JSON 模式。
- 右键点击数据树的根节点,选择生成数据资源库数据源,开始创建资源库。
- 配置数据资源库连接设置,然后点击 OK 创建资源库。
- 本例中的新资源库没有键列,而键列对于识别记录而言是必需的。点击数据资源库视图中的新数据集。您可能需要打开或刷新视图(请参阅探索 UI)。
- 在数据资源库编辑器内点击右键,选择添加键列。
- 指定名称,然后点击 OK 并保存所有更改。
您需要有一个响应器与至少有一个键列的新资源库连接。
添加和配置 CRUD 工具
在这一步中,我们将添加和配置 CRUD 工具,以执行若干操作。
- 右键点击响应器,然后选择添加输出。
- 在本例中,我们想要在请求发送给响应器时执行 CRUD 工具。从传入请求菜单中选择有效负载。
- 选择数据资源库 CRUD 工具,然后点击完成。
- 在 CRUD 工具界面,点击添加并将操作重命名为“读取”。
- 选择读取操作,并确认已选择创建的数据源。
- 点击关联表中的添加,并指定键列名称。
- 本例中的资源库只有一行,但我们将使用通配符来关联所有行。
- 点击 OK,然后点击读取表中的添加。
- 在本例中,我们将通过指定 XPath 来选择要准备的记录。从所选元素菜单中选择记录,然后点击 XPath。
- 根据提示选择要读取的元素。在本例中,我们将选择根元素来读取整个记录。
- 点击 OK 关闭 XPath 选择器,然后点击 OK 完成添加配置元素选项。
- 所有其他读取选项保留默认设置,然后点击工具配置部分的添加以添加其他操作。
- 将此操作重命名为“创建”,并选择创建选项。
- 点击关联表中的添加,指定键列并输入
2
作为值,创建另一行。 - 点击 OK,然后在创建部分下的值字段中选择参数化,并指定根元素。如果无法在下拉菜单中找到根元素,则可能需要保存更改,关闭 CRUD 工具编辑器,然后重新打开。
- CRUD 工具现在的配置是读取与键列关联的所有存储记录,并创建另一条记录(第 2 行),其中包含根元素下的所有值。保存更改,然后调用该 .pva 的端点来执行它。
将在资源库中创建记录副本。
扩展资源库
您可以为 CRUD 工具添加更多操作,以修改或删除现有记录。
- 打开 CRUD 工具,点击添加创建其他操作。
- 将操作重命名为“更新”,然后选择更新选项。
- 点击关联表中的添加,然后在键列字段中输入
catsKeyCol
。 - 指定固定值
2
,然后点击 OK。这将对之前的步骤中创建的记录执行操作。 - 点击更新表中的添加,然后选择替换元素模式。
- 点击位置并选择要更新值的元素。
- 在值菜单中选择简单,然后为字段指定新值。在本例中,将更新根元素下的第一个项目元素。要更新同一级别的所有项目,可以用
*
通配符替换路径中的1
。 - 点击 OK 保存更改。
- 调用该 .pva,记录便会在资源库中更新。