java - 如何使用 selenium 和 junit 将单个测试用例应用于网站的所有页面?

标签 java selenium selenium-webdriver junit junit4

我手头有一项任务是使用 selenium 测试网站。 我必须检查网站所有页面上的所有损坏的链接和图像。 我正在使用selenium 和 junit。 我编写了两个测试用例来测试我网站主页上损坏的链接和图像,并且测试用例运行良好。 现在我想将这些测试用例应用到网站的所有页面,但我缺乏想法,因为我对 selenium 和 junit 完全陌生。 据我所知,我无法控制 junit 测试的调用,否则我正在考虑编写一个函数,在其中迭代浏览器中的所有网页并调用每个网页的测试,但我相信这是行不通的。欢迎任何想法,但我无法改变我的工具,我需要适用于 java 中的 selenium 的建议。

最佳答案

您可以像这样轻松地循环测试:

public class SeleniumLoop {
    // make your list of urls, can be static for example:

    private static List<String> urls;

    static {
        urls = new ArrayList<>();
        urls.add("http://www.test/1");
        urls.add("http://www.test/2");
        urls.add("http://www.test/3");
    }

    // Java 8 style
    @Test
    public void testAllUrls() {
        urls.stream().forEach(url -> {
            yourTest(url);
        });
    }

    private void yourTest(String url) {
        // your selenium webbdriver
        driver.get(url);
        // your test here
    }
}

请注意,这只是一个通用的 - 未经测试的示例。它只是表明您可以轻松循环 Junit 测试。

关于java - 如何使用 selenium 和 junit 将单个测试用例应用于网站的所有页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35220100/

相关文章:

java - Ehcache 和 Java

javascript - 在 iOS native 弹出窗口中单击 "Allow"

javascript - 如何使用 Selenium Web 驱动程序/Selenium IDE 自动化 jQueryUI selectmenu

java - 无法使用 Webdriver 和 Java 获取 xpathcount

java - 为什么在设置 PhantomJS 驱动程序时出现错误?

java - 如何决定何时在 selenium webdriver 中使用 try catch block

java - indexOf() 将找不到自定义对象类型

java - 在Eclipse中的Hadoop Mapreduce中将命令行选项传递给reducer

java - MVC Web 应用程序如何在 Java 中工作?

java - Opera WebDriver 不会启动 Opera (Selenium 3.1.0)