Как прописать и преобразовать данные в ArrayList в среде роботов? - PullRequest
0 голосов
/ 12 февраля 2019

Мне пришлось создать скрипт фреймворка робота для сравнения данных между Excel и WebDriver (Firefox).

Решение 1. Проблема: «Я не могу преобразовать в верхний регистр и преобразовать в ArrayList для сравнения данных».

${doc1}=   Open Excel Document        filename=${OpenExcel}     doc_id=doc1
${view_bicccicmdu}=   Read Excel Row    row_num=1   max_num=6   sheet_name=UpperTT
${view_bicccicmduCheckLength}=    Get Length    ${view_bicccicmdu}
Wait Until Page Contains Element    ${EmptyValue}  ${timeout}
Click Element   ${EmptyValue}
Execute JavaScript  window.scrollTo(0, 7000);
Wait Until Page Contains Element    ${ClickAV.CheckColumn}  ${timeout}
${HG}=          Get Text    ${ClickAV.CheckColumn}
${UPPER1}=      Evaluate     "${HG}".upper()
${HG2}=         Combine Lists  ${HG}
${HGLenght}=         Get Line Count  ${HG}
Should Be Equal     ${HGLenght}    ${view_bicccicmduCheckLength}
Should Be Equal     ${HG}     ${view_bicccicmdu}        ignore_case=True
Close Excel Document

Решение 2. Проблема: «Я не могу преобразовать в верхний регистр».

${doc4}=   Open Excel Document        filename=${OpenExcel}     doc_id=doc4
${view_callsrc}=   Read Excel Row    row_num=5   max_num=6   sheet_name=UpperDD
${view_callsrcCheckLength}=    Get Length    ${view_callsrc}
Wait Until Page Contains Element    ${EmptyValue}  ${timeout}
Click Element   ${EmptyValue}
Execute JavaScript  window.scrollTo(0, 7000);
Wait Until Page Contains Element    ${ClickAV.dropdownSeID}  ${timeout}
#Execute JavaScript   ${ClickAV.dropdownExJ}
Wait Until Page Contains Element    ${ClickAV.dropdownExSelect}  ${timeout}
${HG}=   Get List Items    ${ClickAV.dropdownExSelect}
${UPPER1}=      Evaluate     "${HG}".upper()
${HGLenght}=    Get length    ${HG}
# ${BBB}=     Strip String    ${HG}   characters=total
#${BBB2} =  Convert To Integer  ${BBB}
Should Be Equal     ${HGLenght}    ${view_callsrcCheckLength}
Lists should be equal     ${HG}     ${view_callsrc}
Close Excel Document

Решение 3. Проблема в том, что «я не знаю, как игнорировать верхний регистр или игнорировать нижний регистр, мне просто нужно сравнить данные, которые равны».

Ответы [ 2 ]

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

Для преобразования между UPPERCASE и LOWERCASE, вы можете использовать и импортировать библиотеку STRING в ROBOT Framework (стандартная библиотека, не требует установки).Обратитесь по этой ссылке: https://robotframework.org/robotframework/latest/libraries/String.html.

Что касается преобразования данных в массив / список, то вам необходимо использовать библиотеку COLLECTIONS (стандартная библиотека).Обратитесь по этой ссылке: http://robotframework.org/robotframework/latest/libraries/Collections.html

1.Чтобы преобразовать в верхний регистр в ROBOT Framework, мы можем сделать, как показано ниже ..

${str1}=  Convert To Uppercase  abc
${str2}=  Convert To Uppercase  1a2C3d
Should Be Equal   ${str1}   ABC
Should Be Equal   ${str2}   1A2C3D

2.Создать новый список и добавить новыйзначения для списка, то вы можете сделать, как показано ниже ..

${output_list}=  Create List  # if no arugment is given, then an empty will be created
Append to List ${output_list}  ${new_item1}  ${new_item2}   ${new_item3}

3.Чтобы сравнить два (2) разных списков, необходимо сначала преобразовать оба списка в верхний или нижний регистр (потому что 'abc'! =' ABC ', тогда вы можете использовать приведенный ниже код ..

List Should be Equal  ${list_1}  ${list_2}

Я вижу, что вы используете ключевое слово COMBINE LISTS. Это ключевое слово для объединения нескольких разных списков в один список, как показано ниже.скажем, у вас уже есть 3 списка: $ {list_1}, $ {list_2} и $ {list_3}, затем ..

${new_list}=  Combine Lists  ${list_1}  ${list_2}  ${list_3}

Надеюсь, это поможет ..

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

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

${HG_LowerCase}=    Evaluate     "${HG}".lower()
${View_callsrc_LowerCase}=    Evaluate     "${view_callsrc}".lower()
Lists should be equal     ${HG_LowerCase}     ${View_callsrc_LowerCase}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...