前段時間在學(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("錯誤反饋");
? ? ?}
}