0

Selenium WebDriver(Internet Explorer)を学習しようとしています。このプロセスでは、電話と個別のプランを選択するためにsprint.comの自動化を開始しました。以下は私が従うステップです:

  1. sprint.comを開く
  2. [閲覧するだけ]->[個人]を選択します
  3. [ショップ]->[電話]に移動します
  4. Zip = 22042と入力し、ショッピングを開始します
  5. 任意の電話をクリックします
  6. カートに追加をクリックします
  7. 個別プランをクリック
  8. Unlimited Planを選択します(ここでは失敗します)

以下は、私が試したコードスニペットです。

driver.findElement(By.xpath("//input[@value=\"pln2860004prd\"]")).click();

同じxpathを使用して属性を読み取ることができます。

System.out.println("NAME: " + driver.findElement(By.xpath("//input[@value=\"pln2860004prd\"]")).getAttribute("name"));

助けてください!

ランジャン

4

3 に答える 3

0

私は asgoth に同意しません...ウィンドウ ハンドルなどの処理方法を理解すれば、IE の操作は問題ないと思います。

これを試してください(「ドライバー」がテストスイートの静的メンバーであると仮定します):

public static void mouseClickByLocator( String cssLocator ) {    
     String locator = cssLocator;    
     WebElement el = driver.findElement( By.cssSelector( locator ) );    
     Actions builder = new Actions(driver);    
     builder.moveToElement( el ).click( el );    
     builder.perform();    
}
于 2013-01-04T20:15:38.073 に答える
0

Internet Explorer は、テストするには厄介なブラウザーです。

いくつかの原因が考えられます。しかし、最も可能性が高いのは、要素にフォーカスがないためです。

クリックする前にフォーカスを設定します。

if (element instanceof Locatable) {
    Locatable remoteElement = (Locatable) inputElement;          
    remoteElement.getLocationOnScreenOnceScrolledIntoView();
}
于 2013-01-04T19:55:14.457 に答える
0

これを試して?

"//input[@name='selectMinutes' and @value='pln2860004prd']"
于 2013-01-04T22:12:46.713 に答える