在本章节中:
前言
你可以使用 TDA 来扩展和重塑捕获和屏蔽的数据。这使你能够为测试角用例、正面和负面场景以及其他需要超出最初捕获范围的数据的实例生成实际数据。
在本节中,我们将使用屏蔽数据在 ParaBank 中创建其他帐户。帐户将有一系列适合不同类型测试的值。此外,新帐户的数据将符合根据对数据的分析而建立的 TDA 模型。
前提条件
在开始本节之前,你应该已经完成了本教程的以下章节:
或者,你可以使用现有数据存储库学习本教程。
配置生成设置
第一步是配置 TDA 应该如何生成新数据。
- 在 TDA 中,单击包含屏蔽数据的存储库(ParabankDB_masked)并单击 Models 选项卡。
- 搜索 customer_id 键列。
- 单击 customer_id 键列查看其关系。注意,数据模型显示,当查询客户 ID 时,只返回一个结果集。当我们 推断约束条件时,模型确定要返回的帐户(结果集)的最小和最大数量应为 1。
- 单击 Result Set 元素的省略号菜单并选择 Mask and Generate Settings。
- 当提示时,将最小出现次数和最大出现次数字段更改为
100
,并单击 Save。
- 基于当前设置生成新数据将生成 200 个具有相同数据的新帐户。单击 ResultSet4 链接以查看该集合成员的约束设置。成员应该是 BALANCE、TYPE、ID、CUSTOMER_ID。
- 例如,BALANCE 的约束设置被限制为一个值。这对于当前的数据集是可以接受的,但是我们需要为我们想要生成的 100 个新帐户设置一个新的可能的余额范围。单击 BALANCE 成员的省略号菜单并选择 Mask and Generate Settings。
- 在出现提示时配置以下设置,然后单击 Save:
- 方式:Random
- 类型:Number
- 最小数:
-1000.00
- 最大数:
10000.00
- 小数位数:
2
- 分隔符:.(点)
这些设置将为我们生成的帐户生成一个实际的余额范围。注意,一个齿轮图标被放置在 BALANCE 成员上,以指示 Mask and Generate Settings 已经配置好。
用公式生成数据
公式 Mask and Generate Settings 模式使你能够以编程方式配置一个值,以便动态填充正在生成的记录。
公式使用 JavaScript 语法,但是 TDA 包含一些现成的函数,你可以轻松地在公式中使用它们。还可以使用变量访问数据。有关如何插入参数化值的信息,请参阅 在工具中使用数据 。有关公式的更多信息,请参阅 Working with Data Models> Formula 文档。
- 除了设置余额范围外,我们还需要设置与新帐户关联的帐户 ID 范围。单击 ID 成员的省略号菜单并选择 Mask and Generate Settings。
- 将 Mode 设置为 Ranged 并为大于最小值(至少 100)的最大值字段选择一个值。
- 不要更改为小数或增量设置检测到的值 TDA。此配置表明,将以 1 为增量生成至少 100 个新的整数 ID。单击 Save。
你可以随意配为 CUSTOMER_ID 配置 Mask and Generate Settings,以便在新客户之间传播新帐户,还可以配置 TYPE 成员将新帐户随机设置为“保存中”或“检查中”的状态。这些配置在本教程中是可选的。
生成数据和检查数据
配置了生成设置之后,我们就可以生成和检查新数据了。
- 单击 TDA 工具栏中的 Generate Data 。
- 默认情况下,生成的存储库将使用“_generated”附加源存储库的名称(ParabankDB_masked)。
预览显示要生成的记录的数量。如果不希望生成某些记录,或者希望包含来自源存储库的数据,则可以进行调整。在本教程中,我们希望复制屏蔽的数据存储库,但是要包含我们配置的其他帐户数据。
- 准备好后单击 Generate ,生成完成后单击(ParabankDB_masked_generated)新的存储库。
- 搜索 customer_id 键列并单击链接查看数据。
- 展开该表,查看生成的数据。
- 从 CTP 应用程序菜单打开 Service Virtualization 模型,然后单击 parabank-login 虚拟资产。
- 从“资源库名称”下拉菜单中选择 ParabankDB_masked_generated ,然后单击 Save。
你可能会在数据集名称字段中看到一条警告消息。这是因为我们使用的是 SQL 数据集。此警告对虚拟资产没有影响。 - 返回到环境管理器模块,验证是否提供了数据库的虚拟实例。
如果已经登录,请返回到 ParaBank 和登录或刷新帐户页面。你将看到虚拟资产提供了我们生成的数据。