2016-07-20 17 views
2

Ich benutze Chutzpah, um meine Javascript-Unit-Tests mit TFS 2015 zu integrieren und es ist perfekt gemacht.How to Reference Pfade relativ, wenn Chutzpah HTML-Kabelbaum für Code-Abdeckung generieren

Aber bei der Aktivierung Code-Coverage-I-Fehler erhalten verwandte Wege

zum Beispiel in Datei

Error: Blanket.js encountered a cross origin request error while instrumenting the source files. This is likely caused by the source files being referenced locally (using the file:// protocol).

Denn wenn Chuzpe html-Datei für jede Testdatei erzeugen, sind die Referenzen Pfade nicht relativ:

<script type="text/javascript" src="file:///C:/_work/7b9b5f73/MyProject/packages/Chutzpah.4.2.3/tools/TestFiles/chutzpah_boot.js"></script> 

Ich habe Forschung darüber, wie ich Chuzpe Einstellungen so konfigurieren, dass der Pfad relativ und das Beste zu machen Übereinstimmende Antwort war , die besagt, wie die gesamte Vorlage außer Kraft gesetzt wird, um Platzhalter innerhalb der Standardvorlage zu überschreiben.

So gibt es eine Möglichkeit, chutzpah zu konfigurieren, Referenzpfad relativ zum Client-Code-Coverage-Ergebnis mit tfs zu verknüpfen.

meine chutzpah.json Datei wie folgt aussieht:

{ 
"Framework": "mocha", 
"TestHarnessLocationMode": "SettingsFileAdjacent", 
"RootReferencePathMode": "SettingsFileDirectory", 
"EnableCodeCoverage": "true", 
"CodeCoverageExcludes": [ 
    "bower_components\\*", 
    "node_modules\\*" 
], 
"References": [ 
    { 
     "Path": "node_modules/mocha/mocha.js" 
    }, 
    { 
     "Path": "node_modules/chai/chai.js" 
    }, 
    { 
     "Path": "node_modules/sinon-chai/lib/sinon-chai.js" 
    }, 
    { 
     "Path": "src/client/app/mochaConstrutor.js" 
    }, 
    { 
     "Path": "bower_components/jquery/dist/jquery.js" 
    }, 
    { 
     "Path": "bower_components/angular/angular.js" 
    }, 
    { 
     "Path": "bower_components/angular-sanitize/angular-sanitize.js" 
    }, 
    { 
     "Path": "bower_components/bootstrap/dist/js/bootstrap.js" 
    }, 
    { 
     "Path": "bower_components/extras.angular.plus/ngplus-overlay.js" 
    }, 
    { 
     "Path": "bower_components/moment/moment.js" 
    }, 
    { 
     "Path": "bower_components/angular-ui-router/release/angular-ui-router.js" 
    }, 
    { 
     "Path": "bower_components/toastr/toastr.js" 
    }, 
    { 
     "Path": "bower_components/angular-animate/angular-animate.js" 
    }, 
    { 
     "Path": "bower_components/angular-bootstrap/ui-bootstrap-tpls.js" 
    }, 
    { 
     "Path": "bower_components/angular-mocks/angular-mocks.js" 
    }, 
    { 
     "Path": "bower_components/sinon/index.js" 
    }, 
    { 
     "Path": "bower_components/bardjs/dist/bard.js" 
    }, 
    { 
     "Path": "bower_components/bardjs/dist/bard-ngRouteTester.js" 
    }, 
    ... 
], 
"Tests": [ 
    { 
     "Path": "src/client/app/admin/admin.controller.spec.js" 
    }, 
    { 
     "Path": "src/client/app/admin/admin.route.spec.js" 
    }, 
    ... 
] 
} 

this is the build task on tfs

Antwort

1

Derzeit gibt es keine Möglichkeit für Chutzpah in relative Pfade zu machen. Allerdings arbeite ich gerade an einer Änderung, die es mit einem eingebetteten Webserver laufen lässt, der Tools wie Blanket-Arbeit viel reibungsloser machen wird.