Firefox 配置文件设置在带有 selenium webdriver 配置的量角器中抛出错误
Firefox profile setup throws error in protractor with selenium webdriver configuration
var q = require("q");
var FirefoxProfile = require("firefox-profile");
var makeFirefoxProfile = function(preferenceMap) {
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",
directConnect: true,
firefox_profile: encodedProfile
};
deferred.resolve(capabilities);
});
return deferred.promise;
};
exports.config = {
specs:specs,
getMultiCapabilities: function() {
return q.all([
makeFirefoxProfile(
{
"browser.download.folderList": 2,
"browser.download.dir": "/path/to/save/downloads",
"browser.helperApps.neverAsk.saveToDisk": "application/zip"
}
)
]);
},
// ...
}
它抛出以下错误:
ERROR - failed loading configuration file protractor.conf.js
/usr/local/lib/node_modules/protractor/lib/configParser.js:183
throw e;
^ Error: Cannot find module 'q'
请分享您的意见以解决此问题。
您需要安装 q
和 firefox-profile
模块:
npm install q firefox-profile --save-dev
var q = require("q");
var FirefoxProfile = require("firefox-profile");
var makeFirefoxProfile = function(preferenceMap) {
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",
directConnect: true,
firefox_profile: encodedProfile
};
deferred.resolve(capabilities);
});
return deferred.promise;
};
exports.config = {
specs:specs,
getMultiCapabilities: function() {
return q.all([
makeFirefoxProfile(
{
"browser.download.folderList": 2,
"browser.download.dir": "/path/to/save/downloads",
"browser.helperApps.neverAsk.saveToDisk": "application/zip"
}
)
]);
},
// ...
}
它抛出以下错误:
ERROR - failed loading configuration file protractor.conf.js /usr/local/lib/node_modules/protractor/lib/configParser.js:183 throw e; ^ Error: Cannot find module 'q'
请分享您的意见以解决此问题。
您需要安装 q
和 firefox-profile
模块:
npm install q firefox-profile --save-dev