Robot Framework-FOR迴圈應用
阿新 • • 發佈:2022-01-10
自動化測試過程中,如果我們想多次執行某段語句,且每次使用的值都不一樣,那麼我們就要使用到迴圈。
在Robot FrameWork中,迴圈使用到的關鍵字是FOR,常用見應用如下。
應用一:
FOR ${變數} IN 引數1 引數2 引數3
引數可以是數字或字串,FOR必須大寫
執行結果:
Starting test: TEST.LogTest.for INFO : 1 INFO : 2 INFO : 3 Ending test: TEST.LogTest.for
執行結果:
Starting test: TEST.LogTest.for INFO : apple INFO : pearEnding test: TEST.LogTest.for
應用二:
FOR ${變數} IN RANGE 初始值 終值(選填) 步長(選填)
執行結果:
Starting test: TEST.LogTest.for INFO : 0 INFO : 1 INFO : 2 Ending test: TEST.LogTest.for 說明:上述兩個執行結果一樣,從0開始,終值-1結束。
設定步長為:2
執行結果:
Starting test: TEST.LogTest.for INFO : 0 INFO : 2Ending test: TEST.LogTest.for
應用三:
使用exit for loop 退出迴圈(類似break),結合run keyword if關鍵字使用
執行結果:
Starting test: TEST.LogTest.loop INFO : @{list} = [ 1 | 3 | 5 | 7 ] INFO : 1 INFO : 3 INFO : 5 INFO : Exiting for loop altogether. Ending test: TEST.LogTest.loop
為什麼用@{list}而不是${list},替換為${list}後的執行結果為
Starting test: TEST.LogTest.loop INFO : ${list} = ['1', '3', '5', '7'] INFO : ['1', '3', '5', '7'] Ending test: TEST.LogTest.loop
應用四:
continue for loop 跳過當前執行下一輪迴圈,結合run keyword if關鍵字使用
執行結果:
Starting test: TEST.LogTest.loop INFO : Continuing for loop from the next iteration. INFO : 1 INFO : Continuing for loop from the next iteration. INFO : 3 Ending test: TEST.LogTest.loop
拓展:
Repear Keyword關鍵字,多次執行指定的關鍵字,可以設定次數或執行時間
1、執行log關鍵字2s
執行結果:
Starting test: TEST.LogTest.continue INFO : Repeating keyword, round 1, 2s remaining. INFO :apple INFO : Repeating keyword, round 2, 1s 998ms remaining. INFO : apple INFO : Repeating keyword, round 3, 1s 996ms remaining. INFO : apple 。。。。。。 Ending test: TEST.LogTest.continue
2、執行log關鍵字兩次
執行結果:
Starting test: TEST.LogTest.continue INFO : Repeating keyword, round 1/2. INFO : apple INFO : Repeating keyword, round 2/2. INFO : apple Ending test: TEST.LogTest.continue