首页 > 解决方案 > 有没有办法在 Selenium(java) 的 chrome 浏览器中输入非 URL 值(没有协议 http/https 的 URL)到地址栏?

问题描述

我有一个验证要在需要在地址栏中输入一些文本的地方执行,这会将我重定向到某个页面。然后,我需要捕获当前 URL 并使用预期的 URL 值对其进行验证。

到目前为止我尝试过的方法

    Robot rb = new Robot();
    rb.keyPress(KeyEvent.VK_CONTROL);
    rb.keyPress(KeyEvent.VK_L);
Action action = new Actions (driver);
actions.sendKeys("mytext");

标签: javaseleniumselenium-webdriver

解决方案


我看不出您需要验证从字面上将文本输入地址栏中的原因。我认为您可能误解了要求。地址栏属于浏览器,而不是您的应用程序,所以我不认为这是您需要测试的东西。

您应该只使用 driver.get() 并通过在新页面独有的东西上使用 driver.findElement() 来验证页面是否已加载,然后检查该元素是否已显示/启用。如果您真的想获取 URL,那么您可以执行 driver.getCurrentURL()。


推荐阅读