rf中的條件判斷與循環


條件判斷

  run keyword if condition  name  *args

  ... ELSE IF conditon   name   *args

  ...ELSE   name  *args

  condition:python表達式,條件表達式參數 傳給python中的eval()函數

  name:條件滿足時執行關鍵字,只能執行一個關鍵字 

  *args:關鍵字name的參數

  注意:1、ELSE 必須要大寫 且是新版本才有的語法,老語法是 run keyword unless(可單獨使用)

   2、RF中解決太長的問題,可以一行前面加 三個點的省略號,在測試用例中,一行的省略號前面必須留有一個以上的空單元格一行的省略號前面必須留有一個以上的空單元格

  例子:

  ${num1} get value from user 請輸入第一個數字 5
  ${num2} get value from user 請輸入第二個數字 6
  run keyword if int(${num1}) > int(${num2}) log to console ${num1} > ${num2}
  ... ELSE IF int(${num1}) < int(${num2}) log to console ${num1} < ${num2}
  ... ELSE log to console ${num1} == ${num2}

  run keyword unless使用(如果條件不滿足則執行關鍵字
  run keyword unless 1 == 2 log to console 1 != 2  結果會輸出 1 != 2

循環語句

  RF中循環只有FOR循環

  Exit For Loop 關鍵字實現break功能

  Continue For Loop 關鍵字實現continue 功能,

  也可以使用 等價的關鍵字Continue For Loop If    Exit For Loop If

  想實現while的功能需要使用大Range

  例子:

    ${listvar1} create list 1 2 3
    # 老語法
    # 如果后面的變量是個list, 一定要寫成 @的形式,而不是$的形式
    :FOR ${var} IN @{listvar1}
      \ log to console ${var}
    log to console 循環外面

    # 新語法
    FOR ${var} IN @{listvar1}
      log to console ${var}
    END
    log to console 循環外面

Range用法

  注意:IN RANGE之間只能有一個空格
  FOR ${var} IN RANGE 5
    log to console ${var}
  END
  # 指定起止范圍,不包括最后一個元素
  FOR ${var} IN RANGE 1 5
    log to console ${var}  # 打印1 2 3 4
  END
  # 指定步長
  FOR ${var} IN RANGE 1 5 2
    log to console ${var}  # 打印1 3
  END

  

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM