UnitTests per principianti per la classe MVP Presenter

0

Nella mia applicazione, ho un modulo per le impostazioni utente con circa 20 checkbox e pochi altri controlli. Lo stato verificato, lo stato abilitato ei testi di questi controlli sono associati a circa 60 proprietà della classe presenter, che sta tracciando le informazioni dalla classe del modello con la logica aziendale.

Ora ho scritto un metodo di test unitario "TestLoadData", dove viene chiamato il metodo LoadData della classe presenter (che a sua volta chiama il metodo LoadData nel modello, che quindi notifica al presentatore).

Dopo questo, ho 60 asserzioni sulle proprietà della classe presenter, seguite da 40 asserzioni sulle proprietà della classe del modello (20 "enabled" -properties sono solo presenter), perché voglio controllare se ogni valore è caricato correttamente.

Quindi ho un TestMethod molto grande (100 linee), che ritengo sia un pessimo progetto di test.

(Tutti i numeri sono approssimati)

È meglio scrivere un piccolo metodo di prova a 5 righe per ogni proprietà? Quanto peggio è avere questo grande metodo di prova?

Fa davvero la differenza? Sono forse troppo pigro per scrivere 60 piccoli metodi di test?

O il modulo delle impostazioni dovrebbe dipendere da più di una classe relatore, ognuno di essi detiene solo piccole parti delle 60 proprietà?

    
posta MW1971 05.02.2015 - 08:32
fonte

1 risposta

1

Se fossi in te scriverò dei piccoli test per ciascuno, perché poi è molto più accattivante ciò che è andato storto. Mentre con un grande test ottieni solo 1 bit di informazioni quando esegui il test (o tutto va bene o qualcosa non va bene), se hai un test per ogni proprietà vedrai quale (più) è rotto.

Se il caricamento effettuato richiede un'inizializzazione significativa, inserirlo in un metodo test-init. I framework di test unitari di solito consentono di definire un metodo che viene eseguito prima di ogni metodo di test in una classe.

    
risposta data 05.02.2015 - 12:17
fonte

Leggi altre domande sui tag