Domanda

Se qualcuno ha creato un piccolo diagnostico, web app interno che utilizza test (unità) come la sua logica, c'è sempre un motivo valido per farlo? Tenete a mente che Nunit deve essere distribuito e dove mai questo sito va.

Sono del parere che i programmi dovrebbero contenere una propria logica e possibilmente parti riutilizzabili (se disponibile), ma non avvolgere i test per la loro logica. I test hanno lo scopo di validazione per la logica del codice. Se si dice che i test stanno per essere la logica del codice, non è se avete bisogno di scrivere i test per convalidare i test? Perché è fondamentalmente sbagliato?

Suggerimento: Perché ora si sta tesatura tutti questi test insieme e interrelazione di loro, il che significa che non sono più dipendenti

(?).
È stato utile?

Soluzione

Utilizzo di un framework di test Unità per qualcos'altro di unit test di solito non è il percorso più corretto. Non è necessario scrivere dei test per il test di unità, dal momento che si scrive di loro prima e vedere li sicuro. Ecco come si sa che stanno lavorando correttamente. Sto cercando di indovinare il codice di prova scritta entro un'unità di framework di test non è banale, e se ho avuto un'applicazione di diagnostica per un pezzo critico di software, mi piacerebbe davvero essere certi che ha funzionato come dovrebbe.

Edit: Sembra che hai già fatto la tua mente, ma ha bisogno del supporto di esprimere il motivo per cui la strategia attuale è proprio l'ideale per, forse, altri membri del progetto. Se questo è il caso, vi consiglio di mettere il codice di dove è la bocca, e mettere insieme una piccola applicazione di esempio progettata in modo diverso. Se utilizzando un framework di unit test in questo caso specifico è stata una decisione di progettazione male, allora sarebbe mettere in chiaro come il sole.

Altri suggerimenti

Sono abbastanza sicuro che se si guarda a questa domanda TDD catalogo Anti-schemi , troverete che si sta commettendo sever anti-pattern.

Codice è il codice. Solo perché è etichettato come un test non significa che non è anche una utile applicazione.

Supponiamo abbiamo bisogno di scrivere un sacco di verifiche di beahviour. Perché utilizzando framework di test una cattiva idea? Shoudl abbiamo invece scriviamo un nuovo quadro con funzione identica e chiamare qualcosa di diverso?

Prendere una vista esterna. Questo applciation afferma di fare certe cose. Lo fa in modo corretto? in modo affidabile? Può essere mantenuto, migliorato? Capito?

Se è così, perché ti importa che capita di utilizzare un quadro di prova nella sua attuazione. Se il suo comportamento o la struttura sono difettosi poi critichiamo.

Una cosa bella su grande tecnologia è che ha applicazioni inaspettate.

Lo scopo di test di unità è quello di assicurarsi che la classe funziona come dovrebbe e secondo l'interfaccia. Quindi, se si utilizza il test di unità per qualche app test sembra che utilizzando affermare nella logica programma.

Se avete bisogno di qualche app test - applicarla e l'uso con test di unità. E 'forse per configurare qualcosa o per ottenere qualche interazione con l'utente.

Una delle altre ragioni che vedo - unit test sono scritti in base alle ipotesi su come funziona il tutto. Se il presupposto è test destro dovrebbero passare. Quando si aggiungono unit test di funzionalità farvi sentire sicuri che tutte le ipotesi sono ancora lì. Così ogni determinazione deve essere mantenuta così semplice come si può tenere. `s il motivo per cui non c'è bisogno di testare il codice di prova e senza bisogno di utilizzare il codice di prova in tutte le applicazioni di test.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top