Вы не можете иметь конструкцию ${variable}= Returned Value From Keyword
внутри Run Keyword
/ Run Keyword If
, поскольку последняя ожидает, что все переданное ей будет ключевым словом - и она также считает ${variable}
one.
Существует один «обходной путь» - Run Keyword If
распространяет обратно на последнее возвращенное значение в его ключевом слове, и его можно установить в переменную. Например, вы можете сделать это:
${variable}= Run Keyword If ${condition} Returned Value From Keyword ELSE Set Variable other value
Запомните ELSE
в этой конструкции - без нее, если условие ложно, переменная будет неопределенной - останется со значением None
(данные введите).
Естественно, если Run Keyword If
имеет более одного шага (например, журналы вашей консоли), вам придется разбить его - блок, который «делает что-то», и другой (или другие) это «присваивает значения».
Я набрал «обходной путь» в кавычках, потому что на самом деле это не так - это способ использования ключевого слова.