热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

错误的getTitle(),timeouts()根本不起作用

我正在尝试将第一个自动化测试场景(Java,IntelliJ,Webdriver)编写为工作应用

我正在尝试将第一个自动化测试场景(Java,IntelliJ,Webdriver)编写为工作应用程序的一部分。

我收到了这样的“作业”指示:
打开浏览器和维基百科,
点击随机文章,
然后单击第一个链接,直到获得有关哲学的文章。计算重定向次数。

但是我为不正确的getTitle而苦恼,它返回了错误的值。首先,我认为这是因为重定向太快,所以我用Google搜索并尝试应用timeouts()。好吧,没有可用的等待类型正在起作用,并且由于根本没有超时,因此代码得以处理。我尝试了显式等待,以及drive.manage()。timeouts()...一直在工作。我还尝试在getTitle和getcurrentURL上构建测试,并且都返回错误的值。

System.setProperty(“ webdriver.chrome.driver”,“ ...”);
        WebDriver驱动程序=新的C​​hromeDriver();

driver.get("https://en.wikipedia.org/");
driver.manage().window().maximize();
driver.findElement(By.linkText("Random article")).click();
String expectedTitle = "Philosophy - Wikipedia";
String currentTitle = driver.getTitle();
String expectedURL = "https://en.wikipedia.org/wiki/Philosophy";
String currentURL = driver.getcurrentUrl();
System.out.println(currentURL);
WebElement searchBox;
searchBox = driver.findElement(By.id("searchInput"));
searchBox.sendKeys("Philosophy");
driver.findElement(By.id("searchButton")).click();
WebDriverWait wait = new WebDriverWait(driver,30);
wait.until(ExpectedConditions.titleIs(expectedTitle)); // this one gets ignored
System.out.println(currentTitle); // returns title of the Random article
System.out.println(currentURL); // returns URL of the Random article
if (currentURL.equalsIgnoreCase(expectedURL)){
System.out.println("Test Passed!");
} else {
System.out.println("Test Failed");
System.out.println(currentURL);

任何想法可能有什么问题以及如何解决?





推荐阅读
  • 使用 ModelAttribute 实现页面数据自动填充
    本文介绍了如何利用 Spring MVC 中的 ModelAttribute 注解,在页面跳转后自动填充表单数据。主要探讨了两种实现方法及其背后的原理。 ... [详细]
  • 本文详细介绍了跨站脚本攻击(XSS)的基本概念、工作原理,并通过实际案例演示如何构建XSS漏洞的测试环境,以及探讨了XSS攻击的不同形式和防御策略。 ... [详细]
  • 近期在研究Java IO流技术时,遇到了一个关于如何正确读取Doc文档而不出现乱码的问题。本文将详细介绍使用Apache POI库处理Doc和Docx文件的具体方法,包括必要的库引入和示例代码。 ... [详细]
  • 本文详细介绍了Oracle RMAN中的增量备份机制,重点解析了差异增量和累积增量备份的概念及其在不同Oracle版本中的实现。通过对比两种备份方式的特点,帮助读者选择合适的备份策略。 ... [详细]
  • 优雅地记录API调用时长
    本文旨在探讨如何高效且优雅地记录API接口的调用时长,通过实际案例和代码示例,帮助开发者理解并实施这一技术,提高系统的可观测性和调试效率。 ... [详细]
  • index.js全部js兼容性处理。js内引入babelpolyfill全部js兼容性处理。babelpolyfillimportbabelpolyfill;constadd ... [详细]
  • 本文介绍了进程的基本概念及其在操作系统中的重要性,探讨了进程与程序的区别,以及如何通过多进程实现并发和并行。文章还详细讲解了Python中的multiprocessing模块,包括Process类的使用方法、进程间的同步与异步调用、阻塞与非阻塞操作,并通过实例演示了进程池的应用。 ... [详细]
  • 华为云openEuler环境下的Web应用部署实践
    本文详细记录了在华为云openEuler系统上进行Web应用部署的具体步骤,包括配置yum源、安装Apache、MariaDB、PHP及其相关组件,并完成WordPress的安装与配置过程。 ... [详细]
  • 深入解析Nacos服务自动注册机制
    本文将探讨Nacos服务自动注册的具体实现方法,特别是如何通过Spring事件机制完成服务注册。通过对Nacos源码的详细分析,帮助读者理解其背后的原理。 ... [详细]
  • 利用Cookie实现用户登录状态的持久化
    本文探讨了如何使用Cookie技术在Web应用中实现用户登录状态的持久化,包括Cookie的基本概念、优势及主要操作方法,并通过一个简单的Java Web项目示例展示了具体实现过程。 ... [详细]
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • 探讨多种方法来确定Java对象的实际类型,包括使用instanceof关键字、getClass()方法等。 ... [详细]
  • selenium通过JS语法操作页面元素
    做过web测试的小伙伴们都知道,web元素现在很多是JS写的,那么既然是JS写的,可以通过JS语言去操作页面,来帮助我们操作一些selenium不能覆盖的功能。问题来了我们能否通过 ... [详细]
  • 告别jQuery:Bootstrap5即将全面脱离jQuery依赖及其他前端热点
    本文精选了2019年2月「前端大全」平台上的15篇热门文章,涵盖技术分享与资源推荐。关注前端大全,获取更多前沿信息,提升您的前端技能。 ... [详细]
  • 尽管在WPF中工作了一段时间,但在菜单控件的样式设置上遇到了一些基础问题,特别是关于如何正确配置前景色和背景色。 ... [详细]
author-avatar
鸡__腿孜然小朋友
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有