1. 程式人生 > >element not visible的解決方法

element not visible的解決方法

pat 事件 chrom 解決方法 移動 原因 一點 多個 問題

拋出異常主題為element not visible主要有一下三個方面的原因。

  1. 元素之間存在邏輯關系,比如你要選擇地址時,中國選擇完畢之後,才能選擇北京。如果想直接一步到位,則會出現element not visible。這種錯誤並不是元素定位錯誤所引起的,而是邏輯關系上沒有走通。解決辦法:註意邏輯順序的選取,按照網站的要求激活一個在激活下一個。這裏面要註意一點的就是在是用Firefox的時候,我的邏輯關系是沒有錯誤的,但是Firefox還是會給我報錯element not visible。後來換成chrome瀏覽器,問題就可以解決。
  2. 元素定位錯誤:如果網頁中存在你需要定位的多個元素,如果出現element not visible,有可能是你想要的定位和現實的定位出現了不同,解決辦法也就是定位更精確,即定位更有區分性。可以采用By.Id,By.xpath(expression)方式。
  3. 元素定位到一個鼠標事件後才能進行事件觸發的位置上:比如,需要鼠標移動到某個區域,元素才可以顯示點擊的按鈕,如果鼠標離開,則相應的事件也沒辦法觸發。解決辦法:問題都已經描述清楚了,響應的解決辦法也就有了,那就是引入action類,模擬鼠標移動到需要定位的元素下,讓dom樹從新生成,然後定位相應的元素。下面是我的一段鼠標移動代碼:

element not visible的解決方法