Selenium 疑問之三:Selenium2.0 對於Wrapped元素的click()不起作用怎么辦?


這個問題困擾了我快一天的時間,我遇到的問題:WebElement是一個Wrapped的span元素,點擊后出現一個菜單。這個span元素可以用xpath定位到,但是element.click()就是不起作用,

google了下,似乎有很多網友反映,應該是Selenium2.0的bug。針對我個人的問題,我嘗試了如下的workaround:

1. 改變xpath的表達式,避開查找直接用span定位(我之前是直接用//span[@class='....']),現在改為先定位table/tbody//tr[...]//td[...]//span[@...]. 事實證明這樣可以,也是預期的效果;

2. 用javaScript模擬手工操作瀏覽器,例如:

        WebElement eAction = driver.findElement(By.xpath(getStringByKeyName("MenuAction")));
        ((JavascriptExecutor)driver).executeScript("arguments[0].click();", eAction);

這里有一個小問題,彈出的menu不知道為什么會出現在頁面的最左上方,而不是在點擊的元素的下方。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM