Sono nuovo per l'intera unità di prova, quindi scusate la mia mancanza di esperienza. Ho letto molti materiali che dicono che nessun test dovrebbe dipendere da altri, i test unitari sono completamente indipendenti l'uno dall'altro. Puoi davvero farlo nella realtà? Sto avendo il seguente esempio: ho poche classi di entità che dipendono l'una dall'altra, basate su un certo schema di database (sto usando Linq- a SQL per generarle) Ora, se voglio testare ogni classe di modello che devo costruire un oggetto della classe del modello, costruire un oggetto di prova di ciascuna delle sue dipendenze, assegnarle alle proprietà dell'oggetto e quindi mantenere l'oggetto prima di controllare il contesto e asserire che funzioni effettivamente.I test delle unità del modello possono essere veramente indipendenti e come [ASP.NET MVC]
Questo ovviamente rende molto più difficile eseguire test che non dipendano l'uno dall'altro, o che non vengano eseguiti in una sequenza specifica (io non un'istanza di tipo Content da creare prima di avere almeno un'istanza di tipo ContentType) La dipendenza, almeno a livello di modello, è presente e non può essere evitata.
Per favore, mi critichi molto, se pensi che io abbia torto. Voglio imparare.
P.S. Solo per menzionare che sto lavorando su un'app ASP.NET MVC e test con NUnit se questo ha senso
Vuol dire che dovrei testare meglio i controller, o nel caso io usi un pattern di repository, testare il repository, giusto? – xantrus
Dovresti testare (più o meno) tutto o il tuo codice (ogni unità in isolamento), ma il pattern Repository è un buon esempio di accoppiamento lento. Ciò significa che è possibile testare unitamente i controller in modo indipendente dai repository di cemento e, in altri test di unità, è possibile testare i repository in calcestruzzo (senza trattare con i controller). –