java - Selenium Webdriver startWith() 方法在 Java 中不起作用

标签 java selenium

请有人告诉我为什么我的 startsWith() 方法是红色的。我对 Selenium 和 Java 还很陌生,任何帮助将不胜感激。 我使用的是 IntelliJ IDEA 社区版、Java 和 Windows 7 平台。 下面是代码。非常感谢。

public class MyFirstTest {
    @Test
    public void startWebDriver(){
        WebDriver driver = new FirefoxDriver();
        driver.navigate().to("http://www.bbc.co.uk");
        Assert.assertTrue("bbc", driver.getTitle().startsWith("bbc"));
        driver.close();
        driver.quit();
    }
} 

最佳答案

请参阅TestNG assertTrue重载。

根据文档并查看您要完成的测试,我相信以下内容是这种情况下的最佳重载。

public static void assertTrue(boolean condition,
                              java.lang.String message)

话虽如此,您的测试被设计为失败,因为 BBC 的标题以 BBC(全部大写)开头,并且您没有忽略大小写。为了证明我做了以下测试

@Test
public void startWebDriver() {
    driver.navigate().to("http://www.bbc.co.uk");

    String title = driver.getTitle();
    System.out.print(title);
    Assert.assertTrue(driver.getTitle().startsWith("bbc"), "Wrong title found: " + title);

    driver.close();
    driver.quit();
}

Output

BBC - Homepagejava.lang.AssertionError: Wrong title found: BBC - Homepage Expected :true Actual :false

如果我将 startsWith("bbc") 更改为 startsWith("BBC") 它就会通过

关于java - Selenium Webdriver startWith() 方法在 Java 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29719611/

相关文章:

java - 需要将一个对象转换为无限通配符....但在我的情况下如何?

java - 将 JFrame 打印到 Java 页面

java - 列表元素的两个条件的 boolean 表达式

java - Selenium 自动接受警报

python - 如何使用python在selenium中正确使用By类

python - 等到使用 Selenium WebDriver for python 完成任务

javax.persistence.PersistenceException : org. hibernate .MappingException : Unknown entity: it. *.PoolStateResult |在 DTO(而非实体)中映射结果

java - 我无法将 restful 连接到 mysql 数据库

java - Google Chrome 使用 Selenium 进行节流

python - 如何检查用户是否点击了 Selenium 中的按钮?