久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

使用 Karma (Jasmine) 測試 AngularJS 工廠

Testing an AngularJS factory with Karma (Jasmine)(使用 Karma (Jasmine) 測試 AngularJS 工廠)
本文介紹了使用 Karma (Jasmine) 測試 AngularJS 工廠的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

限時送ChatGPT賬號..

我正在努力使用 Karma + Jasmine 測試 AngularJS 工廠.

I'm struggling with testing an AngularJS factory using Karma + Jasmine.

我無法將我的工廠注入到 OfficerValidationService 變量中.

I am unable to inject my factory to OfficerValidationService variable.

我做錯了什么?

注意:文件加載正確

工廠:

'use strict';

angular.module('darthvader').factory('OfficerValidationService', [function(){

  var OfficerValidationService = {};

  OfficerValidationService.something = function() {
    return true;
  };

  return OfficerValidationService;

}]);

代碼:

'use strict';

(function() {
  describe('OfficerValidationService Spec', function() {

    var OfficerValidationService;

    beforeEach(function() {
      angular.module('darthvader');
    });

    beforeEach(module('darthvader', function($provide) {
      $provide.value('OfficerValidationService', OfficerValidationService);
    }));

    it('is very true', inject(function(OfficerValidationService){
      alert('=====' + OfficerValidationService + '=====');
      var output = OfficerValidationService.something();
      expect(output).toBeTruthy();
    }));

  });
}());

輸出:

Running "karma:unit" (karma) task
INFO [karma]: Karma v0.12.17 server started at http://localhost:9876/
INFO [launcher]: Starting browser PhantomJS
INFO [PhantomJS 1.9.7 (Mac OS X)]: Connected on socket yc_qTseOCArRtZLAXSTZ with id 97647403
ALERT: '=====undefined====='
PhantomJS 1.9.7 (Mac OS X) OfficerValidationService Spec is very true FAILED
    TypeError: 'undefined' is not an object (evaluating 'OfficerValidationService.something')
        at /Users/chuck/Desktop/sandbox/dashboard.darthvader/test/karma/unit/services/officerValidationService.js:25
        at invoke (/Users/chuck/Desktop/sandbox/dashboard.darthvader/public/lib/angular/angular.js:3917)
        at workFn (/Users/chuck/Desktop/sandbox/dashboard.darthvader/public/lib/angular-mocks/angular-mocks.js:2155)
    undefined
PhantomJS 1.9.7 (Mac OS X): Executed 28 of 28 (1 FAILED) (0.102 secs / 0.131 secs)

推薦答案

需要調用angular.injector:

'use strict';

(function() {
  describe('OfficerValidationService Spec', function() {

    var OfficerValidationService;

    beforeEach(function() {
      angular.module('darthvader');
    });

    beforeEach(inject(function() {
      var $injector = angular.injector(['darthvader']);
      OfficerValidationService = $injector.get('OfficerValidationService');
    }));

    it('is very true', function(){
      var output = OfficerValidationService.something();
      expect(output).toBeTruthy();
    });

  });
}());

這篇關于使用 Karma (Jasmine) 測試 AngularJS 工廠的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

How can I get my jasmine tests fixtures to load before the javascript considers the document to be quot;readyquot;?(在 javascript 認為文檔“準備好之前,如何讓我的 jasmine 測試裝置加載?) - IT屋-程序員軟件開發技術
What do jasmine runs and waitsFor actually do?(jasmine 運行和等待實際上是做什么的?)
How to provide mock files to change event of lt;input type=#39;file#39;gt; for unit testing(如何提供模擬文件來更改 lt;input type=filegt; 的事件用于單元測試)
How to unit test a chained method using Jasmine(如何使用 Jasmine 對鏈式方法進行單元測試)
How do I inject $rootScope into an AngularJS unit test?(如何將 $rootScope 注入 AngularJS 單元測試?)
Jasmine - How to spy on a function call within a function?(Jasmine - 如何監視函數中的函數調用?)
主站蜘蛛池模板: 色橹橹欧美在线观看视频高清 | 久久久.com| 超碰最新在线 | 精品一区视频 | 日韩欧美国产一区二区三区 | 国产欧美一区二区三区久久 | 精品久久久久久久人人人人传媒 | 最新中文字幕在线播放 | 免费在线一区二区三区 | av一级久久| 91极品欧美视频 | 亚洲人成人一区二区在线观看 | 中文字幕成人av | 午夜看片网站 | 一区二区三区电影在线观看 | 欧美视频1区 | 亚洲久久一区 | 欧美日韩中文在线 | 视频羞羞| 国产精品免费高清 | 国产成人啪免费观看软件 | 国产精品久久久久久久久久久久 | 国产精品18久久久久久白浆动漫 | 久久精品国产99国产精品 | 免费观看av网站 | 中文字幕亚洲视频 | 欧美久久不卡 | 国产在线视频在线观看 | 在线国产视频 | 18av在线播放 | 久久午夜视频 | 亚洲国产精品久久久久婷婷老年 | 精品国产一区二区三区久久久蜜月 | 久久国产精品一区二区三区 | 日韩视频三区 | 日韩不卡一二区 | 久久爆操| 久久久久久久久久久久久久久久久久久久 | 97国产一区二区精品久久呦 | 国产高清在线视频 | 欧美日韩一区在线播放 |