本主题解释如何配置和应用数据生成器工具,该工具将值(比如数字、字符串、日期)存储到数据源或测试套件变量中,以便用于其他工具。此工具可在 SOAtest 和 Virtualize 中使用。
- 右键单击与要提取的数据关联的测试套件、操作套件或响应器,选择 Add New> Test...、 Add Output...或 Add New> Action (这取决于你是使用 SOAtest 还是 Virtualize)。
- 对于 SOAtest,请单击 Standard Test 并选择 All Tools> Data Generator Tool。对于 Virtualize,请在添加输出向导工具面板中选择数据生成器工具。如果按类别查看工具,则数据生成器工具将位于数据交换文件夹中。
- 单击 Finish。编辑器中打开一个空工具。
- 输入特定数据集的名称,然后单击 Add 打开数据生成器向导。
- 选择要生成的数据源类型,然后单击 Finish。
- 可以在 Name 字段中为数据生成器设置的特定实例指定名称。默认情况下,使用生成器类型的名称。
- 单击 Data Source Column 选项卡指定数据应如何存储在数据源列部分:
- Custom column name:选择此选项,指定存储值的数据源列名。除非指定了其他位置,否则值存储在内部数据源中(比如,选择 Writable data source 或 Variable)。这是你将在其他地方引用该值时使用的名称。例如,如果该值存储在名为 My Value 的数据源列中,则应选择 My Value 作为参数化值。也可以引用其作为文字视图或多响应视图中的
${My Value}
。
- Writable data source column:选择此选项,将值保存到可写数据源列中。这允许存储数组形式的值。然后其他工具可以遍历存储的值。
- Write to all columns that match:选择此选项可将值存储在其名称包含指定字符串的所有列中。当提取消息中的多个值时,每个值都将跨匹配的所有列写入。相反,如果选择一个可写数据源列,那么值将跨多行写入列。
- Variable: 选择此选项,将值保存到指定变量中,以便可以在跨当前测试套件中重复使用。变量必须已经被添加到当前测试套件中,如 Defining Variables 中所述。以这种方式设置的任何值都将覆盖测试套件属性面板中指定的任何局部变量值。
- Custom column name:选择此选项,指定存储值的数据源列名。除非指定了其他位置,否则值存储在内部数据源中(比如,选择 Writable data source 或 Variable)。这是你将在其他地方引用该值时使用的名称。例如,如果该值存储在名为 My Value 的数据源列中,则应选择 My Value 作为参数化值。也可以引用其作为文字视图或多响应视图中的
- 单击 Configuration 选项卡,指定应如何生成值。有关每个生成器如何创建不同类型的数据的详细信息,请参阅以下部分:
以下选项对所有数据生成器都是通用的:- 可以从下拉菜单中选择 Fixed ,并在提供的空间中输入一个固定值。
- 可以从下拉菜单中选择 Parameterized ,使用来自连接数据源的参数化值。
- 若要以编程方式配置值,请选择 Scripted 并单击 Edit Script 打开编辑器。
如果选择编写任何配置值的脚本,你可以从下拉菜单中选择一种语言,并将脚本输入文本字段。单击 Evaluate 来验证脚本,然后单击 Ok。你还可以在脚本编辑器中选择。
你还可以在脚本编辑器中选择 File 选项并指向外部脚本。
- 可以从下拉菜单中选择 Fixed ,并在提供的空间中输入一个固定值。
- 当你完成对工具的配置之后,你可以单击 Add 来为你的测试套件添加额外的数据生成器,或者选择一个工具并单击 Remove 来删除它。
- 完成数据生成器的设置后,单击保存按钮。
数字生成器
数字生成器允许在最小值和最大值之间随机生成数字,并设置小数位数。支持负数。
默认
当将最小值、最大值和小数位数设置为固定并留空时,将使用以下默认值:
最小数 | 0 |
---|---|
最大数 | 2147483647 |
小数位数 | 0 |
其他行为
该工具首先生成一个在“最小数”和“最大数”字段中指定的范围内的数字。接下来,该数据根据指定的小数位数四舍五入。
应该在 Decimal places 字段中输入一个值,该值等于或大于最大值或最小值中指定的小数位数的最大值,否则,当数字四舍五入时,工具可能会生成超出指定范围的数字。
在下面的例子中,工具可能会产生一个超出指定范围的数字:
日期/时间生成器
- 在开始日期部分配置开始日期。
- Current date and time: 根据本地机器设置开始日期和测试执行时间。
- Current date at midnight: 使用输出时区将开始日期和时间设置为午夜(00:00:00)。如果输出时区为空白,则将使用本地机器时区。
- User defined: 选择此设置,配置特定的开始日期、格式、时区和地区。可以使用固定值,也可以使用连接数据源或脚本中的参数化值以编程方式配置设置。
启用用户定义时,需要开始日期和格式。如果这些设置配置为使用固定值,但字段为空,则不会生成日期/时间。下面的例子显示了指定开始日期和格式的不同方式:
- 在 Output 部分配置输出设置。
输出设置可以是固定的、参数化的或脚本化的。 - 配置该工具以在偏移设置中生成过去或将来的日期。
你可以指定生成的日期和时间与开始日期和时间之间的距离。可以使用负数来表示过去日期。
字符串生成器
以下字段用于配置生成字符串的方式。
模式
该字段定义字符串的结构。
以下特殊字符用于定义模式:
# | 当工具运行时,该字符被数字 0-9 替换。 |
& | 该字符被字符集中定义的字符替换。 |
\ | 转义 # 和 & 字符,以及另一个 \ 字符,以便可以包含在生成的字符串中。 |
你可以单击 Pattern characters 链接来查看 IDE 中的这些信息。
字符集
该字段指定字符如何映射到模式字符。当设置为 fixed 时,默认值为所有可打印的 ASCII 字符 0x20 (space) 到 0x7e (~)。
示例使用
使用固定模式设置为 ###-##-### 和固定模式下的默认(空)字符映射,你可以生成要在测试中使用的社会保障号。