2

私はセレンウェブドライバーをやっています。私はいくつかの問題を抱えています。[参照]ボタンをクリックすると、ポップアップが表示されるはずです。そのため、アプリケーションはクリックせず、ブラウザを開きません。

try{

    WebElement fileInput = driver.findElement(By.xpath("html/body/form[1]/p[2]/input"));

    fileInput.sendKeys("C:\\Documents and Settings\\mahesh\\Desktop\\button then display msg.png");

    System.out.println("valid");

    }

catch(NoSuchElementException ex) {

    System.err.println("invalid");

    }

1 つの問題が発生しました。

org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"xpath","selector":"html/body/form[1]/p[2]/input"}
Command duration or timeout: 30.06 seconds

このタイプのエラーが来ます。

ですから、この問題を克服するために私を導いてください。

ありがとう mahesh.k

4

3 に答える 3

0

上記のエラーから、Webページで要素を見つけることができないと思います...書かれたXpath式を相互検証してください...。

さらに、キーを送信する前に(ファイルパス)...ポップアップを開くボタンをクリックしてください...次にキーを送信してください...

これはhttp://www.freeimagehosting.net/upload.phpで動作しているC#コードです

        IWebDriver driver = new InternetExplorerDriver();
        driver.Navigate().GoToUrl("http://www.freeimagehosting.net/upload.php");

        driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10));
        IWebElement returnedValue = driver.FindElement(By.Name("attached"));
        returnedValue.Click();
        returnedValue.SendKeys("C:\\file.png");

上記のコード...ウェブページで[参照]ボタンを探し、[クリック]操作を実行してポップアップを開き、[画像ファイル]のパスを送信します。

私はこれが役立つことを願っています...すべての最高:)

于 2012-11-23T12:18:24.247 に答える
0

ええ、それは要素を見つけていません。最初に、selenium IDE を使用して、selenium webdriver が検出する可能性が高い要素を確認できます。Firefox ブラウザー用の Selenium IDE プラグインは、こちらからダウンロードしてください。確認すべきもう 1 つの点は、指定した xpath です。「//」または「xpath =」で始まらない限り、Seleniumはxpathを認識しないため、要素検索を次のように変更します

WebElement fileInput = driver.findElement(By.xpath("//html/body/form[1]/p[2]/input"));

それが機能しない場合は、Selenium IDE を使用して要素の xpath を確認してから、Webdriver で要素を検索してください。

于 2012-12-18T20:06:33.890 に答える