2017-02-24 30 views
0

私はforループを持っていて、その内部にIfステートメントがあります。私はif文を確実に実行できません。ログには、キーワードなし= と表示されます。何が問題なのでしょうか?Robotframework IF

:FOR ${Line} IN @{Lines} 
    \ Run keyword If ${Line_Count} == 1 
    \ ... ${File}= BuiltIn.Catenate SEPARATOR=\n ${File} ${Line} 
+0

(http://robotframework.org/robotframework/latest/ [場合は変数セット]ライブラリ/ BuiltIn.html#Set%20Variable%20If) –

答えて

1
:FOR ${Line} IN @{Lines} 
\ ${File}= Run keyword If '${Line_Count}' == '1' Catenate SEPARATOR=\n ${File} ${Line} ELSE Set Variable ${File} 

この方法を試してみてください! - もし$ {行数} = -1のITを設定するには、no ELSEの分岐がありませんよう、$ {ファイル}は、無効になります値。したがって、それを追加し、元の値を戻すことで、その場合は解決されます。あなたが使用して調査したいかもしれません

(あなたは(組み込みのrun_keyword_ifにその動作を確認することができます)と_split_elif_or_else_branch()のソース)

1

説明

:FOR ${Line} IN @{Lines} 
    \ ${File}= Run keyword If '${Line_Count}' == '1' BuiltIn.Catenate SEPARATOR=\n ${File} ${Line} 
+0

戻り値= None、なぜですか? –

+0

FORループの前の変数 '$ {File}'の値は何ですか? – Rakesh

+0

ファイルには文字列が含まれ、それらを束ねてファイルに保存します。最初の文字列の前にセパレータを変更したいのですが、空の行があるので問題があります。 –

関連する問題