He intentado varias cosas para intentar que Selenium recoja un evento 'onchange' de un menú desplegable, ninguno de los cuales ha funcionado.Selenium onChange no funciona
El HTML infractor es:
<select onchange="doOpperation(this.options[this.selectedIndex]); this.selectedIndex = 0;" name="opps_ondemand" id="opps_ondemand">
<option value="none" id="ondemand">Mark as...</option>
<option cmd="blah1" value="add">Something</option>
<option cmd="blah2" value="remove">None</option>
</select>
He leído que el selenio IDE no registra algunos de los eventos *, y por lo que sería aconsejable utilizar fireEvent():
$this->click("opps_ondemand");
$this->select("opps_ondemand", "label=Mark as...");
$this->click("//option[@value='add']");
sleep(3);
$this->fireEvent("//select[@id='opps_ondemand']", "change");
Sin embargo, esto no funciona (con o sin fireEvent). También he intentado usar
$this->fireEvent("locator", "click");
en lugar de
$this->click("locator");
pero esto no hizo nada.
Selenium no se queja de que estos localizadores no existan, así que supongo que puede ver bien los elementos de selección/opción. El problema parece ser el evento onChange.
¿Alguien sabe cómo resolver esto?
Gracias.
Qué navegador está usando? – John
Estoy probando en Firefox 3.5.8. – tohop