错误:当我最小化运行自动WebDriver代码的Internet Explorer时

时间:2016-02-16 05:27:25

标签: java selenium selenium-webdriver webdriver

我已经编写了Selenium webdriver java code来自动化测试并且工作正常。但是我有很多数据输入来测试我的网络,这需要时间。因此,当我在运行自动化时最小化IE以执行其他任务时,它会抛出错误:

  

org.openqa.selenium.ElementNotVisibleException:未显示元素

3 个答案:

答案 0 :(得分:0)

Selenium ElementNotVisibleException试图模拟"真实"用户与网页的互动。如果一个人不能点击当前未显示的按钮,Selenium也不能。

如果未显示您要与之交互的元素,则会出现

moveToElement()。当您最小化浏览器时,某些元素不再可见,即使它们位于最大化窗口中。

您可以在每次要执行任何操作时使用Criteria crit = sessionC.createCriteria(OP_DOCTOR_VISIT.class, "OPDV1"); crit.createAlias("OPDV1.OP_VISIT", "OPDV2", JoinType.LEFT_OUTER_JOIN, Restrictions.and(Restrictions.eq("OPDV2.FORM", "NEW"), Restrictions.ge("OPDV2.USER_DATETIME", fromdate), Restrictions.le("OPDV2.USER_DATETIME", todate))); crit.add(Restrictions.ge("OPDV1.USER_DATETIME", fromdate)); crit.add(Restrictions.le("OPDV1.USER_DATETIME", todate)); ProjectionList p1 = Projections.projectionList(); p1.add(Projections.alias(Projections.count("OPDV1.OP_VISIT_ID"), "TOTAL")); p1.add(Projections.count("OPDV2.FORM")); p1.add(Projections.alias(Projections.sqlGroupProjection("date(this_.USER_DATETIME) as createdDate", "createdDate", new String[]{"createdDate"}, new Type[]{StandardBasicTypes.DATE}), "DAT")); crit.setProjection(p1); 的{​​{1}}添加滚动(我不推荐它,您会大大增加错误的机会),或者找到其他硬件解决方案,如插入另一个屏幕,在另一台计算机上运行测试等。

答案 1 :(得分:0)

根据我的经验,Internet Explorer WebDriver在运行测试用例时对来自真实用户的干扰非常敏感。最好不要碰任何东西。 ; - )

试试Chrome!这更加强大,也更快。

答案 2 :(得分:0)

Selenium脚本作为模拟器运行。脚本运行时,您无法再执行其他工作。 Chrome很快,但在Chrome中运行脚本时,您无法像其他任何浏览器那样执行其他任务。如果您最小化窗口,您将获得异常“ElementNotVisible”。