2016年10月22日星期六

硒 测试检查网页中的链接

测试网页内的所有链接正常工作或不是最重要的测试场景。我们可以使用Selenium非常轻松地测试这种情况。我们知道链接将在里面 HTML标记 <a> 我们可以使用.gname(“a”)定位器并在Java中使用迭代器来使过程简单。

这个简单的例子将帮助您执行各种类型的测试 -

1.使用Selenium测试网页上的断开链接。
2.单击链接或单击所有链接 网页验证链接正在正常工作。
3.计算网页上的链接数。
4.获取网页上的链接列表。
5.找出网页上的非工作链接列表。

例子 -

考虑我们想在主页中测试所有链接 www.qaautomated.com.

测试用例 -

签出以下测试用例,并阅读评论部分中提到的描述以了解流程。

package selenium.tests;

import java.util.List;



import java.util.concurrent.TimeUnit;
import org.openqa.selenium.*;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;

public class TestAllLinks { 
 
 public static void 主要的(String[] args) {
        String baseUrl = "http://www.yubo666.com/";
        System.setProperty("webdriver.chrome.driver", 
         "C:\\Users\\chromedriver_win32\\chromedriver.exe");
        WebDriver driver=new ChromeDriver();
        String notWorkingUrlTitle = "Under Construction: QAAutomated";
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

        driver.get(baseUrl);
        List<WebElement> linkElements = driver.findElements(By.tagName("a"));
        String[] linkTexts = new String[linkElements.size()];
        int i = 0;

        //extract the link texts of each link element
        for (WebElement elements : linkElements) {
            linkTexts[i] = elements.getText();
            i++;
        }

        //test each link
        for (String t : linkTexts) {
            driver.findElement(By.linkText(t)).click();
            if (driver.getTitle().equals(notWorkingUrlTitle )) {
                System.out.println("\"" + t + "\""
                        + " is not working.");
            } else {
                System.out.println("\"" + t + "\""
                        + " is working.");
            }
            driver.navigate().back();
        }
        driver.quit();
    }
}

输出 -

“家”正常工作
“关于我”正常工作
“联系我们”不起作用....

如果您发现此用品,请使用下面给出的共享选项与您的朋友分享帖子。您可以在评论部分中编写您的反馈和建议。

6评论:

  1. 当执行上面的代码时,我在线程中遇到了这种erorre-expression"main"org.openqa.selenium.webdriverexception:Element在Point(104.5,30)时不可点击。其他元素将收到点击:
    命令持续时间或超时:87毫秒

    回复 删除
    答案
    1. 我很高兴我看到这篇文章。这是我们的信息丰富的博客,我们需要这种类型的博客感谢分享此博客,并继续发布此类教学博客,并期待您的未来帖子。 Python项目为学生 数据分析是对解剖原油数据的研究,以便对该数据做出决定。数据分析的进步和程序通常用于商业企业,以促使协会逐步定居 钦奈的Python培训 受过教育的业务选择。在目前的全球商业中心,它是't足以组装数据并做数学;您应该意识到如何将该数据应用于诸如影响行为的真正情况。在该计划中,您最初将获得专业技能的熟练程度,包括最常见于数据分析编程和使用的r和python方言; 钦奈的Python培训 在致命的致命中心,鉴于行业段范围的真正业务问题,例如,幸福,促进和账户。 钦奈的项目中心

      删除
  2. 作为一种动态语言,其设计哲学围绕可读性和简洁,Python是一种作为脚本语言的流行选择。 数据科学课程在印度

    回复 删除
  3. 开源程序功能强大,但可能难以使用。 命令行接口,最小文档和无内置帮助可以挑战用于GUI接口的用户和商业软件中的广泛帮助文件。 学习烧瓶的最佳课程

    回复 删除