2017-12-14 3 views
0

以下のコードをロボットフレームワークに記述しました。その$ {引数}は$ {}マイリスト引数がRobot Frameworkの作成リストにあるかどうかを確認する方法

Create Article 

    [Arguments] ${args} 
    ${MyList}= Create List 'Federal News' 'EY News' 
    Run Keyword If ${args} in ${MyList} Run keywords Click Element ${tab1_Xpath} AND Wait Until Page Contains Federal News 

であると私は別のファイルから記事の$ {引数}を作成して呼び出しています。かどうかを確認する方法私は上記のスクリプトを使用している場合、私は任意の助けが

+1

内の項目をチェックしてください! –

+0

あなたは引用符を含めて渡しているデータはありますか?言い換えれば、 '$ {args}'は 'Federal News'や' Federal News'のようなものですか? –

答えて

2

有効な式でなければならない場合は、キーワードを実行するには、最初の引数をいただければ幸いです

エラーを取得しています。 "in"の周りに複数のスペースがあるので、ロボットは${args}が式だと思っており、in${MyList}は追加の引数です。これを修正するには、 "in"の両側に1つのスペースが必要です。

2番目の問題は、引用符を含む文字列のリストを作成していることです。私はあなたが実際にそれを望んでいないと推測しています。リストに文字列Federal Newsを含める場合は、引用符を省略する必要があります。

最後に、変数置換後の有効なPython構文である必要があります。文字列を比較するので、引数を引用するか、特別な変数構文$argsを使用する必要があります。変数自体に引用符が含まれているかどうかを心配する必要はないので、特殊な構文を使用するのが最適な解決策です。

最後に、リストではなくスカラーなので、${args}ではなく${arg}を使用することをおすすめします。

Create article Federal News 
+0

ありがとうブライアン。それは魅力を好きに働いている – Uday

0

ブライアンがあります。それと

Create article 
    [Arguments] ${arg} 
    ${MyList}= Create List Federal News EY News 
    Run Keyword If $arg in $MyList Run keywords 
    ... Click Element ${tab1_Xpath} 
    ... AND Wait Until Page Contains Federal News 

は、次のようなキーワードを実行することができます:

は、実際には引用符が含まれていない、あなたのデータを仮定すると、ここで私はそれを行うだろうかです完全な答えは、コレクションライブラリの以下のキーワードを使用して同じタスクを実行するための回避策です。

1)キーワードとリターンステータスを実行する - keyw ORD成功または失敗

2)リスト値を含める必要があります - あなたが取得しているエラーは何リスト

Create article 
    [Arguments] ${arg} 
    ${MyList}= Create List Federal News EY News 

    ${status}= Run Keyword And Return Status List Should Contain Value ${mylist} ${arg} 
    Run Keyword If ${status}==True Run keywords 
    ... Click Element ${tab1_Xpath} 
    ... AND Wait Until Page Contains Federal News 
関連する問題