Я пытаюсь протестировать короткий Robot Framework-код для запроса у пользователя имени Excel-файла в виде всплывающего окна, предоставляемого библиотекой Dialogs Robot Framework. Идея состоит в том, что база пути к файлу (которая остается той же самой к папке, в которой будут находиться Excel-файлы) жестко запрограммирована в одну переменную с именем ${EXCEL BASE PATH}
, тогда пользователь будет давать имя Excel-файла во всплывающем окне. -window (так как имя файла будет меняться в разных файлах) и эта изменяющаяся часть пути будет сохранена в ${EXCEL NAME}
, а третья часть будет жестко задана как расширение файла .xlsx, сохраненное в ${EXCEL FILE EXTENSION}
, потому что только файлы с Расширение .xlsx будет открыто, и нет никаких изменений в расширении файла.
Библиотека, используемая для обработки Excel - OpenPyxlLibrary, поскольку она поддерживает xlsx. ExcelLibrary поддерживает только xls.
Я близко подошел к работе, но проблема в том, что при объединении полного пути этих трех частей, написанных выше, результат не совпадает с результатом, который я ищу.
Ожидаемый результат для полного пути к открываемому Excel-файлу будет:
C:\\Users\\developer\\Robot Framework\\Excel\\TestExcel.xlsx
Но вместо этого теперь при входе в консоль это:
C:\Users\developer\Robot Framework\Excel\ TestExcel .xlsx
Таким образом, отсутствуют пропущенные вторые обратные слеши (требующиеся Open Pyxl Library для пути), а также свободное место перед .xlsx
Есть ли другой способ построения пути, используемый Open Pyxl Library из разных частей, как это, чем с помощью Catenate-ключевое слово, как проверено здесь? Если полный путь к Excel жестко запрограммирован в одну переменную, которая уже отлично работает, но проблема в дальнейшем будет заключаться в необходимости изменить значение этой переменной при изменении файла Excel, поэтому я пытаюсь протестировать решение для пользователя, чтобы дать имя Excel-файла, который будет открыт. Поскольку имя файла является изменяющейся частью от файла к файлу, а другие части остаются неизменными.
Excel-файл еще не открыт в этом упрощенном коде, и я сначала пытаюсь просто записать полный путь к Excel-файлу, чтобы проверить, правильно ли он записывается. Когда путь будет правильным, я мог бы добавить код для фактического открытия файла Excel.
CommonResources.robot-файл (файл-ресурс):
*** Settings ***
Library String
Library BuiltIn
Library OpenPyxlLibrary
Library Dialogs
*** Variables ***
${EXCEL BASE PATH} C:\\Users\\developer\\Robot Framework\\Excel\\
${EXCEL FILE EXTENSION} .xlsx
${EXCEL NAME} ${EMPTY}
${EXCEL SHEET} Sheet
Предоставить файл имени Excel ( файл теста):
Resource Resources/CommonResources.robot
*** Test Cases ***
Provide Excel Name
${EXCEL NAME} Get Value From User Please provide name of Excel-file
Log to console ${EXCEL NAME}
${FULL EXCEL PATH} Catenate ${EXCEL BASE PATH} ${EXCEL NAME} ${EXCEL FILE EXTENSION}
Log to console ${FULL EXCEL PATH}