许多 web 应用程序都包含隐藏的页面元素,直到用户鼠标移到页面的某个部分上时,才会使其他页面元素可见。一个常见的示例便是 web 应用程序顶部菜单栏的菜单。假定你将鼠标移到菜单栏上,该菜单栏将展开菜单项,然后单击之前隐藏菜单项中的任何一个。在录制过程中,SOAtest 将不会记录鼠标移动,但是会记录在以前隐藏菜单项上发生的点击。在回放过程中,由于没有记录鼠标的移动,因此不会回放,在元素仍然隐藏时,将出现它与隐藏菜单元素的交互。

根据页面的构造方式,你将得到一个错误消息,即菜单元素不存在或不可见。Parasoft 的本地回放引擎将回放隐藏元素的操作,只要该隐藏元素在当前页面存在;而 Selenium WebDriver 回放引擎则不会。没有一个引擎会回放在当前页面不存在的元素)。 

当你得到像这样的错误信息时,这有两种方法可以处理它。 

  • 在录制过程中,不是简单地将鼠标移到显示菜单项的菜单栏上,而是在单击菜单项之前单击菜单栏本身。这将使得点击操作记录到菜单栏上,这将使得回放过程中展开隐藏的菜单项。
  • 将点击操作添加到已记录的场景中,该场景将点击菜单栏展开隐藏的菜单项。
  • No labels