1

私はJavaでWebdriverを使用しています。Javaを使用してテキストフィールドに数値を入力したい。私は次のコードを使用しています:

driver.findElement(By.id("igtxtctl00_MasterPlaceHolder_WTxtZip")).sendKeys("25025");

ただし、値を完全に入力すると、入力した値は自動的に消去されます。値が保存されたら、(スクリプトを使用して)タブをクリックする必要があります。これにより、バックエンドプロセスの実行後に、Cityフィールドに自動的に入力されます。

以下のコードを使用して、SeleniumRCを使用して同じことを達成しました。

selenium.typeKeys("igtxtctl00_MasterPlaceHolder_WTxtZip", "25025");
Thread.sleep(x);
selenium.keyPress("igtxtctl00_MasterPlaceHolder_WTxtZip", "9");
4

2 に答える 2

1

このようなことを試してみてください

driver.findElement(By.id("igtxtctl00_MasterPlaceHolder_WTxtZip")).sendKeys("25025");

郵便番号を入力した後、ページ内の他の場所をクリックしてみてください

driver.findElement(By.id("igtxtctl00_MasterPlaceHolder_WTxtZip")).sendKeys(Keys.TAB);

また

Actionsクラスで試してください。

new Actions(driver).sendKeys(driver.findElement(By.id("igtxtctl00_MasterPlaceHolder_WTxtZip")), "").perform();
于 2012-12-11T14:36:25.910 に答える
1

コードを調べると、そのzip要素に基づくクライアント側のロジックがあることがわかります。都市を決定するためにサーバーへのポストバックがあります。ポストバックのトリガーはタブキーです。

つまり、ページを効果的にテストする場合は、タブキーを送信する必要があります。

于 2012-12-11T16:42:58.657 に答える