2016-06-27 26 views
0

私のangularアプリケーションにkarma-jasmineを使ってユニットテストケースを書いています。私はユニットテストにConfiguration定数をテストする必要があり設定定数の単体テストを記述する必要はありますか?

app.constant('Configuration', { 
    BASE_URL: 'http://localhost:3030', 
    SUPPORTED_BROWSERS: ['Chrome', 'Firefox', 'CriOs'] 
}); 

:私はこのような構成constant何かを持っています。私はそれが理にかなっているか定数をテストしていないか分かりません。

describe('Configuration.SUPPORTED_BROWSERS', function() { 

    it('should say only 3 browsers are supported', function() { 
    expect(Configuration.SUPPORTED_BROWSERS.length).toBe(3); 
    }); 
    it('should say crios is supported', function() { 
    var temp = Configuration.SUPPORTED_BROWSERS.some(function(browser) { 
     return browser.toLowerCase() === 'chrome'; 
    }); 
    expect(temp).toBe(true); 
    }); 
    it('should say firefox is supported', function() { 
    var temp = Configuration.SUPPORTED_BROWSERS.some(function(browser) { 
     return browser.toLowerCase() === 'firefox'; 
    }); 
    expect(temp).toBe(true); 
    }); 
    it('should say chrome is supported', function() { 
    var temp = Configuration.SUPPORTED_BROWSERS.some(function(browser) { 
     return browser.toLowerCase() === 'crios'; 
    }); 
    expect(temp).toBe(true); 
    }); 
}); 

私はそれが一定である何かをテストするために良いかどうかを、任意のロジックが含まれていないとをハードコーディングされていることを確認していない:私のスーツは、このようなものになります。

+0

"ハードコードされた"配列をテストするのは良い方法です。単体テストはロジック、条件などをテストすることです。上記のテストを含める場合は問題ありません。 – Neha

+0

テストにはいくつかのバグがあります。 – charlietfl

+0

@charlietfl私はちょうど、テストスーツではない擬似コードを書いています。 –

答えて

0

いいえ、定数の単体テストケースを書くのは良い習慣ではありません。単体テストは主に、機能しているかどうかに関わらず機能しているかどうかで行われます。定数の場合、チェックするロジックはありません。

関連する問題