2016-11-28 12 views
0

Firefoxが必須フィールドであるテキストボックス(ポップアップ内)にテキストを入力する状況が発生しました。ボタンをクリックすると、警告フラグが表示されます。 HTMLをチェックすると、テキストボックスには値が表示されず、HTML表示フィールドにはtitleというフィールドが必要です。Firefoxがテキストボックスに入力したテキストを認識しない

JavaScriptを使用してテキストを入力しようとしましたが、役に立たなかった。

コードスニペット:テキストボックスのため

public static void UserName(string text) 
{ 
    try 
    { 
     IJavaScriptExecutor js = (IJavaScriptExecutor)Drivers._driverInstance; 
     IWebElement element = Drivers._driverInstance.FindElement(By.Id("newName")); 
     //js.ExecuteScript("document.getElementById('newName').setAttribute('value', '" + text + "')"); 
     js.ExecuteScript("arguments[0].click();", element); 
     js.ExecuteScript("document.getElementById('newName').value='" + text + "';"); 
     //Drivers._driverInstance.FindElement(By.Name("newName")).Clear(); 
     //Drivers._driverInstance.FindElement(By.Name("newName")).SendKeys(text); 
     } 
     catch(Exception e) 
     { 
      throw new Exception("Couldn't send text to username textbox " + e); 
     } 
    } 

HTML:

<div class="field-container"> 
<label>Username</label> 
<input id="newName" class="input-validation-error" name="newName" data-bind="value: Name" title="This field is required." data-orig-title="This field is required." type="text"/> 
<span class="validationMessage" style="">This field is required.</span> 

Image for reference

誰かがそれで私を助けることができます。

バージョン: Firefoxの-50.0 セレン-3.0.0

感謝。次のように

答えて

0

は試してみてください。

driver.findElement(By.Id("newName")).sendKeys(text); 
+0

ここで間違った 'C# '構文は、' FindElement'と 'By.Id'です。 –

+0

@PseudoSudo、通知してくれてありがとうございます。 Javaの構文に慣れてしまった。 –

+0

それは動作しませんでした。テキストボックスにテキストが入力されましたが、ボタンをクリックすると警告メッセージが表示されます。画像を参照すると、HTMLが表示されます。私が投稿したコードでは、私はすでにsendkeysを使っていました。私は '名前'と 'Id'でも試してみました。ここの問題は、テキストがsendKeysを使用して入力されても、値を格納せずに空であると思うことです。 – Sudeepthi

0

はこれを試してみてください:

var username = "User Name Here"; 
driver.FindElement(By.Id("newName")).sendKeys(username); 
+0

それは働かなかった。私のコメントを参照してください。セレニウムはテキストを入力しますが、ボタンをクリックすると、別のページに移動する必要があります。代わりに、必須のフィールドエラーフラグが表示されます。 – Sudeepthi

0
私は今のChromeDriverに切り替わります

。私はwebdriver 3.0がFirefox v50でうまく動作しているとは思わない。 firefoxを使用する必要がある場合は、バージョンをドロップダウンしてwebdriverの以前のバージョンに移動します。

+0

私は問題を抱えているテストケースが2つしかありません(いくつかの回避策を使って解決できる他の問題があります)。私はすでにIEとChromeで動作しています。 Operaは最新バージョンでの作業をやめました。私はOperaで動作しなくてはなりませんでした。私もFFで止めることはできません。最新のセレンと互換性のあるFFのバージョンを教えてください – Sudeepthi

関連する問題