Я попробовал несколько вещей, чтобы попытаться получить Selenium, чтобы выбрать событие onchange в раскрывающемся меню, ни одно из которого не сработало.Selenium onChange не работает
Нарушитель HTML является:
<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>
Я прочитал, что Selenium IDE не записывает некоторые на * событий, и поэтому было бы разумно использовать 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");
Однако это не работает (с или без fireEvent). Я также попытался с помощью
$this->fireEvent("locator", "click");
вместо
$this->click("locator");
, но это ничего не делал.
Selenium не жалуется на то, что эти локаторы не существуют, поэтому я предполагаю, что он может прекрасно видеть элементы select/option. Проблема заключается в событии onChange.
Кто-нибудь знает, как это решить?
Спасибо.
Какой браузер вы используете? – John
Я тестирую Firefox 3.5.8. – tohop