Estoy agregando pruebas web a mi proyecto usando Selenium. Ya tengo un montón de pruebas que evalúan para un elemento específico usando:Selenio: encuentre el elemento "al lado" de otro elemento
final WebElement dateElement = web.findElement(By.id(elementId));
Y esto funciona bien. Ahora tengo otro requisito. Esto está en mi página generada:
<input type="text" id="dateElement" name="dateElement" value="bunch of monkeys" tabindex="101" placeholder="yyyy-mm-dd">
<span class="error">dateElement is an invalid date</span>
¿Cómo puedo obtener el mensaje de error? Me gustaría algo que me permita solicitar el elemento span con la clase "error" que está justo después del elemento dateElement.
(Este mensaje de error fue generado por Spring MVC, por lo que no es fácil cambiarlo directamente. Posible, supongo, pero preferiría no hacerlo).
Cualquier idea alternativa es bienvenida.
grande, que necesitaba la respuesta también – CosminO
Esto incluso se puede simplificar el uso de 'última WebElement errorElement = dateElement.findElement (By.xpath ("following-sibling :: [clase @ = 'error'] lapso")); 'si tiene el' WebElement dateElement' real disponible. Debe usar ese elemento como la raíz de la búsqueda, pero observe que la expresión xpath no debe comenzar con '//' (o '/') en ese caso, de lo contrario, buscará desde la raíz del documento de todos modos. – neXus