Ejemplo de prueba unitaria con OCUnit
Estoy realmente luchando para entender las pruebas de unidad. Entiendo la importancia de TDD, pero todos los ejemplos de pruebas de unidad que leí parecen ser extremadamente simples y triviales. Por ejemplo, probar para asegurarse de que una propiedad está establecida o si la memoria está asignada a una matriz. ¿Por qué? Si yo código..alloc] init]
, ¿realmente necesito asegurarme de que funcione?
Soy nuevo en el desarrollo, así que estoy seguro de que me estoy perdiendo algo aquí, especialmente con toda la locura que rodea a TDD.
Creo que mi principal problema es que no puedo encontrar ningún ejemplo práctico. Aquí hay un método.setReminderId
Eso parece ser un buen candidato para la prueba. ¿Cómo sería una prueba de unidad útil para asegurarse de que esto funciona? (usando OCUnit)
- (NSNumber *)setReminderId: (NSDictionary *)reminderData
{
NSNumber *currentReminderId = [[NSUserDefaults standardUserDefaults] objectForKey:@"currentReminderId"];
if (currentReminderId) {
// Increment the last reminderId
currentReminderId = @(currentReminderId.intValue + 1);
}
else {
// Set to 0 if it doesn't already exist
currentReminderId = @0;
}
// Update currentReminderId to model
[[NSUserDefaults standardUserDefaults] setObject:currentReminderId forKey:@"currentReminderId"];
return currentReminderId;
}