我想知道是否現在有可能使用Selenium實施「下載測試」。檢測文件下載是否已經開始就足夠了。 重要的是說文件不是靜態的,所以它們不能通過特定的URL訪問。它們是動態創建的並且充滿了數據,這取決於用戶提供的輸入。 我也無法使用FirefoxProfile,因爲我的自動化Web測試使用chrome驅動程序和phantomjs。他們也需要在Hudson下運行(這裏當然只使用phantomjs)。 應用程序在JBoss服務器下運行,所以我使用Arquillian庫。硒測試文件下載
謝謝
我想知道是否現在有可能使用Selenium實施「下載測試」。檢測文件下載是否已經開始就足夠了。 重要的是說文件不是靜態的,所以它們不能通過特定的URL訪問。它們是動態創建的並且充滿了數據,這取決於用戶提供的輸入。 我也無法使用FirefoxProfile,因爲我的自動化Web測試使用chrome驅動程序和phantomjs。他們也需要在Hudson下運行(這裏當然只使用phantomjs)。 應用程序在JBoss服務器下運行,所以我使用Arquillian庫。硒測試文件下載
謝謝
是的,這是可能只適用於Firefox 這樣特殊的功能已經被配置
firefox_profile = FirefoxProfile()
firefox_profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/csv, image/png, application/octet-stream, text/plain") # File mine types
firefox_profile.set_preference("browser.download.manager.showWhenStarting", False)
firefox_profile.set_preference("browser.download.dir", "/tmp")
firefox_profile.set_preference("browser.download.folderList", 2)
但對於其他瀏覽器,我通常做一個簡單的一招我獲取文件的鏈接而不是使用fe請求庫和檢查文件頭文件
import requests
r = requests.head("https://www.google.com.ua//images/srpr/logo11w.png")
assert r.status_code == 200
assert r.headers['content-type'] == 'image/png'
正如我所說,我不能使用FirefoxProfile ... –
看到另一個我的解決方案,我希望這將有助於 – dmr
這對於PhantomJS來說是不可能的。你應該看看你如何用xvfb運行chrome。 –