Selenium webdriver elemento destacado antes de hacer clic

Estoy trabajando en un conjunto de pruebas de IU de selenium escritas en Python. En un proyecto anterior estaba usando WatiN y C #.

El marco de WatiN tenía una característica que podría habilitar que “destacaría” el elemento en el que estaba haciendo clic, seleccionando o escribiendo. El elemento obtendría un borde amarillo a su alrededor mientras se realizaba la acción. Encontré esto extremadamente útil mientras solucionaba problemas en pruebas rotas, a menudo podía ver en la ejecución de la prueba si se hacía clic en el elemento incorrecto.

Me preguntaba si Selenium webdriver tiene una característica similar que puedo activar. Básicamente me gustaría algún tipo de indicación visual de con qué elemento se está interactuando.

¡Gracias!

Selenium RC podría hacer esto, pero no hay un método API directo para hacer esto en WebDriver. Sus opciones son:

1) Use la implementación WebDriverBackedSelenium en sus enlaces de idioma para acceder al método Highlight .

2) Simplemente llame a algún javascript usando el JavascriptExecutor (o implementación similar en sus enlaces de idioma) para hacer el trabajo por usted. Esto imitará lo que lograría Selenium RC / opción 1 .

El Javascript para llamar existe aquí:

http://code.google.com/p/selenium/source/browse/javascript/selenium-core/scripts/htmlutils.js

La función a tener en cuenta es la función de highlight . Simplemente cargue este script utilizando el JavascriptExecutor (busque para saber cómo hacerlo en su lenguaje de progtwigción).

Luego, puede comparar esto para ver cómo lo está utilizando la implementación WebDriverBackedSelenium en las API de Java:

http://code.google.com/p/selenium/source/browse/java/client/src/org/openqa/selenium/internal/seleniumemulation/Highlight.java

Usa esto, para hacer esto mismo en tu propio código.

Como nota al margen, el IDE de Selenium para Firefox también puede resaltar métodos.