私は単体テストが初めてで、物事を把握しようとしています。私はこのチュートリアルに従うために最善を尽くしています: http://www.yearofmoo.com/2013/01/full-spectrum-testing-with-angularjs-and-testacular.html#testing-filters . 私の AngularJS アプリには、テストする必要があるフィルターがあります。Node、Testacular、および Jasmine をセットアップして適切に実行しています。テストしようとしているフィルターは非常に単純です。
myApp.filter('bill_ship', function () {
return function (userData) {
var output = "---";
switch (userData) {
case "0":
output = "Billing";
break;
case "1":
output = "Shipping";
break;
}
return output;
}
});
テストが正しく設定されていると思っていましたが、一貫して失敗します。
describe("Unit Testing: Filters - ", function() {
beforeEach(angular.mock.module('prismApp', ['bill_ship']));
//BillShip Filter
it('should have a bill-ship filter: ', inject(function($filter){
expect($filter('bill_ship')).not.toEqual(null);
}));
});
次のメッセージで失敗します: エラー: 引数 'fn' は関数ではありません。bill_ship から文字列を取得しました。
だから...私はどこでこれを間違っているのですか?