RF02 控制流語法 IF和For語句語法

2021-08-19 20:20:17 字數 3798 閱讀 3022

目錄

1.3 if關鍵字使用案例講解

二、rf控制流—for迴圈

2.2 雙層for迴圈

rf中,if語句是用run keyword if來代替的

run keyword if 判斷條件 其他關鍵字

... else if 判斷條件 其他關鍵字

...

... else 判斷條件 其他關鍵字

如果給出的條件滿足,就執行給出的關鍵字

*** test cases ***

...# 如果要執行的關鍵字有返回值,在控制流語句前面接收

$ run keyword if $==1 使用者資訊頁面-獲取使用者餘額

*** settings ***

force tags new

*** test cases ***

數字比較

@ builtin.create list 0 10 5

builtin.run keyword if $>$ builtin.log 我贏了

... else builtin.log 我輸了

字元比較

# 字元比較都需要加上雙引號或者單引號

布林值比較

# 布林值比較都需要加上雙引號或者單引號

# 注意返回值為none的情況

# 在rf中,布林值首字母是大寫:true、false

$ builtin.set variable true

$ builtin.run keyword if "$"=="false" builtin.log pass

builtin.log $

builtin.comment 返回值為none的情況

$ builtin.set variable hello

$ builtin.set variable if "true"=="false" hao $

# 在rf中,如果關鍵字沒有設定返回值,那麼就會返回none,如果有返回值,所以上面語句中,

# 最後加了乙個$作為builtin.set variable if關鍵字條件不滿足時的返回值,二

# builtin.set variable if的語法為,條件滿足返回第乙個值,不滿足返回第二個值

實際專案中,可能需要在不同的測試環境(sit環境、uat環境以及生產環境)中跑自動化測試指令碼。不同 測試環境所需要準備的測試資料可能不一樣,所以要做到測試資料的分離。在rf命令列啟動過程中,可以通過-v傳入全域性的引數,可以在用例中在用例執行前判斷傳入的引數的值,再根據這個值匯入不同的資源檔案

*** test cases ***

builtin.run keyword if "$"=="sit" builtin.import resource sit環境測試資料儲存資源檔案路徑

... else if "$"=="sit" builtin.import resource uat環境測試資料儲存資源檔案路徑

... else if builtin.import resource uat環境測試資料儲存資源檔案路徑

第一種語法:

:for 變數 in 序列(or 列表)

關鍵字 引數值

exit for loop if 判斷條件

第二種語法:

:for 變數 in range 迴圈限量

關鍵字 引數值

exit for loop if 判斷條件

*** settings ***

force tags a

*** test cases ***

從列表或序列中迴圈取值

[documentation] 從列表中迴圈取值

# for in 從序列或者列表中取值

builtin.log start

@ builtin.create list hello world hey

builtin.comment \表示該for迴圈的作用域,表示語句是for迴圈的內容

:for $ in @

\ builtin.log $

\ # 滿足條件的情況下,退出迴圈

\ builtin.exit for loop if "$"=="world"

在乙個範圍內迴圈取值

[tags] smoke

builtin.log 只有乙個引數,引數為終止值。預設其實為0,預設為+1

:for $ in range 5

\ builtin.log $

# 設定起始值

builtin.log 設定起始值。第乙個引數為起始值,第二個引數為結束值。預設+1

:for $ in range 10

15 \ builtin.log $

builtin.log 設定步長。第乙個引數為起始值,第二個引數為結束值,第三個引數為步長

:for $ in range 10202

\ builtin.log $

rf中不支援直接巢狀for迴圈,如果想要巢狀for迴圈,需要把內層for迴圈寫成關鍵字,for寫到外面

外層迴圈:

:for 變數 in 序列(or 列表)

內層迴圈關鍵字 引數值

內層迴圈關鍵字:

:for 變數 in range 迴圈限量

關鍵字 引數值

外層for迴圈:

*** settings ***

force tags a

default tags test tt

resource ../關鍵字/內層for迴圈關鍵字.robot

*** test cases ***

雙層for迴圈

builtin.comment rf中不支援直接巢狀for迴圈,如果想要巢狀for迴圈,需要把內層for迴圈寫成關鍵字,for寫到外面

@ builtin.create list row1 row2 row3 row4

@ builtin.create list cell1 cell2 cell3

:for $ in @

\ 內層for迴圈關鍵字.內層for迴圈 $ @

內層for迴圈關鍵字:

*** settings ***

library builtin

*** keywords ***

內層for迴圈

[arguments] $ @

:for $ in @

\ builtin.log $

Swift基本語法 3 控制流

let num 200 if num 10 else if num 100 elsex 20 print 大了 print 小了 表示執行 x 20 print 真的大了 適當地運用三目,能夠讓 寫得更加簡潔 單個可選項判斷let url nsurl string 方法1 強行解包 缺陷,如果 ur...

python基礎語法(一)計算和控制流

控制流程 在計算機執行過程中,下一條語句 決定了計算機是能夠自動調整 自動反覆操作,還是只能像計算器那樣一步接著一步計算。這種決定 下一條語句 的機制,在程式語言中稱作 控制流程。python語言中的控制流程 順序結構 按照語句佇列前後順序賴確定下一條將要執行的語句 條件分支結構 根據當前情況來選擇...

控制語句和語法

學習主題 流程控制語句和方法 學習目標 1 掌握什麼是流程控制 2 掌握if單選擇 3 掌握 if else 雙選擇 4 掌握 if elseif else 多選擇 5 掌握switch的使用 6 掌握while迴圈結構 1.控制語句和現實邏輯對應 1 流程控制語句的作用是什麼,分為哪幾類?流程控制...