0

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

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

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

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

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

注意

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

确定指定元素是否可见。通过将 CSS 的“visibility”属性设置为“hidden”或将“display”属性设置为“none”,可以将元素呈现为不可见,无论是元素本身还是其祖先之一。如果元素不存在,此方法将失败。

4

1 回答 1

0

我不熟悉 saucelabs 也不熟悉你提到的工具,但我使用 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}
...

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

于 2014-04-11T16:33:31.637 回答