使用Grunt测试Angular js

时间:2013-05-14 14:52:54

标签: angularjs jasmine yeoman gruntjs

我在angularjs项目中运行测试时遇到问题 - 当我运行“grunt test”时,我得到了 ReferenceError:未定义io 我正在运行服务器localy throug port 3000它是一个node.js socket.io服务器 并在index.html

中表达它
<script src="http://localhost:3000/socket.io/socket.io.js"></script>

这是我正在测试的功能:

$scope.editProject = function (dat) {
      $http({
        method: 'PUT',
        url: 'http://some.net/api/project/' + $routeParams.Id,
        data: angular.toJson(dat),
        headers: {'Content-Type': 'application/json'}
      })
      .success(function(d) {
        var time = $filter('date')(new Date(), 'dd/MM HH:mm:ss');
        var loc = '/project/' + $routeParams.Id;
        var head = {
          User : $rootScope.UserInfo.Username,
          Message: 'Some message ',
          Name : dat.ProjectName,
          url: loc,
          date: time,
          icon : 'icon-th-list'
        };
        socket.emit('UpdateHeader', head );
        $location.url('/project/' + $routeParams.Id);
      });
    };

1 个答案:

答案 0 :(得分:2)

在项目上安装最后一个Yeoman,它可以解决您的问题。这将自动安装GruntBower。之后,您可以使用bower安装socket.io客户端。

grunt test                        # test your app
grunt server                      # preview your app
grunt                             # build the application for deployment

使用Bower component获取更多资讯包。