硒酱实验室悬停图像显示正确的部分

时间:2014-04-11 16:01:23

标签: selenium-webdriver saucelabs selenium-builder

我正在使用saucelabs提供的工具来创建用户测试。

我有一个包含图片的div,当你将鼠标悬停在它上面时,会出现一个显示放大显示位置的框,然后该区域会显示在右边

测试的目的是验证用户何时悬停在我的主图像上,显示第二个div显示该图像的放大版本

到目前为止,我已经创建了一个测试,但是当我可以看到图像上方的放大区域时,右侧没有显示图像。所以在我看来那是失败的

如果没有显示图像,为什么测试通过?

NB

我的最后一个命令是waitForVisible(传递)并阅读它声明的文档

  

确定指定的元素是否可见。通过设置CSS"可见性"可以使元素不可见。财产到"隐藏",或"显示"属性为"无",对于元素本身或其祖先之一。如果元素不存在,此方法将失败。

1 个答案:

答案 0 :(得分:0)

我不熟悉酱油和你提到的工具,但我使用的是RobotFramework + Selenium,我相信它们非常相似。

您的问题可能是因为您正在测试弹出式div的可见性,在此之后添加一个新测试来测试右侧图像的可见性。

我会使用这样的东西(请根据需要更改命令名称):

...
Mouse Over | {locator of the element triggering the popup}
Wait Until Element Is Visible | {locator of the div with the magnified area}
Element Should Be Visible | {locator of the magnified image to the right}
Mouse Out | {locator of the element triggering the popup}
Element Should Not Be Visible | {locator of the div with the magnified area}
Element Should Not Be Visible | {locator of the magnified image to the right}
...

这样我们首先通过悬停图像来触发弹出窗口,然后我们等待并断言图像上的放大区域分隔符,然后我们将放大的图像本身置于右侧,然后我们确保一切都恢复正常我们从图像中删除鼠标指针。