Robot Framework: почему Log игнорирует мой аргумент? - PullRequest
0 голосов
/ 11 февраля 2019

Когда я запускаю приведенный ниже код, я получаю сообщение об ошибке

Keyword 'BuiltIn.Log' expected 1 to 5 arguments, got 0.

за секунду log to console (в условии if).Зачем?Почему он не «видит» переменную, которую я пытаюсь отправить в качестве аргумента?

Поиск в Google ничего полезного не возвращает.Я пробовал несколько комбинаций пробелов и апострофов, но ничего не помогло.

Function key above F12
    [Arguments]  ${fkey}
    ${ValidFKeys}=    Create List    F13  F14  F15  F16  F17
    log to console  ${fkey}
    Run Keyword If   $fkey in $ValidFKeys  run keywords
    ... log to console  ${fkey}

1 Ответ

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

Проверьте документацию Run Keywords:

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

То, что произошло, Run Keywords обработано Log To Consoleв качестве первого ключевого слова, которое нужно запустить, затем значение ${fkey} в качестве второго - оно не передало его в качестве аргумента в журнал.Чтобы преодолеть это, добавьте «И» - теперь он знает, что ${fkey} является аргументом;если у вас нет другого ключевого слова, которое нужно запустить, либо удалите Run Keywords, либо используйте No Operation:

Run Keyword If   $fkey in $ValidFKeys  run keywords
... log to console  ${fkey}  AND  No Operation
...