SOAPUI测试步骤(七)---DataSink TestStep

来源:互联网 发布:mac魅可是哪个国家的 编辑:程序博客网 时间:2024/06/05 14:10

转载地址:http://www.cnblogs.com/zerotest/p/4677879.html


经常您可能想要存放收集的数据保存在外部存储,可能为自定义报告或重用数据在进一步的测试时执行。 TestStep

DataSink可以将任意数量的属性值保存到一个支持的格式,包括Excel、JDBC和纯文本文件。 本文将概述如何使用

DataSink的测试也显示一些示例。

1。 DataSink TestStep

在相应的TestCase TestStep按钮添加一个新的DataSink或弹出菜单选项:

create-datasink

这将创建DataSink TestStep和开放配置窗口:

datasink-window

窗口分为三个主要部分:

  1. 指定的属性,将写入一个表存储每次DataSink TestStep执行
  2. 配置区域,允许您配置所选DataSink存储
  3. 数据日志显示每一行的数据被写入DataSink

接下来是选择哪种类型的DataSink存储使用从DataSink下拉顶部左边工具栏:

datasink-dropdown

一旦选择,如下所示相应的配置面板,例如如果我们选择Excel DataSink我们得到以下

excel-datasink

在这里我们可以设置excel文件的名称创建(文件中的字段),和可选指定工作表开始写数据。

在选择DataSink存储您需要添加属性为每个“列”写入存储。 例如,如果我们想写我们的CurrencyConverter服务的结果,我们可能会添加以下:

sample-datasink-properties

最后,我们需要确保DataSink testStep执行时这些属性有一些值,。 这可以通过几种方式:

  1. 通过属性转移到这些属性的请求和响应
  2. 通过属性扩充直接在值字段,指的是期望的属性
  3. 通过脚本Teststep DataSink之前手动写DataSink所需的值
  4. 上面的任意组合

现在当DataSink属性已经充满了期望的值,其内容将被写入到配置DataSink每次DataSink TestStep执行。

2。 测试一个DataSink

工具栏的顶部DataSink允许你“运行”DataSink DataSink属性的当前值,将它们保存到相应DataSink存储。 例如如果我们在Excel中设置“出”字段DataSink上面和输入一些测试值在DataSink属性表:

test-run-config

我们现在可以按下运行按钮,将这些值写入excel文件配置,也可以看到在DataSink日志窗口的底部:

test-run-result

最后打开Excel文件确认这种情况:

excel-result

3。 可用DataSink存储

  • 数据连接 ——创建一个数据库在项目级别使用一个数据库连接。 SQL Update 每个?属性被插入。 例如如果我们我们的以上结果保存到一个名为tb_conversionrate的表,可能的SQL语句 

    INSERT tb_conversionrate VALUES( ?, ?, ? ) 

    在表中的列必须在相同的顺序定义属性。
  • Excel 
  • 文件 
  • Groovy
  • JDBC
  • 属性
  • SubReport

4。 属性DataSink用法的例子——创建的XML块

并不少见想创建的XML块将被用作后续请求的输入。 TestCase将有以下设置

datasink-testcase

这里getItem调用REST调用接收项目ID值存储在数据源。 “转移成本”属性保存每一项的成本转移到成本DataSink,配置如下:

property-datasink-configuration

这里DataSink使用属性存储和具有以下配置:

  • 一个 成本 属性——包含当前项的成本(通过属性转换)
  • 一个 结果 属性,包含聚合XML结果(按下拉顶部的配置面板)
  • 内容 ——XML添加到结果属性执行每次DataSink,它使用成本属性的值通过标准属性扩张
  • 前缀 和 后缀 ——XML元素用于周围生成的XML。

“saveCosts”HTTP请求循环做一篇文章后聚合XML属性:

post-property-expansion

在这里您可以看到,结果属性DataSink被直接插入文章的主体通过标准属性扩展,运行TestCase之后,我们可以看到原始请求视图中看到最后聚合XML发送:

raw-post-result

在这里你可以看到的聚合成本获取项目发布到目标服务进行进一步处理。

0 0