Как назначить результаты SQL-запроса переменной (Robot Framework) для ввода в текст редактирования приложения? - PullRequest
0 голосов
/ 15 февраля 2019

Использование комбинации MySQL и Robot Framework вместе с библиотекой базы данных робота и библиотекой pymysql.

Connecting Database
Connect to database                         pymysql  ${DB_NAME}  ${DB_USER_NAME}  ${DB_USER_PASSWORD}  ${DB_HOST}  ${DB_PORT}
Sleep                                       ${wait_time}
Log to console                              Database Connection is established successfully!

И возможность извлечения данных из таблицы БД и печати на консоли IDE.Проблема в том, что не удается назначить результаты запроса переменной робота для ввода текста редактирования в приложении.

${queryResult1}                             QUERY  SELECT COLUMN1 FROM  ${TABLE_NAME};
${query_results}                            Selenium2Library.Get Text  ${queryResult1}
Log to Console                              ${query_results}

Сценарий приложения

Sleep                               5s
Selenium2Library.Input Text                          ${username}     ${query_results}}
Sleep                               5s
Selenium2Library.Input Text                          ${password}     ${query_results}}
Sleep                               5s
Selenium2Library.Click element                       ${login_button}

1 Ответ

0 голосов
/ 15 февраля 2019

Возвращаемое значение запроса в библиотеке базы данных представляет собой список кортежей - каждый элемент списка является строкой ответа, а кортеж - это значения столбца в нем.
Когда вы использовали queryResult1 в ключевых словах, которые выфактически использовали этот двумерный объект, а не текст в базе данных, как вы, возможно, ожидали.

Чтобы получить требуемое значение, вам необходимо «распаковать» объект;Предполагая, что вы хотите получить первый столбец из первой строки, это самый простой подход:

${DB value}=    Set Variable    ${queryResult1[0][0]}

Первый индекс - номер строки, второй - столбец;индексы начинаются с нуля.

Тогда вы можете использовать ${DB value} в последующих ключевых словах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...