最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

selenium處理元素定位點(diǎn)擊無(wú)效問(wèn)題

 更新時(shí)間:2019年06月12日 15:31:08   作者:天樞  
這篇文章主要介紹了selenium處理元素定位點(diǎn)擊無(wú)效問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

在WEB自動(dòng)化測(cè)試過(guò)程中,經(jīng)常會(huì)遇到這樣的問(wèn)題:

元素定位到了,但是點(diǎn)擊無(wú)效?有人可能會(huì)問(wèn)了,怎么判斷元素定位到了,這個(gè)問(wèn)題很好判斷

1.給元素加高亮顯示

  self.driver.execute_script(
   "arguments[0].setAttribute('style', arguments[1]);",
   element,
   "border: 2px solid red;" #邊框border:2px; red紅色
  )

arguments[0] 這個(gè)參數(shù),可以理解為python中的字符串格式化。比如"{}{}".format('aaa','bbbb')

2.執(zhí)行點(diǎn)擊過(guò)程不報(bào)錯(cuò)。

不會(huì)報(bào)一些找不到元素之類的錯(cuò)誤。

怎么判斷元素定位到了,點(diǎn)擊沒(méi)成功(這里說(shuō)一下,一般是做了點(diǎn)擊操作,只是我們直觀去判斷沒(méi)有點(diǎn)擊成功)

那么,現(xiàn)在來(lái)說(shuō)一下如何解決這個(gè)問(wèn)題。

解決問(wèn)題:

1.分析一下,默認(rèn)selenium的點(diǎn)擊操作是點(diǎn)元素0,0點(diǎn)坐標(biāo),那么我們可以在元素x,y坐標(biāo)上加5,讓點(diǎn)擊操作往里一點(diǎn)。

導(dǎo)入包ActionChains,

from selenium.webdriver.common.action_chains import ActionChains
ele = self.find_element(*loc)
ActionChains(driver).move_to_element(ele).move_by_offset(5,5).click().perform()

通過(guò)如上代碼,先定位元素,然后移動(dòng)到元素,在元素基礎(chǔ)上做偏移x,y 5,5然后點(diǎn)擊。

需要注意的是最后的perform()。要加上這個(gè)。否則不生效。

2.通過(guò)js去點(diǎn)擊元素。

可以通過(guò)dom去定位,或者jquery定位。然后點(diǎn)擊操作。這里不具體說(shuō)明了??梢哉叶饶?。

3.可以分析代碼,如果有直接調(diào)用函數(shù)的地方,可以通過(guò)js直接調(diào)用。

要說(shuō)明的是,這個(gè)方法,一般不可行。因?yàn)閖s前端代碼會(huì)壓縮加密。所以上線后我們看到的是壓縮的。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

资中县| 二手房| 剑川县| 桐梓县| 东方市| 石家庄市| 闻喜县| 武城县| 彭阳县| 襄城县| 华宁县| 荃湾区| 津南区| 徐汇区| 孙吴县| 巩义市| 扶沟县| 临沭县| 龙门县| 冕宁县| 台中县| 多伦县| 启东市| 固安县| 武功县| 龙口市| 龙井市| 正镶白旗| 丹阳市| 修武县| 金湖县| 措美县| 增城市| 吕梁市| 莎车县| 陆河县| 化德县| 田林县| 合水县| 平湖市| 郧西县|