一个 DataSource teststeps测试数据读SoapUI的外部资源(Excel文件,XML属性,JDBC资源,文件/目录,等等),这些可以用于以下TestSteps(请求、断言、xpath查询、脚本等)可以通过Property-Transfers 或 Property-Expansions 。 最后循环每一行记录的数据源。
这可以归结为以下设置:
创建一个空的SoapUI项目并导入公开CurrencyConverter WSDL可用http://www.webservicex.com/CurrencyConvertor.asmx?wsdl ,然后添加TestSuite和TestCase和开放编辑器:
现在添加一个数据源TestStep并选择网格数据源,这是一个数据源用于管理您的测试数据从SoapUI无需任何外部存储器。 现在,您应该有:
现在,您需要定义数据源的数据应该保存。 三个属性添加到数据源:,并率(使用 添加 按钮在工具栏上的属性列表左侧)。
如您所见,当你添加一个属性,右边的网格编辑器增加了另一个相应的列现在你有三个列中,您可以添加一些测试数据。 添加以下数据:
SEK, DKK, 1.1
USD, EUR, 0.6
CAD, NOK, 0.7
这将在编辑器:
好,现在你已经建立了测试数据将提供给你测试,继续. .
现在您需要添加一个测试请求TestCase您将使用它来测试Web服务。 SOAP请求按钮在TestCase编辑器,并选择CurrencyConverterSoap ConversionRate。
在所有对话框单击OK。 SOAP请求的步骤将添加到TestCase和请求打开的编辑器。 切换到表单编辑器(如果不是已经存在),弹出菜单的两个字段
在数据源中选择相应的属性。 SoapUI将自动创建相应的property-expansion语法在表单字段(易读性在outline视图所示)。
现在你有设置请求使用数据源中的数据,下一步是也为响应创建一个断言检查,你预期的响应。 打开 断言 选项卡底部的编辑和使用要求 添加 按钮在工具栏添加XPath匹配断言。
在XPath断言打开编辑器中,按下 选择XPath 按钮(左上角)打开XPath向导。 因为你没有选择,SoapUI Pro将提示您使用一个默认的响应。 这样做,在弹出框中选择ConversionRateResult元素。
最后,使用 选择内容 按钮(右下角)在数据源选择速度属性。 XPath断言现在应该配置如下:
太棒了! 请求现在使用的数据源属性。 现在缺少是一个数据源循环结束时TestCase循环数据源中的每一行的请求。 从TestCase工具栏添加一个数据源循环步骤,双击它和配置循环回要求您的数据源每一行都循环一次。
(如果你不这样做,请求只会执行一次了)。
所有集。现在运行的测试用例:
不足为奇的是,你得到一个错误的断言在第一次运行的要求。 你希望web服务返回的不是。 双击TestStep失败在TestCase日志(打开消息查看器)并选择选项卡,查看是什么实际返回的响应。
(TestCase实际上你可以看到这日志,我们只是想展示此功能)
把这个值到网格的第一行的数据源。 如果您现在运行TestCase,你会得到一个类似的错误的第二行和第三行(校正后第二个在第一)。 纠正后最后一行的TestCase。
好了! 基本上你可以添加任意数量的行,你想要的,通过所有这些SoapUI将愉快地咀嚼。
现在使用Excel电子表格,而不是你的DataGrid。 回到数据源,从顶部的下拉选择Excel。
现在的配置如下:
创建一个电子表格在任何程序,可以节省XLS文件并保存它像你这样相同的值(其实你应该这样做之前,先改变数据源,因为你可以从电网的所有值复制到Excel)。 使事情更加有趣,在中间插入一行值人民币,美元,4。
现在在SoapUI保存并指定文件。 单击 运行 在数据源窗口按钮,返回相同的值(显示在日志底部的数据源编辑):
这是一个常见的场景在DataDriven做测试时,你不希望失败测试停止在第一行,而是仍然处理所有行。
最后,选择 创建报告 从工具栏按钮,指定出口(选择一个文件夹 JUnit HTML报告风格 在您的浏览器中),导致以下:
供您参考,这里有两个文件;
- - - - - - datadriven-test-soapui-project.xml ——SoapUI项目文件
- - - - - - datadriven.xls ——excel文件