RobotFramework Keyword: Is An Array Variable - 如何確認變數內容是否為陣列變數?

在使用執行Keyword如Run Keyword、Repeat Keyword、Wait Until Keyword Succeeds的時候,那些被執行Keyword的回傳值只會是一個純量變數(scala variables)。實際上它也可能是個陣列變數(list variables)! 我們該如何去判斷它到底是純量變數還是陣列變數呢?

Download This Keyword

首先我做了一個實驗,透過Convert To List去比較以下兩者差異: 由陣列變數轉變的純量變數內容看起來是陣列變數的純量變數


這個實驗的結論是: Convert To List可以辨別出兩者的差異! 原本為陣列變數的純量變數,經過轉換可以回復到原本的陣列變數,但假的就不行。

在Is An Array Variable這關鍵字的實做,只要透過Convert To List並去比較index=0的值,就可以知道是不是真的陣列變數。此外,如果傳入內容為${EMPTY}或${None}的變數,也會當成非陣列變數。


另外我還撰寫了這個關鍵字的測試案例,確認傳入由陣列變數轉變的純量變數內容看起來是陣列變數的純量變數${EMPTY}${None}時,有達到我的期望。

友藏內心獨白: 沒想到要寫一個測試案例,還要寫測試這個測試案例的測試案例。無窮迴圈嗎?