Попытки проверить простой тест в Jasmine & Карме и AngularJs Рамочного, контроллера:Жасмина Тестирования с ВМ в угловом контроллере
(function() {
'use strict';
angular
.module('bsp.account')
.controller('Account', Account);
/* @ngInject */
function Account(userService, accountService) {
var vm = this;
vm.title = 'Accounts';
vm.username = userService.getUsername();
vm.showPasswordModal = accountService.showPasswordModal;
vm.showLogoutModal = accountService.showLogoutModal;
activate();
////////////////
function activate() {
}
}
})();
Может кто-нибудь сказать мне, как я пишу простой тест, используя Jasmin с этим код? а также, возможно, возможно Methode и его испытание, Мой тестовый код ниже:
describe('Account', function() {
var scope,
controller;
beforeEach(module('bsp.account'));
//sample testCase--
it('testCheck', function() {
expect('helloWorld').toBe("helloWorld");
});
describe('Account', function() {
//injecting the scope&controller--
beforeEach(inject(function($rootScope, $controller) {
scope = $rootScope.$new();
controller = $controller('Account', {
$scope: scope
});
scope.vm = controller;
}));
});
it("checkTitle",function(){
var vm = controller("Account",{$scope:scope});
expect(vm.title).toEqual("Accounts");
});
});
карма, ответ:
Running "karma:unit:run" (karma) task
[2015-10-23 15:11:03.542] [DEBUG] config - Loading config /vagrant/frontend/build/karma-unit.js
✗ checkTitle
TypeError: 'undefined' is not a function (evaluating 'controller("Account",{$scope:scope})')
at /vagrant/frontend/src/app/account/account.controller.spec.js:33
LOG LOG: undefined
PhantomJS 1.9.8 (Linux 0.0.0) LOG: undefined
LOG LOG: '** if *********'
PhantomJS 1.9.8 (Linux 0.0.0) LOG: '** if *********'
PhantomJS 1.9.8 (Linux 0.0.0): Executed 37 of 37 (1 FAILED) (0.134 secs/0.128 secs)
Warning: Task "karma:unit:run" failed. Use --force to continue.
Отменено из-за предупреждений. Завершенный в 10.849s в Пт Окт 23 2015 15:11:04 GMT-0700 (PDT) - Ожидание ... Любые предложения оценили, я новичок в Jasmin testing.Thank Вы
Мои искренние извинения, я просто потерял между написанием большого количества тестовых примеров разного контроллера, я обновил его. Дает мне ошибку, TypeError: «undefined» не является n object (оценка «controller.title») – sg28
Включает ли 'bsp' модуль' bsp.account' в качестве зависимости? – Puigcerber
Да, у него есть it.updated, он, но даже после его включения дает мне ошибку ✗ checkTitle \t Ошибка: [$ injector: unpr] Неизвестный поставщик: userServiceProvider <- userService <- Учетная запись \t http: // errors .angularjs.org/1.3.20/$ инжектор/unpr? p0 = userServiceProvider% 20% 3C-% 20userService% 20% 3C-% 20Account \t at /vagrant/frontend/vendor/angular/angular.js:4031 \t на GetService (/vagrant/frontend/vendor/angular/angular.js:4178) \t на /vagrant/frontend/vendor/angular/angular.js:4036 \t TypeError: 'не определено' не является объектом (оценки ' controller.title ') \t на – sg28