& lt; HTML>& lt; head>& lt; title>文本空与selenium Firefox webdr

本文关键字:lt selenium webdr Firefox title HTML head 文本 | 更新日期: 2023-09-27 18:15:14

我在Windows 7上使用Firefox 21和c# WebDriver 2.33。我很困惑为什么下面的测试失败了(我必须检查我的配置是否正确设置)。这在其他浏览器中通过。

[Test]
public void FirefoxDriverWorks()
{
    var firefoxDriver = new FirefoxDriver();
    TestGoogleStillExists(firefoxDriver);
    firefoxDriver.Quit();
}
public void TestGoogleStillExists(IWebDriver webDriver)
{
    webDriver.Navigate().GoToUrl("http://www.google.com");
    var title = webDriver.FindElement(By.CssSelector("head title"));
    Assert.That(title.Text, Is.EqualTo("Google"));
}

& lt; HTML>& lt; head>& lt; title>文本空与selenium Firefox webdr

Selenium WebDriver的text函数将只返回用户在页面本身可见的文本。从技术上讲,标题文本在页面上是不可见的(它显示在浏览器中chrome的标题部分)。

相反,Selenium WebDriver有一个方法可以返回你可以使用的页面标题:

driver.Title;

所以你的代码变成了:

public void TestGoogleStillExists(IWebDriver webDriver)
{
    webDriver.Navigate().GoToUrl("http://www.google.com");
    var title = webDriver.Title;
    Assert.That(title, Is.EqualTo("Google"));
}