soapUI-DataGen

本文介绍 DataGenTestStep 的使用方法,包括生成数字序列、日期等数据,并讲解如何通过 groovy 脚本和模板定义复杂属性。适用于自动化测试案例的输入数据准备。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1.1  DataGen

1.1.1.1 概述 – DataGen

DataGen TestStep可用于生成要用作TestCases中的输入的数据,例如数字或日期序列,随机选择等。生成的数据可作为属性使用,因此可以像Property Transfers和Expansions一样参考任何其他属性。

首先创建一个空的TestCase并添加一个DataGen步骤,将看到以下编辑器:

 

 

Option

Description

 

Toolbar

DataGen工具栏

 

Property List

动态属性列表及其常用设置(稍后再说明)

 

Configuration

属性相应的配置面板

创建一个属性; 选择工具栏中的添加按钮,打开以下“添加...”对话框:

 

1.1.1.2  DataGen类型

现有的属性类型有:

  • List : 指定在读取属性时返回的可能值的列表
  • Number : 允许基于数字的顺序创建属性值(整数,日期等)
  • Script : 指定一个属性,其值由groovy脚本创建
  • Template : 指定在构建其他值时要使用的内容块
1.1.1.2.1       Script

选择Script属性时的配置面板如下所示:

 

指定一个groovy脚本,返回该属性的所需值。 例如,您可以创建一个包含今天日期的属性,格式如下:

def sdf = new java.text.SimpleDateFormat("yyyy-MM-dd");

return sdf.format( new Date());

可以在TestCase中提供PropertyExpansions的任何地方,可以在$ {DataGen#today}中使用该代码,在使用时将替换为今天的日期。

1.1.1.2.2       Template

 

此类型可用于构建复杂的多行属性,例如插入到请求中。 例如,这里可以指定还可以包含PropertyExpansions的任何内容

${DataGen#today}

这将评估一个包含今天日期的XML元素,并与上述脚本属性结合使用。

1.1.1.2.3       Number

 

此属性类型用于生成数字列表。 开始,结束或步骤值指定序列的范围及其增量或减量。 该模式指定如何使用java DecimalFormat类格式化属性值。 选择随机复选框将选择指定范围内的随机数(而指定的步长为模数)。 Persist选项存储保存项目时发出的最后一个号码。 如果需要先前的值,这将允许顺序继续(注意:通过命令行工具运行后,项目不保存)。

因此,举例来说,如果要生成100元到1000元的随机RMB货币,增加50元,您可以指定以下内容:

 

1.1.1.2.4       List

 

上述屏幕截图配置了工作日列表,并设置每次读取时选择随机行的属性,如果未选中“随机化”复选框,则依次使用该值。

1.1.1.3 常用配置属性

属性列表包含两种可配置的模式和共享模式。

1.1.1.3.1       Mode

模式有两个可能的值;READ and STEP.READ在每次被引用的时候重新评估,(例如)我们在上面创建”today”属性和其它属性的值将被重新创造这可能并不总是需要的,例如,你可能会使用一个Number属性来生成一个TestCase的整个运行过程中使用的一个唯一的ID。如果你指定这个ID用在多个请求或脚本,将其设置为READ,它每次会给你一个新的价值,而不是一个始终是相同的值。在这种情况下,将MODE设置为STEP,当执行测试用例中DataGen TestStep被执行时,属性被重新定义

1.1.1.3.2       Shared

共享控件是否应在负载测试中的线程之间共享属性; 也许您正在使用Number属性来创建唯一的顺序ID,并且还需要它们在线程之间是唯一的,在这种情况下,此属性需要共享,否则每个线程将创建相同的值序列,然后在所有值中都不会是唯一的运行。

转载于:https://www.cnblogs.com/datasyman/p/7070555.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值