我的测试有 2 个 JDBC 请求。
我想在第二个 JDBC 请求的 WHERE 子句中使用第一个 JDBC 请求的结果。
例如,查询 DB2 数据库,我尝试过:
- JDBC 请求 1:
select member_id from Employees fetch first 1 row only
- JDBC 请求 2:
select bonus_amount from EmployeesBonuses where member_id = '${JDBC Request 1#ResponseAsXml#//MEMBER_ID}'
不幸的是,这种引用方法不起作用。此外,上面的 2 个步骤引用不同的数据库,因此无法构造 join'd 语句。
这是因为属性扩展在 Jdbc 请求步骤的 sql 查询中不起作用。
相反,请查询第二个,如下所示:
select bonus_amount from EmployeesBonuses where member_id = :MEMBERID
在sql查询的上面,SoapUI允许定义参数。定义一个参数,MEMBERID
并提供值作为属性扩展,即${#JDBC Request 1#ResponseAsXml#//MEMBER_ID}
。
现在,尝试执行查询。有关 SoapUI 中查询参数化的更多详细信息,请参阅文档