Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何测试Angular应用程序?_Angularjs - Fatal编程技术网

Angularjs 如何测试Angular应用程序?

Angularjs 如何测试Angular应用程序?,angularjs,Angularjs,对于简单的应用程序,例如“Hello World”,我在哪里编写测试 我已经创建了一个plnkr。 这是一个非常简单的plnkr,它只显示Hello World。 现在,如果我想为这个应用程序编写一个测试,即MainCtrl。。在哪里插入?要使用Angular Karma Jasmine运行测试: 您需要安装,karma运行在节点顶部 您需要从命令窗口安装karma执行: npm install -g karma 在这一点上,您最好开始用jasmine编写测试 控制器的简单jasmine测试如

对于简单的应用程序,例如“Hello World”,我在哪里编写测试

我已经创建了一个plnkr。

这是一个非常简单的plnkr,它只显示Hello World。
现在,如果我想为这个应用程序编写一个测试,即MainCtrl。。在哪里插入?

要使用Angular Karma Jasmine运行测试:

  • 您需要安装,karma运行在节点顶部

  • 您需要从命令窗口安装karma执行:

    npm install -g karma 在这一点上,您最好开始用jasmine编写测试

    控制器的简单jasmine测试如下:

    describe('MainCtrl', function() {
        var $scope, $rootScope, createController;
    
        beforeEach(inject(function($injector) {
            $rootScope = $injector.get('$rootScope');
            $scope = $rootScope.$new();
    
    
        var $controller = $injector.get('$controller');
    
            createController = function() {
                return $controller('MainCtrl', {
                    '$scope': $scope
                });
            };
        }));
    
        it('should have a...', function() {
            var controller = createController();
    // do your testing here...
    
        });
    });
    
    karma init karma.config.js module.exports = function(config) { config.set({ basePath: '', frameworks: ['jasmine'], files: [ '../app/*.js', '../app/lib/angular.js', '../app/lib/angular-route.min.js', '../app/lib/angular-mocks.js', '../app/app.js', 'controllers/*.js', 'services/*.js', ], exclude: [ ], reporters: ['progress'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome','Firefox'], captureTimeout: 60000, singleRun: false }); }; karma start
    describe('MainCtrl', function() {
        var $scope, $rootScope, createController;
    
        beforeEach(inject(function($injector) {
            $rootScope = $injector.get('$rootScope');
            $scope = $rootScope.$new();
    
    
        var $controller = $injector.get('$controller');
    
            createController = function() {
                return $controller('MainCtrl', {
                    '$scope': $scope
                });
            };
        }));
    
        it('should have a...', function() {
            var controller = createController();
    // do your testing here...
    
        });
    });