如何使用AngularJS和Karma测试路由

时间:2014-02-12 14:34:11

标签: javascript angularjs unit-testing karma-runner

我的路由如下:

angular.module('mean').config(['$routeProvider', '$translateProvider', '$locationProvider',
  function($routeProvider, $translateProvider, $locationProvider) {
    $routeProvider.
    when('/items', {
      templateUrl: '/views/main.html',
      controller: 'ItemsController'
    }).
    when('/items/create', {
      templateUrl: '/views/main.html',
      controller: 'ItemsController'
    }).

    when('/articles/create', {
        templateUrl: 'views/articles/create.html'
    }).
    when('/articles/:articleId/edit', {
        templateUrl: 'views/articles/edit.html'
    }).
    when('/articles/:articleId', {
        templateUrl: 'views/articles/view.html'
    }).
    when('/', {
        templateUrl: '/views/index.html'
    }).
    otherwise({
        redirectTo: '/'
    });

    $locationProvider.html5Mode(true);
    $translateProvider.useStaticFilesLoader({
      prefix: '/lang/',
      suffix: '.json'
    });

    $translateProvider.fallbackLanguage('en-US');
    $translateProvider.useCookieStorage();
    $translateProvider.preferredLanguage('en-US');
  }
]);

基本上,我想编写测试以确保每个路由都有模板和控制器。

1 个答案:

答案 0 :(得分:1)

你不应该测试路由是否正常,角度代码库已经可以了,对于一些有用的测试你可以看一下这个例子:

AngularJS Test Controller Containing routeChangeSuccess

相关问题