У меня проблема в моих угловых 5 e2e тестах, где мне нужно автоматически загрузить PDF с Firefox.Он не должен отображать окно «Сохранить как ...» в Firefox.
Я уже попробовал некоторые решения здесь из stackoverflow, но, похоже, они не работают для меня.
Вот содержимое моего файла protractor.conf.js:
const { SpecReporter } = require('jasmine-spec-reporter');
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./e2e/**/*.e2e-spec.ts'
],
capabilities: {
'browserName' : 'firefox',
'moz:firefoxOptions': {
prefs: {
'browser.download.folderList': 2,
'browser.download.dir' : process.cwd() + "/resources/test/download",
'services.sync.prefs.sync.browser.download.useDownloadDir': true,
'browser.download.useDownloadDir': true,
'browser.download.manager.alertOnEXEOpen': false,
'browser.download.manager.closeWhenDone': true,
'browser.download.manager.focusWhenStarting': false,
'browser.download.manager.showWhenStarting': false,
'browser.helperApps.alwaysAsk.force': false,
'browser.download.manager.showAlertOnComplete': false,
'browser.download.manager.useWindow': false,
'browser.helperApps.neverAsk.saveToDisk': 'application/pdf',
},
},
},
directConnect: true,
baseUrl: 'http://localhost:4200/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
onPrepare() {
require('ts-node').register({
project: 'e2e/tsconfig.e2e.json'
});
require("zone.js/dist/zone-node");
require("zone.js/dist/long-stack-trace-zone");
require("zone.js/dist/async-test");
require("zone.js/dist/fake-async-test");
require("zone.js/dist/sync-test");
require("zone.js/dist/proxy");
require("zone.js/dist/jasmine-patch");
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
}
};
Но когда в тесте транспортира нажата кнопка загрузки pdf, firefox по-прежнему открывает приглашение «Сохранить как ...» и автоматически не загружает pdf.Однако он создает папку "/ resources / test / download" во время теста.Но он пуст.
Я использую Firefox версии 66.0.2 в Mac OS Mojave (10.14.4) и в package.json:
"selenium-webdriver": "^4.0.0-alpha.1",
"jasmine-core": "2.99.1",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~2.0.0",
"karma-chrome-launcher": "~2.2.0",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "~1.4.1",
"karma-firefox-launcher": "^1.1.0",
"karma-jasmine": "~1.1.1",
"karma-jasmine-html-reporter": "~0.2.2",
"protractor": "~5.4.0",
Я что-то упустил?