selenium常見(jiàn)錯(cuò)誤之一為no such element,遇到此問(wèn)題,排查方法如下:
檢查定位方法是否有誤,如果是xpath,可打開(kāi)瀏覽器開(kāi)發(fā)者工具(F12),在控制臺(tái)(console)輸入$x("your xpath"),查看是否可定位到元素,如果定位不到,或者定位到多個(gè),均會(huì)導(dǎo)致no such element報(bào)錯(cuò)。
檢查等待時(shí)間是否不夠,可以在元素定位語(yǔ)句前,加入Thread.Sleep(),強(qiáng)制等待一段時(shí)間,在確認(rèn)界面已加載后,再定位元素(注意,Thread.Sleep()參數(shù)單位為毫秒,例如,等待5min,可輸入Thread.Sleep(300000))。
檢查元素是否在iframe框架下,打開(kāi)瀏覽器開(kāi)發(fā)者工具(F12),在元素(element)下,可查看html結(jié)構(gòu),如果定位元素上層有iframe,需要先切換到iframe后才能定位元素,語(yǔ)法如下:
driver.SwitchTo().Frame(driver.FindElement(By.XPath("iframe xpath")));
(對(duì)測(cè)試感興趣的小伙伴也可以關(guān)注我,帶你了解更多測(cè)試知識(shí)和行業(yè)信息)

9f915e0995daa4145af484947b81b612.jpeg