【问题标题】:selenium webdriver test is stopped by browser idle warning windowselenium webdriver 测试被浏览器空闲警告窗口停止
【发布时间】:2014-11-04 19:11:13
【问题描述】:

我试图在我的项目中为应用程序 (https://*************.com) 自动化登录模块。本站的特点之一是,如果本站在浏览器中打开并闲置超过 10 分钟,然后尝试登录 - 将显示错误窗口:

浏览器闲置超过 10 分钟。出于安全考虑,请关闭当前窗口并尝试在新窗口中登录。

但是当我尝试自动化应用程序时,只要我提交登录表单(即输入用户名和密码),就会显示上面的错误窗口。在同一个浏览器中,如果我手动输入详细信息并尝试登录,它工作得很好。

我在 Firefox 中使用 Java Junit 实现自动化,但我在我正在执行此操作的系统上没有管理员权限。

我也在 Internet Explorer 中尝试过。我一开始可以覆盖安全认证,但在页面加载之前,会显示用户帐户控制窗口面板以输入管理员用户名和密码(我不知道)。如果我单击“否”(在用户帐户控制中)硒测试用例将继续。但是在提交时会显示不同的错误,说明“Java 小程序完全没有加载。等待一段时间”。

所以,我卡在登录没有任何进展。请帮助我了解登录时可能导致该错误的原因。

以下是用于自动化的代码:

  @Before
  public void Enter() {
      driver.get("https://************.com");
  }

   @Test
  public void EnterDetail() {
    driver.findElement(By.id("username").sendKeys("AAAAAAA");
    driver.findElement(By.id("password").sendKeys("BBBBBBB");
    driver.findElement(By.id("login").click();
  }

  @After
  public void Close() {
    driver.quit();
  }

【问题讨论】:

  • 您的代码看起来很简单。如果无法访问您的网站,我认为任何人都可以帮助您。请与您的开发者联系,看看他们是否可以提出建议。
  • 您好 SiKing,该应用程序的代码已有 8 年多的历史了,每次发布都会进行一些改进。这个网站是由不同的公司开发的,所以我不知道该联系谁。我会尝试与当前的开发人员一起获取一些信息。
  • 还有一件事,在您深入研究之前。您提到了有关 java applet 的错误。如果您的测试需要与小程序交互,Selenium 不是一个好的选择。
  • 哦好的SiKing。谢谢(你的)信息。我正在联系开发人员以寻求解决方案。

标签: java firefox browser junit selenium-webdriver


【解决方案1】:

您的代码似乎有问题。你缺少关闭的paren。

driver.findElement(By.id("your id").sendKeys("aaaaa"); 

错了。你需要在 .sendKeys(); 之前关闭你的paren;见下文

driver.findElement(By.id("my I'd")).sendKeys("Aaaaaa");

【讨论】:

  • 嗨 bacar,抱歉代码中的拼写错误。即使添加了paren,同样的问题仍然存在。
  • 如果您检查 dom 是您尝试在 iframe 中与之交互的元素吗?如果他们是你需要切换到那个框架。 driver.switchTo().frame("帧id"); // 然后在上面做你的工作 // 然后切换回来。 driver.switchTo().defaultContent();
  • 我检查过了,他们没有使用 iframe 登录页面。
  • html 是什么样的?
猜你喜欢
  • 2013-12-11
  • 2020-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-31
  • 2011-08-07
  • 1970-01-01
相关资源
最近更新 更多