[英]How to handle download file save dialog in firefox through protractor
[英]Download file on Firefox with protractor
我需要在带有量角器的Firefox上下载一个zip文件。 点击下载链接,弹出Windows对话框,询问打开/保存文件。 那我该怎么办? 我需要传递给驱动程序的args是什么? 使用chrome我可以通过下载来实现:{'prompt_for_download':false},
但是我应该怎么做firefox。
问题是 - 您无法通过量角器/硒操纵“另存为...”对话框 。 您应该首先避免它被打开,让firefox自动下载指定的mime类型的文件 - 在您的案例application/zip
。
换句话说,您需要使用自定义Firefox配置文件设置适当的首选项来启动Firefox:
var q = require("q");
var FirefoxProfile = require("firefox-profile");
var makeFirefoxProfile = function(preferenceMap, specs) {
var deferred = q.defer();
var firefoxProfile = new FirefoxProfile();
for (var key in preferenceMap) {
firefoxProfile.setPreference(key, preferenceMap[key]);
}
firefoxProfile.encoded(function (encodedProfile) {
var capabilities = {
browserName: "firefox",
firefox_profile: encodedProfile,
specs: specs
};
deferred.resolve(capabilities);
});
return deferred.promise;
};
exports.config = {
getMultiCapabilities: function() {
return q.all([
makeFirefoxProfile(
{
"browser.download.folderList": 2,
"browser.download.dir": "/path/to/save/downloads",
"browser.helperApps.neverAsk.saveToDisk": "application/zip"
},
["specs/*.spec.js"]
)
]);
},
// ...
}
这里我们基本上说:Firefox,请自动下载zip文件,而不要进入/path/to/save/downloads
目录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.