Ich schreibe Unit Testfälle mit karma-jasmine
für meine angular
Anwendung. Ich habe eine Konfiguration constant
etwas wie folgt aus:Muss ich Komponententest für Konfigurationskonstanten schreiben?
app.constant('Configuration', {
BASE_URL: 'http://localhost:3030',
SUPPORTED_BROWSERS: ['Chrome', 'Firefox', 'CriOs']
});
Ich muss das Gerät zum Testen der Configuration
konstant testen. Ich weiß nicht, ob es Sinn macht oder nicht, eine Konstante zu testen. Meine Anzüge wird so etwas wie dieses:
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);
});
});
Ich bin nicht sicher, ob es gut ist, etwas zu testen, die konstant ist, enthält keine Logik und wird hart codiert.
Ich denke nicht, es ist eine gute Praxis, "hart codierte" Array zu testen. Der Komponententest dient dazu, die Logik, die Bedingungen usw. zu testen. Es wird jedoch nicht schaden, wenn Sie den obigen Test hinzufügen möchten. – Neha
Ganz zu schweigen von Test hat mehrere Bugs drin – charlietfl
@charlietfl Ich schrieb nur die Pseudo-Code funktioniert nicht Testanzüge. –