2016-07-15 6 views
0

学習のため、私はExpedia.comの検索プロセスを自動化しようとしています 私のコードは "bundle deals"を選択し、 "flight + Hotel + Car"が値の入力を開始します。Selenium WebDriverを使用してJSに入力された値をクリアする方法はありますか?

問題は、出発日と到着日を選択してmm/dd/yyyy形式で日付を挿入することで自動化しようとしていることです。返される日付に日付を入力しようとするまで、すべてが完全になります。日付を入力すると、JSが日付を元に戻し、テストが失敗します。

public void selectDepartingDate(String date) 
{ 
    WebElement dte= driver.findElement(departDate); 
    dte.sendKeys(date); 


} 

public void selectReturningDate(String date) 
{ 
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 
    WebElement dte= driver.findElement(arrivalDate); 

    dte.sendKeys(date); 


} 

どうすればこの問題を解決できますか?

答えて

2

あなたがのSendKeys前に、それをクリックしてクリアする必要がありそうです:

public void selectReturningDate(String date) 
{ 
    WebElement dte= driver.findElement(arrivalDate); 
    det.click(); 
    dte.clear(); 
    dte.sendKeys(date); 
} 
+0

あなたはそれを試してみましたか?私が試したときに、追加したい日付を追加しましたが、スクリプトが動いたときに、日付はjsからの日付に戻りました。したがって、テストはまだ失敗します。 – gasmsk

+0

@gasmskはい、私は試してみましたが、うまくいきます。あなたは暗黙の待ちを削除して、もう一度やり直せますか? – Buaban

+0

私はそうしましたが、スクリプトが前方に移動したときにjsの日付に戻ります。私は何をすべきか? – gasmsk

関連する問題