在 SoapUI 测试用例中使用 Excel DataSink 和 VLOOKUP 的替代方案?
Alternative to using Excel DataSink with VLOOKUP in SoapUI Test Case?
我目前在 SoapUI NG Pro 中有以下测试用例,目的是在数据库 table(产品)中创建新记录,其中包含另一个 table(产品类型)的外键.我目前的测试设置如下:
- JDBC 检索 ProductType 中记录的 ID 和描述的数据源 table
- 将这些 ID 和描述保存到 sheet 中的 Excel 工作簿的 DataSink 1. 在 sheet 2 中,我有一个要使用的产品名称和产品类型列表在POST。然后我使用 VLOOKUP 根据 sheet 1
中的值填充 sheet 2 中的 ProductTypeId
- 数据源循环
- Excel 从工作簿 sheet 2
中提取的数据源
- POST 使用数据源中的名称和 ProductTypeId 值的 REST 请求
- 数据源循环
这目前效果很好,但我有 2 个问题:
- SoapUI 项目使用 Visual Studio 进行版本控制,Excel 工作簿确实应该与项目一起签入,但这意味着我需要签出 Excel 工作簿每次我想 运行 DataSink 步骤。
- 当项目移动到另一个环境时,服务器可能没有Excel
的实例
因此我想将所有数据源都包含在 SoapUI 中(例如使用 Grid 类型)
我试过使用 Grid 数据源和使用 属性 传输步骤,但我被卡住了。
遗憾的是,我以前没有任何编写 groovy 脚本的经验,对 XPath 只知道一点点。
我正在使用 SoapUI NG Pro 2.0。
如有任何想法,我们将不胜感激!
不使用 Excel,而是使用数据库。尝试在循环中添加另一个 jdbc 步骤来进行查找...
- JDBC 检索 ProductType 中记录的 ID 和描述的数据源 table
- JDBC 根据步骤 1 中的当前 Product.ProductType 查找 ProductType.Id 的步骤。
- POST REST 请求。从步骤 1 中获取产品名称和产品类型,从步骤 2 中获取产品类型 ID。
- 循环
我不知道数据步骤的大小,所以第 2 步在性能方面可能有点昂贵,但好处是您不需要任何 Groovy 脚本,也不需要您需要在您的项目或文件中存储任何测试数据。
我目前在 SoapUI NG Pro 中有以下测试用例,目的是在数据库 table(产品)中创建新记录,其中包含另一个 table(产品类型)的外键.我目前的测试设置如下:
- JDBC 检索 ProductType 中记录的 ID 和描述的数据源 table
- 将这些 ID 和描述保存到 sheet 中的 Excel 工作簿的 DataSink 1. 在 sheet 2 中,我有一个要使用的产品名称和产品类型列表在POST。然后我使用 VLOOKUP 根据 sheet 1 中的值填充 sheet 2 中的 ProductTypeId
- 数据源循环
- Excel 从工作簿 sheet 2 中提取的数据源
- POST 使用数据源中的名称和 ProductTypeId 值的 REST 请求
- 数据源循环
这目前效果很好,但我有 2 个问题:
- SoapUI 项目使用 Visual Studio 进行版本控制,Excel 工作簿确实应该与项目一起签入,但这意味着我需要签出 Excel 工作簿每次我想 运行 DataSink 步骤。
- 当项目移动到另一个环境时,服务器可能没有Excel 的实例
因此我想将所有数据源都包含在 SoapUI 中(例如使用 Grid 类型)
我试过使用 Grid 数据源和使用 属性 传输步骤,但我被卡住了。
遗憾的是,我以前没有任何编写 groovy 脚本的经验,对 XPath 只知道一点点。
我正在使用 SoapUI NG Pro 2.0。
如有任何想法,我们将不胜感激!
不使用 Excel,而是使用数据库。尝试在循环中添加另一个 jdbc 步骤来进行查找...
- JDBC 检索 ProductType 中记录的 ID 和描述的数据源 table
- JDBC 根据步骤 1 中的当前 Product.ProductType 查找 ProductType.Id 的步骤。
- POST REST 请求。从步骤 1 中获取产品名称和产品类型,从步骤 2 中获取产品类型 ID。
- 循环
我不知道数据步骤的大小,所以第 2 步在性能方面可能有点昂贵,但好处是您不需要任何 Groovy 脚本,也不需要您需要在您的项目或文件中存储任何测试数据。