入力フィールドが空の場合、Selenium を使用してエラー メッセージの表示をテストしています。入力要素へのラベルとして設計されたエラー メッセージ。メッセージが非表示の場合、属性「display: none;」を持ちます。.
そのメッセージをテキストで見つけてisDisplayed()メソッドを呼び出すと、メッセージが表示されていない場合でも、常に true が返されます。私は Java でテストを書いているので、isVisible()メッセージはありません。
メソッドgetAttribute("style")を試しましたが、空の文字列が返されます。メソッドgetCssValue("display")は、ページ上に値"none"がある場合でも"block"を返します。
click()メソッドを呼び出した後にElementNotVisibleExceptionが発生すると予想していましたが、何も起こりませんでした。
何か案は?回避策?
HTML の例:
<form id="from id" style="display: block;">
<input id="input" name="input">
<label for="input" generated="true" style="display: none;">Error text here.</label>
</from>