Robot Frameworkに要素が特定のクラスを持つようにするためのキーワードがありますか?要素が特定の値を持つ特定の属性を持つ場合は代わりロボットフレームワーク、クラスの確認方法
Element should has class element className
のようなものは、私がチェックすることができます。要素が複数のクラスを含む可能性があるため、Formerはより適しています。
Robot Frameworkに要素が特定のクラスを持つようにするためのキーワードがありますか?要素が特定の値を持つ特定の属性を持つ場合は代わりロボットフレームワーク、クラスの確認方法
Element should has class element className
のようなものは、私がチェックすることができます。要素が複数のクラスを含む可能性があるため、Formerはより適しています。
あなたは、XPathセレクタを経由して新しいキーワードを作成することができます。
Element should have class
[Arguments] ${element} ${className}
Wait until page contains element ${element}[contains(@class, '${className}')]
またはCSSセレクタを経由して:要素が存在する場合
Element should have class
[Arguments] ${element} ${className}
Wait until page contains element ${element}.${className}
Wait until page contains element
がチェックするためにお好みの任意のキーワードで置き換えることができ、 Element should be visible
のように表示されます。
(受け入れ答えのCSS 1はかなり良いですが)ここでは、セレクタ戦略のあらゆる種類のために働いて、代替ソリューションです:
Element should have class
[Arguments] ${locator} ${target value}
${class}= Get Element Attribute ${locator}@class
Should Contain ${class} ${target value}
それは、他の属性に変更することができます - ちょうどGet Element Attribute
で@class
を代用それと(あるいは、それをオプションの引数にして)。
'| FAIL | id loginButtonとclass button-blueの要素があっても、要素 'loginButton [contains(@class、' button-blue ')]は5秒後に表示されませんでした。最初の例のclassNameは、変数を評価するために中括弧が必要であるとも考えました。 –
@TuomasToivonen:中括弧を忘れてしまいました。申し訳ありません。それは今のところうまくいくはずです。 'loginButton'は有効なXPathでもCSSセレクタでもないので、'#loginButton'か '// * [@ id = 'loginButton']'を使ってください。 – Renzeee