WebDriver的JS錯誤監(jiān)聽

前段時間在學(xué)習(xí)selenium2.0的時候,發(fā)現(xiàn)網(wǎng)上很多教程都是一些基礎(chǔ)的語法,包括:安裝,調(diào)用chromeDriver,獲取標(biāo)簽等等一些基本的語法,但是我相信大家在自己寫的時候肯定遇到了這些在網(wǎng)上找不到答案的問題。我用的是Java+selenium寫的,瀏覽器用的chrome;

1、driver.get(url);調(diào)不開頁面或者調(diào)用不了WebDriver

這個原因是因為你的chrome的版本和chromeDriver的版本號不對應(yīng),下圖為版本對應(yīng)號


需要用到的chromedriver的下載鏈接http://chromedriver.storage.googleapis.com/index.html

2.selenium中運行為404,500等頁面時,控制臺運行結(jié)果依然是正確的

根據(jù)自己的的判斷條件,可直接在想要輸出錯誤的地方調(diào)用方法 ?fail("錯誤反饋");

fail方法是繼承于Assert.class的。

3.selenium監(jiān)聽web頁面中的js錯誤

在URL自動化測試中,涉及上工具部署的時候會直接黑屏運行,一些頁面上的錯誤或頁面加載不出來的時候,一般情況下都會在WebDriver的console中打印出來,但是因為是黑屏運行,所以根本看不到運行頁面的時候,就需要打印出來這個log,以便前端小伙伴的修改判斷??梢杂靡韵路椒ㄟM行打印:

1.在設(shè)置setup()中設(shè)置一下driver

DesiredCapabilitiescaps =DesiredCapabilities.chrome();

LoggingPreferences logPrefs =newLoggingPreferences();

logPrefs.enable(LogType.BROWSER, Level.ALL);

caps.setCapability(CapabilityType.LOGGING_PREFS, logPrefs);

driver=newChromeDriver(caps);

2.在具體需要監(jiān)聽的地方加上方法 analyzeLog(),建議封裝一下,方便在需要的地方直接調(diào)用

public void analyzeLog() {

? ? ? ? LogEntries logEntries =driver.manage().logs().get(LogType.BROWSER);

? ? ? ? for(LogEntry entry : logEntries) {

? ? ? ? System.out.println("\nchrome.console===="+newDate(entry.getTimestamp()) +" "+ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? entry.getLevel() +" "+ entry.getMessage());

? ? ? ?//do something useful with the data

? ? ? ? fail("錯誤反饋");

? ? ?}

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容