Параметризация SQL-запроса JDBC в интерфейсе SOAP из пользовательского свойства



Чтобы продолжить проверку базы данных, мне нужно сравнить запись в БД вместе с данными, которые динамически генерируются в предыдущем ответе REST, используя SoapUI.



Я уже захватил значение свойства с помощью шага Property Transfer и успешно сохранил требуемое значение в пользовательском свойстве в тестовом случае, то есть, используя расширение свойства, скажем ${TestCase#customerId}



Мое намерение состоит в том, чтобы использовать это конкретное значение, хранящееся в пользовательских свойствах, для запроса результата, которым я являюсь. ожидая, в шаге JDBC Request теста.



Запрос, который я составил с параметром, выглядит следующим образом:



Select * 
From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = ${TestCase#customerId}


Ответ, который я получаю после выполнения, выглядит следующим образом.




Ошибка получения ответа; java.язык SQL.SQLSyntaxErrorException: ORA-00911: недопустимый символ.




Но, когда я запускаю запрос без параметризованного значения, он выполняется идеально. Где, я склоняюсь к выводу, поскольку есть проблема синтаксиса в том, как я упомянул параметр в запрос.



Но, я не могу найти правильный способ упомянуть параметр в запросе в SoapUI.



Может ли кто-нибудь с опытом работы в SoapUI, пожалуйста, помочь мне в этом?
556   3  

3 ответов:

Это не работает из-за использования расширения свойств, которое известно только SoapUI, но не для SQL query.

Чтобы заставить его работать для того же самого, вам нужно определить переменные в верхней части для всех параметров, которые будут использоваться в SQL-запросе.

Вот снимок экрана, который объясняет, как использовать то же самое:

Введите описание изображения здесь

Попробуйте это.

Select * From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID = :customerId

Вы забыли '# '

Select * 
From ABC.SEC_CUST
Where ABC.SEC_CUST.CUSTOMER_ID =  ${#TestCase#customerId} 

Comments

    Ничего не найдено.