我正在研究一组用 Python 编写的 selenium UI 测试。在以前的项目中,我使用的是 WatiN 和 C#。
WatiN 框架有一个你可以启用的功能,它可以“突出显示”你点击、选择或输入的元素。执行操作时,元素周围会出现黄色边框。我发现这在对损坏的测试进行故障排除时非常有用,如果单击了错误的元素,我经常可以从测试运行中看到。
我想知道 Selenium webdriver 是否有类似的功能可以打开。基本上我想要某种视觉指示正在与什么元素进行交互。
谢谢!
我正在研究一组用 Python 编写的 selenium UI 测试。在以前的项目中,我使用的是 WatiN 和 C#。
WatiN 框架有一个你可以启用的功能,它可以“突出显示”你点击、选择或输入的元素。执行操作时,元素周围会出现黄色边框。我发现这在对损坏的测试进行故障排除时非常有用,如果单击了错误的元素,我经常可以从测试运行中看到。
我想知道 Selenium webdriver 是否有类似的功能可以打开。基本上我想要某种视觉指示正在与什么元素进行交互。
谢谢!
Selenium RC 可以做到这一点,但在 WebDriver 中没有直接的 API 方法可以做到这一点。您的选择是:
1)使用WebDriverBackedSelenium
您的语言绑定中的实现来访问该Highlight
方法。
JavascriptExecutor
2)只需使用(或您的语言绑定中的类似实现)调用一些javascript来为您完成这项工作。这将模仿Selenium RC/选项 1将实现的功能。
要调用的 Javascript 存在于此处:
http://code.google.com/p/selenium/source/browse/javascript/selenium-core/scripts/htmlutils.js
要注意的功能是highlight
功能。只需使用 JavascriptExecutor 加载此脚本(搜索以了解如何在您的编程语言中执行此操作)。
然后,您可以比较它以查看WebDriverBackedSelenium
Java API 中的实现如何使用它:
使用它,在您自己的代码中执行相同的操作。
附带说明一下,用于 Firefox 的 Selenium IDE 也可以突出显示方法。