Come dovrei nominare questa classe di helper? [chiuso]

5

Di solito quando scrivo i test unitari creo una classe helper con metodi di estensione. Uso questi metodi esclusivamente per generare dati generici per cose che sono troppo pigro per digitare. Di solito attribuisco a queste classi qualcosa di rilevante per la classe in esame: ad esempio, seguirò un modello come TestHelper.cs.

Ho letto che le classi di aiuto non promuovono un buon design; tuttavia conosco bene i principi SOLIDI e non vedo come utilizzare gli "aiutanti" nel modo descritto viola qualsiasi principio.

Penso che il problema che sto affrontando sia con il nome del mio "TestHelper" ... Dovrei semplicemente proporre un nuovo schema di denominazione o sto davvero violando un principio SOLIDO utilizzando questi helper?

    
posta Robotsushi 12.09.2011 - 22:45
fonte

3 risposte

5

Questo non è affatto anti-SOLID, ma potresti prendere in considerazione il modello Oggetto Madre , che risolve esattamente lo stesso problema in modo simile e ha il vantaggio di darti un suffisso funky da usare nei nomi delle tue classi.

Inoltre, come tutti i modelli, perché hanno un nome, qualsiasi nuovo arrivato nel team può semplicemente definire il termine "Oggetto madre" e trovare una grande quantità di informazioni, spiegando che cosa hai fatto.

    
risposta data 12.09.2011 - 23:06
fonte
3

Non vedo come questo viola SOLID o si riferisce a SOLID affatto.

In termini di denominazione delle classi, se lo scopo di generare dati di test, puoi utilizzare una convenzione di denominazione come <test name>DataGenerator e un metodo di estensione GetTestData per renderla il più chiara possibile.

    
risposta data 12.09.2011 - 22:50
fonte
1

Ecco alcuni suggerimenti, puoi usare:

  • Mocks
  • [AssemblySetUp] *
  • [Fixture Setup] *

* (da NUnit, o simili in altri framework)

    
risposta data 12.09.2011 - 23:01
fonte

Leggi altre domande sui tag