从自定义 属性 参数化 SOAP UI 中的 JDBC SQL 查询
Parameterize a JDBC SQL Query in SOAP UI from a Custom Property
为了继续进行数据库验证,我需要使用 SoapUI
.
将数据库中的记录与在先前 REST 响应中动态生成的数据进行比较
我已经使用 Property Transfer
步骤捕获了 属性 值,并成功地将所需值存储在测试用例中的自定义 属性 中,即使用 属性扩展,比如 ${TestCase#customerId}
我的意图是在 JDBC Request
测试步骤中使用存储在自定义属性中的特定值来查询我期望的结果。
我用参数起草的查询如下:
Select *
From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = ${TestCase#customerId}
我执行后收到的响应如下。
Error getting response; java.sql.SQLSyntaxErrorException : ORA-00911: Invalid character.
但是,当我 运行 没有参数化值的查询时,它执行得很好。在哪里,我倾向于得出结论,因为我在查询中提到参数的方式存在语法问题。
但是,我无法找到在 SoapUI 的查询中提及参数的正确方法。
任何有 SoapUI 经验的人都可以帮助我吗?
试试这个。
Select * From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = :customerId
这是行不通的,因为使用了 属性 扩展,只有 SoapUI
知道,但 SQL query
.
不知道
为了让它发挥同样的作用,您需要在顶部定义变量,用于中将要使用的所有参数]sql查询.
这里是说明如何使用的屏幕截图:
您忘记了“#”
Select *
From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = ${#TestCase#customerId}
为了继续进行数据库验证,我需要使用 SoapUI
.
我已经使用 Property Transfer
步骤捕获了 属性 值,并成功地将所需值存储在测试用例中的自定义 属性 中,即使用 属性扩展,比如 ${TestCase#customerId}
我的意图是在 JDBC Request
测试步骤中使用存储在自定义属性中的特定值来查询我期望的结果。
我用参数起草的查询如下:
Select *
From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = ${TestCase#customerId}
我执行后收到的响应如下。
Error getting response; java.sql.SQLSyntaxErrorException : ORA-00911: Invalid character.
但是,当我 运行 没有参数化值的查询时,它执行得很好。在哪里,我倾向于得出结论,因为我在查询中提到参数的方式存在语法问题。
但是,我无法找到在 SoapUI 的查询中提及参数的正确方法。
任何有 SoapUI 经验的人都可以帮助我吗?
试试这个。
Select * From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = :customerId
这是行不通的,因为使用了 属性 扩展,只有 SoapUI
知道,但 SQL query
.
为了让它发挥同样的作用,您需要在顶部定义变量,用于中将要使用的所有参数]sql查询.
这里是说明如何使用的屏幕截图:
您忘记了“#”
Select *
From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = ${#TestCase#customerId}