私は Yeoman を使用して角度のあるプロジェクトを作成し、モジュールを次のように定義しています。
angular.module('angularApp')<br />
.controller('LogOutCtrl', function ($scope) {//do stuff});
Yeoman によるテスト スクリプトは次のとおりです。
describe('Controller: LogOutCtrl', function () {
// load the controller's module
beforeEach(module('angularApp', ['ui', 'appSettings']));
var LogOutCtrl,
scope;
// Initialize the controller and a mock scope
beforeEach(inject(function ($controller) {
scope = {};
LogOutCtrl = $controller('LogOutCtrl', {
$scope: scope
});
}));
it('should pass', function () {
expect(2+2).toBe(4); //aka some test
});
});
これは、grunt/karma を介してエラーとして返されます。
Error: Argument 'fn' is not a function, got string
これらを記述する他のいくつかの方法も調べました 。 Jasmine で AngularJS サービスをテストするにはどうすればよいですか?
私はAngularとJasmineのテストが初めてなので、助けていただければ幸いです。これはおそらく、テスト スクリプト用の Yeoman のテンプレートに問題があると思います。
ありがとう!