Exemplo de teste de unidade com o OCUnit

Eu estou realmente lutando para entender o teste de unidade. Eu entendo a importância do TDD, mas todos os exemplos de testes de unidade que eu li parecem ser extremamente simples e triviais. Por exemplo, teste para certificar-se de que uma propriedade está configurada ou se a memória está alocada para uma matriz. Por quê? Se eu codificar..alloc] init], eu realmente preciso ter certeza de que funciona?

Eu sou novo no desenvolvimento, então tenho certeza que estou perdendo alguma coisa aqui, especialmente com toda a mania que cerca o TDD.

Eu acho que o meu principal problema é que não consigo encontrar nenhum exemplo prático. Aqui está um métodosetReminderId que parece ser um bom candidato para testes. Como seria um teste unitário útil para se certificar de que isso está funcionando? (usando o 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;
}

questionAnswers(1)

yourAnswerToTheQuestion