Aggiungo test web al mio progetto utilizzando Selenium. Ho già un sacco di test che verificano un elemento specifico utilizzando:Selenio: trova elemento "accanto a" altro elemento
final WebElement dateElement = web.findElement(By.id(elementId));
E questo funziona bene. Ora ho un altro requisito. Questo è nella mia pagina generata:
<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>
Come posso ottenere il messaggio di errore? Mi piacerebbe qualcosa che mi permetta di richiedere l'elemento span con "errore" di classe che è subito dopo dateElement.
(Questo messaggio di errore è stato ganerated da Spring MVC, quindi non è facile cambiarlo direttamente possibile, suppongo, ma preferirei non).
Qualsiasi idea alternativa è la benvenuta.
grande, mi serviva la risposta anche – CosminO
Questo può anche essere semplificato utilizzando 'finale WebElement errorElement = dateElement.findElement (By.xpath ("dopo-sibling :: arco [@ class = 'error']")); 'se è disponibile l'effettivo' WebElement dateElement'. Devi usare quell'elemento come radice della ricerca ma notare che l'espressione xpath non dovrebbe iniziare con '//' (o '/') in quel caso, altrimenti cercherà comunque dalla radice del documento. – neXus