Хобрук: Ваш путь к мастерству в программировании

Как присвоить переменную после выполнения ключевого слова Run If - else?

Я пытаюсь назначить переменную - body, в зависимости от статуса другой переменной phonenumber_id. Если phonenumber_id равно NULL, body будет присвоено значение False.
Но похоже, что это не работает. Работает только если он phonenumber_id не NULL.

${body}=    Run keyword if  '${phonenumber_id}'!='NULL'     Set variable    TRUE
...         Else            Set Variable    FALSE   

Не уверен, что делаю не так.

02.04.2015

  • Что значит не работает? Вы получаете сообщение об ошибке, или он всегда устанавливает одно и то же значение, независимо от того, что ${phonenumber_id}? Кроме того, хотите ли вы проверить по строке "NULL" или по значению python None? 03.04.2015
  • Когда первое условие было истинным, $ {body} присваивалось с этим Set variable TRUE ... Else Set Variable FALSE 04.04.2015

Ответы:


1

Ключевое слово Set Variable If установит переменную на основе заданного условия

${body}=    Set Variable If    '${phonenumer_id} != 'NULL'
...    ${True}    ${False}
03.04.2015
  • Но если отредактировать свой ответ, я с радостью сниму отрицательный голос. 08.06.2017

  • 2

    Вы поняли почти правильно - просто неправильно набрали ELSE - оно должно быть написано заглавными буквами, чтобы считаться частью Run Keyword If. Итак, в вашем конкретном случае это должно было быть:

    ${body}=    Run keyword if  '${phonenumber_id}'!='NULL'     Set variable    TRUE
    ...         ELSE            Set Variable    FALSE
    

    Однако для простого случая установки нового постоянного значения вполне достаточно answer @ILostMySpoon - и более "читабельного".


    В общем, для тех, кто наткнулся на этот пост, Run Keyword If в сочетании с ELSE Set Variable - очень мощная конструкция для установки / изменения переменной - основанная на том факте, что она не только запускает ключевое слово (а) условно, но также возвращает возвращаемые значения обратно. в стек.

    Рассмотрим этот пример:

    ${var}=    Run Keyword If    ${bool condition}   Do Some Action Returning A Value    
               ...    ELSE    Set Variable    ${var}
    

    В нем {var} будет установлено значение, возвращаемое Do Some Action Returning A Value, только если ${bool condition} будет истинным, и в противном случае сохранит свое старое значение.

    Еще один искусственный, но менее абстрактный пример:

        ${value}=    Run Keyword If    ${should be int}     Convert To Integer   ${value}
                     ...    ELSE IF    ${should be float}   Convert To Number    ${value}
                     ...    ELSE    Set Variable    ${value}
    
    29.04.2017
    Новые материалы

    Создание кнопочного меню с использованием HTML, CSS и JavaScript
    Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

    Внедрите OAuth в свои веб-приложения для повышения безопасности
    OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

    Классы в JavaScript
    class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

    Как свинг-трейдеры могут использовать ИИ для больших выигрышей
    По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

    Как построить любой стол
    Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...

    Обзор: Машинное обучение: классификация
    Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

    Разработка расширений Qlik Sense с qExt
    Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..