Test dell'unità C #: simula un tipo di reso

0

Qual è il modo migliore per simulare un tipo di ritorno se non ci interessa lo stato attuale dell'oggetto.

Ad esempio, sto prendendo in giro un metodo il cui tipo restituito è: IEnumerable<Document>

Ora, posso aggiungere il pacchetto Nuget pertinente e aggiungere lo spazio dei nomi necessario in modo che il tipo Documento sia definito, tuttavia in realtà non ho bisogno di testare nulla sull'oggetto restituito e ritengo che sia eccessivo includere il Nuget e aggiungere spazio dei nomi.

Quali altre alternative sono disponibili invece di includere il riferimento?

    
posta Shamim Hafiz 28.11.2018 - 20:57
fonte

1 risposta

4

Se non ti interessa lo stato che il metodo restituisce nel test unitario, questo è un odore di codice. È necessario rivalutare il design di questo metodo poiché è probabile che esegua troppe cose contemporaneamente.

Il metodo dovrebbe generalmente restituire nulla se altera lo stato del suo oggetto proprietario. Questa è non una dura regola , ma se ciò che viene reso è abbastanza complicato da dover essere deriso, allora suppongo che il tuo metodo non sia una delle eccezioni alla regola.

I metodi dovrebbero generalmente alterare lo stato o restituire dati, ma non entrambi. Riforma questo metodo in due metodi separati.

    
risposta data 28.11.2018 - 21:07
fonte

Leggi altre domande sui tag