2014-07-09 10 views
5

Il mio team e io stiamo lavorando su un'applicazione web che ha una buona dose di codice angolare e test Jasmine. Stiamo utilizzando Visual Studio e il runner di test Jasmine integrato di ReSharper. Per il bene dei nostri Reshaper file di test JS hanno tutti configurazione riferimenti percorsi in alto in questo modoCondivisione di percorsi di riferimento in ReSharper Test JavaScript

/// <reference path="/path/to/somefile.js" /> 

Abbiamo un sacco di questi riferimenti. Per ogni nuovo file di test, dobbiamo aggiungere questi riferimenti. Se avessimo un nuovo componente o una libreria esterna, dovremmo aggiungere un altro riferimento a quasi tutti i nostri file di test esistenti. Questo è particolarmente vero per includere moduli angolari esterni.

Esiste un modo per creare un file di riferimento condiviso per i test js nel risharper? Questo diventa davvero fondamentale quando la tua soluzione contiene tonnellate di file più piccoli

risposta

4

Sì, puoi semplicemente creare un file di riferimento con tutti gli altri riferimenti in esso contenuti. E poi hai solo bisogno di includere quel file di riferimento nei tuoi file di test js.

Nel file di test js (spec) è sufficiente includere questo:

/// <reference path="defaultReferences.js" /> 

E nei defaultReferences.js File si aggiungono tutti i riferimenti hai bisogno di:

/// <reference path="../../App/lib/jquery/jquery-2.1.0.js" /> 
/// <reference path="../../App/lib/jquery/jquery.cookie.js" /> 
/// <reference path="../../App/lib/angular-1.3.0-beta.3/angular.js" /> 

Allora avete solo per aggiungere un nuovo file di riferimento in DefaultReferences invece di tutti

Aggiornamento

Dopo questione d' @sarin seguito, cercherò di spiegare come la mia struttura di cartelle, nel mio progetto appare come segue: (ho anche ReSharper 8.2 e gelsomino 2.0)

.. [WebApp]
.. .. [lib]
...... [angolare]
...... references.js
.... [JS]
...... [account]
. ....... accountController.js
...... [carrello]
........ basketService.js
.... [test]
...... [aiutanti]
...... [spec]
........ [account]
..... ..... accountControllerSpec.js
........ [carrello]
.......... basketServiceSpec.js

poi nella mia basketSerivceSpec.js, poi riferimenti assomiglia a questo:

/// <reference path="../../../lib/references.js" /> /// <reference path="../../../js/basket/basketService.js" />

Quindi, se siete experie che il programma di ricerca non sta eseguendo il test, quindi guarda il percorso dei riferimenti.

+0

Grazie. Lo proverò e ti farò sapere come funziona – cecilphillip

+0

sembra funzionare solo per me se il file references.js è nella stessa directory di tutti i test di gelsomino. Ciò significa che non posso strutturare i test in una struttura di directory ... struttura disordinata o test disordinati ... sigh .. Resharper 8.2/Jamsine 2 – sarin

+0

Perché non puoi inserire il file references.js in nessun altro luogo oltre ai tuoi test? Guarda la risposta aggiornata per vedere come è la mia struttura di directory. –

Problemi correlati