Robot Framework-FOR循環應用

自動化測試過程中,如果我們想多次運行某段語句,且每次使用的值都不一樣,那麼我們就要使用到循環。

在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 : pear
Ending 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 : 2
Ending 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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章