2016-06-29 23 views
0

ich einen reichen Kalender haben:Selen kann nicht feststellen, ob Richfaces Kalender deaktiviert ist

<rich:calendar id="calendarId" disabled="true"..... /> 

Und ich versuche mit Selen zu bestimmen, ob das Kalenderelement deaktiviert

webDriver.findElement(By.id("calendarId")).isEnabled(); 

Das Ergebnis ist wahr , obwohl mein Kalender deaktiviert ist.

Es ist ein bekanntes Problem mit diesem reichen: Kalender und Selen? Weiß jemand wie ich feststellen kann ob der Kalender deaktiviert ist?

+0

Mögliche Duplikate von [So deaktivieren Sie Rich-Kalender mit JQuery oder Javascript (Client-Seite)] (http://stackoverflow.com/questions/8012972/how-to-disable-rich-calendar-using-jquery-oder- Javascript-client-side) – Destrif

+0

Ich bin nicht daran interessiert, einen Rich: Kalender auf der Client-Seite zu deaktivieren/aktivieren. Ich möchte nur feststellen, wie kann ich überprüfen, ob ein reich: Kalender mit Selen deaktiviert ist. Wie Sie sehen können, liefert Selen schlechte Ergebnisse ... – Alex

+1

sollten Sie wahrscheinlich nach "kalenderartId" + "InputDate" 'suchen (Eingabe ID nicht Komponenten-ID) –

Antwort

2

Nur verwenden:

webDriver.findElement(By.id("calendarIdInputDate")).isEnabled(); 

es sein sollte clientID der Komponente + "InputDate" (welches ein Suffix Eingang in Kalender in Richfaces hinzugefügt ist). Es ist, weil HTML-Element mit id="calendarId" ist nur DIV Wrapper für den Rest der Komponente und es hat keine disabled Attribut.