热门标签 | 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);

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





推荐阅读
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社区 版权所有