2015-07-23 5 views
4

Я пытаюсь установить файл cookie для тестового теста, но данные cookie, похоже, недоступны на странице. Вот настройка:Настройка файлов cookie для функциональных тестов internjs

registerSuite(function() { 
    'test': function() { 
     return this.remote 
      .get(require.toUrl("index.html") 
      .setFindTimeout(5000) 
      .setCookie({name: "foo", value: "bar"}) 
      .then(function() { 
       //... test here ... 
      }); 
    } 
}); 

При доступе к document.cookie внутри index.html данных нет. Какие-нибудь советы о том, что я делаю неправильно?

Update:

Я не решил эту проблему, но понял, что вам нужно позвонить SetCookie() перед ГЭТ(). Путь я хакерство вокруг это назвать Get() на Nööp URL, а затем вызвать SetCookie()

return this.remote 
     .get('/') 
     .setCookie({name: "foo", value: "bar"}) 
     .get(require.toUrl("index.html") 
     .setFindTimeout(5000) 
     .setCookie({name: "foo", value: "bar"}) 
     .then(function() { 
      //... test here ... 
     }); 
+0

С какой версией браузера/браузера вы работаете? Какая версия Селена? Используете ли вы поставщика облачных вычислений или собственную установку Selenium? –

+1

Приведенный вами пример недействителен JavaScript, его запуск приведет к синтаксическим ошибкам. Во всяком случае стажер документы предлагает возвращать объект конфигурации, если вы используете registerSuite с обратным вызовом, вы должны иметь что-то подобное вместо: '' 'registerSuite (функция() { возвращения { «теста»: функция() { // ... } }; }); '' ' Сообщите мне, если это поможет. Также, пожалуйста, сообщите, есть ли какие-либо ошибки в консоли, любые запросы на тайм-аут в сети? Какими аргументами следует обратный вызов? – Olga

ответ

-1

Казалось бы, вы не включили в примере кода любой setup, teardown/after, beforeEach или afterEach. Я бы рекомендовал убедиться, что функциональность вообще работает, прежде чем оценивать файл cookie, который вы ожидаете от его создания.

Я не очень хорошо знаком с Intern.JS, но я считаю, что из того, что я прочитал, тесты являются лишь тестом, и после его завершения они удаляют информацию из теста, поэтому следующий тест может быть выполнен. Итак, возможно, вам не хватает, когда куки-файл существует, и когда тест завершен, он уничтожается.

+0

Спасибо за отзыв, но это скорее комментарий, чем ответ. –