У нас есть тест e2e с транспортиром в безголовом режиме.
Сначала мы хотим проверить аутентификацию. Поведение аналогично приведенному выше:
1 / Пользователь нажимает на ссылку в браузере 2 / сервер проверит, аутентифицирован ли этот пользователь или нет 2.1, если пользователь прошел аутентификацию, домашняя страница отобразится на 2.2, если нет, пользователь будет перенаправлен на страницу входа sso с помощью
. Проблема в том, что javascript не будет выполнен. Я пытаюсь добавить некоторые флаги, но это не имеет никакого значения.
exports.config = {
allScriptsTimeout: 20000,
specs: [
'./e2e/account/**/account.spec.ts',
],
capabilities: {
'browserName': 'firefox',
'marionette': true,
'moz:firefoxOptions': {
args: [ "--headless"],
firefox_binary: '/opt/firefox/firefox',
binary_: '/opt/firefox/firefox',
},
acceptInsecureCerts: true,
javascriptEnabled: true,
},
directConnect: true,
baseUrl: 'http://demop-staging-ppd.com/',
framework: 'mocha',
// SELENIUM_PROMISE_MANAGER: false,
mochaOpts: {
reporter: 'spec',
slow: 3000,
ui: 'bdd',
timeout: 720000
},
beforeLaunch: function() {
require('ts-node').register({
project: 'tsconfig.e2e.json'
});
},
onPrepare: function() {
browser.driver.manage().window().setSize(1280, 1024);
// Disable animations
// @ts-ignore
browser.executeScript('document.body.className += " notransition";');
const chai = require('chai');
const chaiAsPromised = require('chai-as-promised');
chai.use(chaiAsPromised);
const chaiString = require('chai-string');
chai.use(chaiString);
// @ts-ignore
global.chai = chai;
},
useAllAngular2AppRoots: true
};
файл spe c:
before(async () => {
await browser.waitForAngularEnabled(false);
});
it('should content display content ', async () => {
await browser.get('/');
browser.sleep(5000);
const content= await browser.getPageSource();
console.log(content)
});
Я открыт для любых предложений и могу предоставить вас с любой дополнительной информацией.
[ОБНОВЛЕНИЕ]
Я изменяю свой конфигурационный файл, как указано выше, чтобы попытаться включить javascript в моем просмотре. Это работает на локальном, но когда я пытаюсь это на docker изображение не
capabilities: {
'browserName': 'firefox',
'marionette': true,
'moz:firefoxOptions': {
args: ["--headless"],
firefox_binary: '/opt/firefox/firefox',
binary_: '/opt/firefox/firefox',
"prefs": {
"javascript.options.showInConsole": true,
"javascript.enabled": true
},
"log": { "level": "trace" }
},
acceptInsecureCerts: true,
acceptSslCerts: true,
},