Как я могу использовать фейкер в сочетании с Robot Framework?

Я пытался использовать библиотеку faker для генерации данных, не используя их в своих тестовых примерах как статические данные.

Я попытался вызвать fake.md5(raw_output=False) непосредственно из моего ключевого слова, а также путем создания переменной и присвоения ей этого значения, но ни один из них не дал ожидаемого эффекта. Кажется, что бы я ни делал, единственный вывод, который я получаю во время теста, это fake.md5(raw_output=False).

Что я делаю не так?

Изменить: Мое ключевое слово (оно записывается в определенное поле, это просто тестовое ключевое слово, чтобы убедиться, что я могу использовать фейкер) -

Write username
    ${md5}=    MD 5
    ${my data}=    log    md5: ${md5}
    Input Text    a11y-username    ${my data}

Редактировать № 2 - я понял, что пропустил ключевое слово log, я обновил свой код


person LeonH    schedule 16.07.2014    source источник
comment
Вы, кажется, полностью изменили то, о чем спрашиваете. Сначала был вопрос, как использовать фейкер, теперь вы спрашиваете об ошибке object type of 'NoneType' has no len()? В вашем вопросе нет кода, который пытается использовать функцию len. Если вы столкнулись с другой проблемой, задайте отдельный вопрос, а не меняйте этот вопрос.   -  person Bryan Oakley    schedule 16.07.2014
comment
Я удалил код ошибки, это была ошибка из-за неправильного написания кода.   -  person LeonH    schedule 16.07.2014


Ответы (1)


Проблема в этом утверждении:

${my data}=    md5: ${md5}

Робот ожидает, что первая ячейка (или первая ячейка после имени переменной) будет ключевым словом. Итак, в этом случае он считает, что md5: ${md5} является ключевым словом, что, очевидно, не так. Вот почему вы получаете ошибку No keyword with name 'md5: ${md5}' found.

Я не знаю, что вы ожидаете делать с этой строкой кода. Ваше значение уже находится в переменной, вы пытаетесь скопировать его в другую переменную или просто распечатать?

Если вы намеревались зарегистрировать значение, используйте ключевое слово Журнал:

Write username
    ${md5}=    MD 5
    log  md5: ${md5}

Если вместо этого вы хотите скопировать значение в другую переменную, вы можете использовать Установить переменную ключевое слово:

write username
    ${md5}=  MD 5
    ${my data}=  set variable  ${md5}
    Input Text  a11y-username  ${my data}
person Bryan Oakley    schedule 16.07.2014
comment
Пожалуйста, посмотрите мое редактирование, к сожалению, я должен использовать свой телефон, чтобы комментировать. Мое рабочее место блокирует внешний JavaScript. - person LeonH; 16.07.2014