2016-08-03 14 views
0

Ich bin gerade dabei zu lernen, wie man meinen Typoskript Code mit VS2015, mit Resharper und Jasmine (v 2.4.1) testet und es wird nicht sehr glatt. Ich versuche, Typoskript-Sammlungen von https://github.com/basarat/typescript-collections zu verwenden. typescript-collections Jasmin Visual Studio 2015

Die folgende scheint gut zu funktionieren:

describe("collection Tests", 
() => { 

    it("collection should work", 
    () => { 

     expect("123").toBe("123"); 
    }); 
}); 

Wenn ich den Test von VS2015 (mit ReSharper) führen dann beginnt es meine Web-Browser und meldet, dass der Test bestanden.

Wenn ich Folgendes tun:

import * as Collections from 'typescript-collections'; 

describe("collection Tests", 
() => { 

    it("collection should work", 
    () => { 

     var collection = new Collections.Dictionary<string, string>(); 

     expect("123").toBe("123"); 
    }); 
}); 

i folgendes in meinem Browser sehen: No specs found

Einige Hinweise diese zur Arbeit zu kommen wäre wirklich hilfreich.

Antwort

2

Ich begegnete dies auch. Die Resharper-Unterstützung war in der Lage, mir einen Ausgangspunkt, aber keine vollständige Lösung zu bieten.

Typescript transpiliert Ihre Importanweisung in eine Art Modulformat (abhängig von Ihrer Typescript-Konfiguration). Der Resharper-Test-Runner führt die Tests ohne Kenntnis eines Modul-Loaders aus.

Andere Test-Runner enthalten manchmal eine Möglichkeit, einen Modullader einzubinden und zu konfigurieren, aber diese Option in Resharper scheint sehr begrenzt zu sein. Ihre Dokumentation bietet eine sehr kurze Beschreibung, wie eine Test-Harness-Datei zu konfigurieren ist, aber sie beruht auf Chutzpah-konformen Template-Platzhaltern. Dies ist ein hoher Reibungsweg. Selbst die Chuzpah-Dokumentation enthält einen dicken Absatz, der auf die Gefahren hinweist, die damit verbunden sind. Die Resharper-Tools für Javascipt-Tests sind nicht annähernd so ausgereift wie für andere VS-Sprachen. So sehr ich es vorziehe, in der VS-IDE zu bleiben und vertraute Tools zu verwenden, habe ich mich entschieden, bei den nativen JS-Tools zum Testen zu bleiben.