Javascript 使用Jasmine和量角器测试定制JS

Javascript 使用Jasmine和量角器测试定制JS,javascript,cookies,selenium,jasmine,protractor,Javascript,Cookies,Selenium,Jasmine,Protractor,我正在尝试为自定义JS模块(?)编写Jasmine测试代码,cookie会返回访问者并将他们重定向到cookie所在的区域 JS工作得很好,但Jasmine/Gragorator似乎无法识别它,因为这些页面没有按应有的方式重定向 my spec.js文件: describe("cookies", function() { var bridgepage = ('http://0.0.0.0:4567/'); var citypage = ('http://0.0.0.0:4567/

我正在尝试为自定义JS模块(?)编写Jasmine测试代码,cookie会返回访问者并将他们重定向到cookie所在的区域

JS工作得很好,但Jasmine/Gragorator似乎无法识别它,因为这些页面没有按应有的方式重定向

my spec.js文件:

describe("cookies", function() {
    var bridgepage = ('http://0.0.0.0:4567/');
    var citypage = ('http://0.0.0.0:4567/nyc/');

    // cookied visitors
    it('should redirect to city pages for cookied visitors', function(){
        browser.get(citypage);
        browser.get(bridgepage)
        browser.sleep(1000);
        expect(browser.getCurrentUrl()).toEqual(citypage);
    })

});
var cookies = (function() { 

  var utma = $.cookie("__utma");
  var serviceArea = $.cookie('first_visit_service_area')

  var isFirstVisit = function() {
    if (utma == null) {
      return false;
    }
    else {
      var utmaArray = utma.split('.');
      var firstVisitTime = utmaArray[2];
      var currentVisitTime = utmaArray[4];
      return (firstVisitTime == currentVisitTime);
    }
  }

[...]

  // Set cookies according to (...)
  // If the user has never visited the site, (...)
  // If the user (...), (...)
  if (utma == null) {
    // user has apparently disabled cookies or blocked google analytics cookies
    return;
  }

  if (window.location.pathname == '/' && serviceArea) { 
    redirectServiceArea(); 
  }

  if (isFirstVisit) { 
    setCookies(); 
  }


}());
文件夹结构:

- source
-- javascripts
---- lib
-- all.js
-- cookies.js // file to test
- spec
-- javascripts
---- helpers
---- supoort
-- spec.js // specs
cookies.js文件:

describe("cookies", function() {
    var bridgepage = ('http://0.0.0.0:4567/');
    var citypage = ('http://0.0.0.0:4567/nyc/');

    // cookied visitors
    it('should redirect to city pages for cookied visitors', function(){
        browser.get(citypage);
        browser.get(bridgepage)
        browser.sleep(1000);
        expect(browser.getCurrentUrl()).toEqual(citypage);
    })

});
var cookies = (function() { 

  var utma = $.cookie("__utma");
  var serviceArea = $.cookie('first_visit_service_area')

  var isFirstVisit = function() {
    if (utma == null) {
      return false;
    }
    else {
      var utmaArray = utma.split('.');
      var firstVisitTime = utmaArray[2];
      var currentVisitTime = utmaArray[4];
      return (firstVisitTime == currentVisitTime);
    }
  }

[...]

  // Set cookies according to (...)
  // If the user has never visited the site, (...)
  // If the user (...), (...)
  if (utma == null) {
    // user has apparently disabled cookies or blocked google analytics cookies
    return;
  }

  if (window.location.pathname == '/' && serviceArea) { 
    redirectServiceArea(); 
  }

  if (isFirstVisit) { 
    setCookies(); 
  }


}());
这是我第一次尝试编写JS测试,因此非常感谢您的帮助!:)