Come denominare i progetti di test

2

Supponiamo che io abbia alcuni moduli che ognuno di essi è il proprio componente

OraavreidiversiTestprojectchesiestendonosudiversimoduli.UnitB_UnitTest,UnitC_UnitTest,GUI_UnitB_ComponentTest,GUI_UnitB_UnitC_HDD_SystemTest

SeconcatenareogniModulenamecoinvoltoinunTestconunderscoreinomidiventerannoenormiel'ordinamentodiversolirenderebbenonunici.

Comedovrestinominareidiversiprogettiditest?

EDIT:
(1a)Checos'èun"progetto" in questo contesto?
Quando ci penso, penso a Progetti di Visual Studio. Potrei ulteriormente raggrupparli in Soluzioni, ma secondo me ha senso solo per le Unità e per i loro Unit_Tests.
(1b) Che tipo di framework di test stai usando (ad esempio un framework in stile xUnit)?
Sì, xUnit. Per C # userei NUnit, per C ++ vorrei andare con googletest o boost :: test.
(2) Perché non si mettono i test unitari nello stesso progetto del modulo che stanno testando?
Ha perfettamente senso raggruppare le unit test e le unità. Ma una volta che inizi con i test di integrazione potresti iniziare a incorrere in problemi. Potresti raggrupparli logicamente ma quale sarebbe la tua denominazione?
(3) Perché non hai un singolo progetto per tutti i test di integrazione?
Quali vantaggi ha per separare i test di integrazione della GUI-Unità B dalla GUI-Unità C in progetti separati?
Non ci avevo pensato, ma il mio istinto mi dice che questo può essere un problema quando team diversi lavorano sullo stesso Sistema CI.

    
posta Johannes 20.10.2016 - 16:09
fonte

1 risposta

2

Hai a disposizione diversi livelli di astrazione possibili: spazi dei nomi, classi, moduli, metodi, regioni. I progetti sono solo un possibile livello di astrazione; assicurati di sfruttare appieno gli altri.

Per quello che vale, probabilmente dovresti avere il minor numero possibile di progetti. Mantenere relazioni complesse tra troppi progetti può essere piuttosto difficile.

Regola empirica: utilizza un progetto di test per progetto in prova, che conterrà tutti i test per quel particolare progetto in prova, inclusi i test di unità e di integrazione. Separa questi tipi di test utilizzando diversi namespace, se lo desideri.

Per la denominazione, puoi semplicemente utilizzare NameOfProjectBeingTested_Tests .

    
risposta data 21.10.2016 - 02:05
fonte

Leggi altre domande sui tag