1

自動テストにセレンを使用しています。テストがSeleniumIDEで実行されると正常に実行され、.Net WebドライバーとしてエクスポートしてNUnitで実行すると、NoSuchElementsExceptionがスローされます。この例外の原因は誰か教えてください。

SeleniumTests.UserNotLogged.TheUserNotLoggedTest:

OpenQA.Selenium.NoSuchElementException:要素が見つかりません:{"method": "link text"、 "selector": ""}//NUnitからの例外

[Test]
    public void TheUserNotLoggedTest()
    {
        driver.Navigate().GoToUrl(baseURL + "Index.aspx");
        driver.FindElement(By.Id("wrapper")).Click();
        driver.FindElement(By.LinkText("Home")).Click();
        driver.FindElement(By.LinkText("News")).Click(); //Exception thrown here
        driver.FindElement(By.LinkText("Events")).Click();
        driver.FindElement(By.LinkText("Contact Us")).Click();
        driver.FindElement(By.LinkText("Register")).Click();
    }

ご協力いただきありがとうございます

4

1 に答える 1

3

このような場合、一般的にタイミングの問題です。これらはナビゲーションリンクだと思いますか?その場合、ページの読み込みが完了するかなり前に、Seleniumがニュースリンクを見つけようとしている可能性があります。WebDriverWaitを追加してみてください。

http://seleniumhq.org/docs/04_webdriver_advanced.html

それでも解決しない場合は、cssセレクターやXPathなど、リンクを見つける別の方法に移動します。別の方法を使用してリンクを見つけることができることを確認するだけです(最適な方法ではありませんが)。

于 2012-05-10T19:10:18.633 に答える