为internjs功能测试设置cookie

时间:2015-07-23 13:51:37

标签: javascript intern leadfoot

我正在尝试为实习功能测试设置Cookie,但Cookie数据似乎无法在页面上显示。这是设置:

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

在index.html中访问document.cookie时,没有数据。关于我做错了什么的提示?

更新

我还没有解决问题,但想到你需要在get()之前调用setCookie()。我对此进行攻击的方法是在noop URL上调用get(),然后调用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 ...
       });

1 个答案:

答案 0 :(得分:-1)

您的示例代码中似乎没有包含任何setupteardown/afterbeforeEachafterEach。在评估您希望它创建的cookie之前,我建议确保功能完全正常。

我对Intern.JS并不十分熟悉,但我相信从我读到的测试只是一个测试,一旦完成它们就会从测试中删除信息,以便进行下一个测试。所以,当cookie存在时,也许你错过了,当测试完成时,它就会被破坏。