2016-08-07 12 views
5

enter image description hereセレンのHTML5入力フィールドのエラーメッセージからテキストを取得するにはどうすればよいですか?

  1. は、電子メールのフィールドに無効なデータを与える上では、HTML 5の警告メッセージを要求します。
  2. firebugはこのエラーメッセージを検査することができません - (電子メールアドレスを入力してください)2つの場合 a。火かき棒で調べているうちに消えてしまっている。
    b。エラーメッセージの一番上を右クリックして、DOM構造内の要素を検査しないでください。

答えて

8

Selenium APIは必須フィールドを直接サポートしていません。

String message = driver.findElement(By.name("email")).getAttribute("validationMessage"); 
:それは財産だにもかかわらず、それは validationMessageを取得するために getAttributeを使用することも可能だと

JavascriptExecutor js = (JavascriptExecutor)driver; 

WebElement field = driver.findElement(By.name("email")); 
Boolean is_valid = (Boolean)js.executeScript("return arguments[0].checkValidity();", field); 
String message = (String)js.executeScript("return arguments[0].validationMessage;", field); 

注:ただし、簡単に状態やJavaScript(Javaの)の作品とメッセージを取得することができます

+0

おかげ@Florent、その作業罰金 –

0

このようにすべてのhtml5フィールドの検証が行われます。

String errorMessage = driver.findElement(By.id( "email"))。getAttribute( "validationMessage"); Pythonで

関連する問題