Почему транспортир 5.4.1 с сафари 11.1 застревает - PullRequest
0 голосов
/ 10 ноября 2018

Я использую Safari версии 11.1 с последней версией транспортира.

Я пробовал это на Saucelab, и локально на моей машине я получаю тот же результат.

browser.get работает - страница загружается .. и .. вот и все. ничего больше.

Я пытался $('body').getText... или $('button').click() .. сеанс кажется устаревшим.

Я прочитал о safaridriver и выполнил команду --enable на моей машине - ничего.

В соусе я могу использовать Safari версии 9.0 (до safaridriver), и это вроде как работает (пока я не доберусь до iframe - но я понимаю, что это известная проблема).

Если я пытаюсь использовать что-то более новое (safari 10/11/12), я получаю то же поведение, что и локально - сессия кажется устаревшей после загрузки. Я предполагаю, что соусник настроен правильно и должен просто работать.

Я много читал в Интернете, проблема в том, что слишком много проблем / решений, которые нужно прочесать, и я пока не нашел подходящей темы.

как я могу заставить сафари + транспортир (то есть селен на nodejs) работать локально и на соусе?

Я написал код для воспроизведения:

// the test
describe('something', function () {
  it('should exemplify a working safari on protractor', function () {
    console.log('getting something');
    browser.get('/');
    browser.sleep(0).then(() => {
      console.log('page should have loaded'); // you won't see it due to the bug
    })
    $('button').click();
    browser.sleep(0).then(() => {
      console.log('if you see this comment, it worked!');
    })
  });
})


// the configuration
exports.config = {
    baseUrl: 'https://docs.angularjs.org/guide/unit-testing', // any angular web app would do
    allScriptsTimeout: 30000,
    getPageTimeout: 30000,
    capabilities: {
      browserName: 'safari'
    },
    specs: 'tests/*'
}

// my package.json
{
  "name": "safari-protractor",
  "version": "0.0.0",
  "dependencies": {
    "protractor": "^5.4.1"
  }
}
...