Ho lavorato su un grande progetto in cui gran parte del codice non è sotto test. Sono stato in grado di aggiungere alcuni test unitari alle aree funzionali del codice e anche di avviare i servizi di simulazione, ma ho una domanda su quanto fare il mocking su altre aree.
Questa applicazione e gli endpoint sono primari basati su remoting .NET, quindi ci sono molti "oggetti dati" che vengono manipolati sul canale.
Nel testare alcune funzioni che gestiscono on l'oggetto non sono sicuro se dovrei prendere in giro l'oggetto dati o creare un'istanza.
Ecco un esempio:
[TestMethod()]
public void Test_GetAgeTest()
{
//Arrange
var familyMemberData = new FamilyMemberData
{
Demographics = { DoB = new DVDateTime(2000, 01, 01, 0, 0, 0) }
};
var year = DateTime.Today.Year;
//Act
var age = Translators.Test_GetAge(familyMemberData);
//Assert
Assert.AreEqual(year - 2000, age);
}
I traduttori è una classe statica e GetAge è una funzione che esegue alcuni calcoli su FamilyMemberData per ottenere l'età (Test_GetAge lo espone pubblicamente).
FamilyMemberData dovrebbe essere un oggetto Mock o un falso, o in casi come questi basta usarli così com'è?