Sto provando ad aggiungere il test dell'unità per JavaScript nel mio sito web. Io uso VS2013 e il mio progetto è un sito Web ASP.NET.Come creare test QUnit con riferimento ad un'altra classe?
Sulla base delle raccomandazioni (http://www.rhyous.com/2013/02/20/creating-a-qunit-test-project-in-visual-studio-2010/) che ho fatto finora:
- Creato nuova applicazione ASP.NET
- importata QUnit (tramite NuGet)
- Into "Script" link aggiunti al JS- file nel mio sito Web originale (file PlayerSkill.js - contiene PlayerSkill class e trainings.js - contiene il Trainer e alcune altre classi)
- Creata nuova cartella "TestScripts"
- Aggiunto TrainingTests.js il file
Ha scritto semplice test:
test("Trainer should have non-empty group", function() { var group = "group"; var trainer = new Trainer(123, "Name123", group, 123); EQUAL(trainer.getTrainerGroup(), group); });
Avviso: il mio file trainings.js tra gli altri contiene
function Trainer(id, name, group, level) {
...
var _group = group;
this.getTrainerGroup = function() { return _group ; }
};
Quando eseguo la mia prova vedo errore: Trainer non è definito .
Sembra che il riferimento alla mia classe non sia riconosciuto. Mi sembra che il file di collegamento non sia abbastanza, ma cosa mi è mancato?
Si prega di contribuire ad aggiungere riferimento al file originale con classe ed eseguire test di unità.
Grazie.
P.S. Domanda 2: Posso aggiungere un riferimento a 2 file (il mio test di unità richiederà un'altra classe che si trova in un altro file)? Come?
Per quanto riguarda prima parte del commento: premendo Ctrl + Spazio con la "" non aiuta: VS non permette di scegliere il file dal sito web corrente. – Budda
Riguardo alla 2a parte: consiglia di creare controller MVC e Razor View nel mio progetto originale? Voglio chiaramente evitare questo. Ma se li creo in Test-project ... come risolverà il problema? Non riesco ancora a fare riferimento a file esterni. Ti consiglia di caricare file JS esterni in modo dinamico? – Budda
@Budda Informazioni sulla prima parte VS ** risolverà il percorso se aggiungi il file come collegato, se non lo hai ancora aggiunto. Ho già provato e funziona. Per quanto riguarda la seconda parte, in genere le persone creano progetti separati per i test unitari in modo da poter creare un progetto MVC separato per javascript, a seconda delle dimensioni del progetto e della quantità di test delle unità. IMHO il * modo giusto * è quello di creare un'attività di gulp e copiare i file di script prima del test, ma questo può essere complicato per progetti molto semplici. – devconcept