मैंने सेलेनियम को ड्रॉप डाउन मेनू से 'ऑनचेंज' ईवेंट लेने के लिए कई चीजों की कोशिश की है, जिनमें से कोई भी काम नहीं कर पाया है।सेलेनियम ऑन चेंज काम नहीं कर रहा
हमलावर 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>
मैंने पढ़ा है कि सेलेनियम आईडीई * घटनाओं पर कुछ रिकॉर्ड नहीं करता है, और इसलिए यह 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");
हालांकि, यह काम नहीं करता है (फायरएवेंट के साथ या उसके बिना)। मैं भी का उपयोग कर
$this->fireEvent("locator", "click");
$this->click("locator");
के बजाय की कोशिश की है, लेकिन यह कुछ नहीं किया।
सेलेनियम इन locators के बारे में शिकायत नहीं करता है, इसलिए मुझे लगता है कि यह चुनिंदा/विकल्प तत्व ठीक देख सकता है। समस्या ऑन चेंज घटना प्रतीत होती है।
क्या कोई यह जानता है कि इसे कैसे हल किया जाए?
धन्यवाद।
कौन सा ब्राउज़र का उपयोग कर रहे हैं? – John
मैं फ़ायरफ़ॉक्स 3.5.8 पर परीक्षण कर रहा हूं। – tohop