內容轉載自:
海盜雪絨花的測試博客
copyBookmarkhttp://www.51testing.com/?21116
RobotFrameWork從2.7.4版本開始,支持一項激動人心的功能——IF關鍵字。也就是我們可以在RF的腳本中增加條件判斷語句。那么我們來看看如何在RF中使用IF關鍵字。
1.單重條件判斷
寫一個普通的IF ELSE結構條件判斷語句:
運行結果如下:
顯然IF關鍵字起作用了。所有的語句都放在同一行,顯得很不美觀。我們修改一下,把ELSE語句放在第二行,同時在ELSE語句前增加一個“...”。
運行結果:
結果沒有任何問題,說明可以使用“...”將ELSE語句換行寫。
2.多重條件判斷
上面只是一個IF ELSE結構。如果是多重條件判斷,該如何寫呢?讓我們使用ELSE IF語句,示例如下:
運行結果:
顯然我們平常所熟悉的IF ELSE語句在RobotFrameWork中可以正常使用,而且使用習慣也沒有任何變化。
3.利用IF關鍵字給變量賦值
IF關鍵字還提供了另外一種使用方法。在給一個值賦值時,可以直接使用IF關鍵字。示例如下:
${result}變量后面接“Run Keyword if”關鍵字,根據${month}變量的值給${result}變量賦予不同的值。運行結果如下:
另外RobotFramework還提供了一個“set variable if”關鍵字,簡化了利用IF關鍵字給變量賦值的語句,示例如下:
4.unless關鍵字
if關鍵字,當判斷條件為“true”時,后面的語句才會執行。而robotframework又提供了一個“unless”關鍵字。與“if”關鍵字相反,只有當判斷條件為“false”時,后面的語句才會執行。示例如下:
查看運行結果:
條件為“false”,log語句被執行。robotframework幫助的示例中,unless和if關鍵字是聯合使用的。不過我個人覺得這個關鍵字有些畫蛇添足。
注:以上代碼的運行環境是robotframework2.7.5,robotframework_ride-1.0,python2.7