Estoy creando una biblioteca estática para iOS y estoy tratando de obtener datos de cobertura de código para sus pruebas unitarias. Estoy usando CoverStory para visualizar los archivos de cobertura de código generados.Resultados de cobertura de código incorrectos en XCode al probar excepciones
Obtengo la información correcta para la mayoría de las pruebas.
Sin embargo, cualquier prueba que verifique que se debe lanzar una excepción no se marca como probada.
Por ejemplo el método
- (void)shouldThrow:(BOOL)throw {
if (throw)
@throw [NSException exception...];
NSLog(@"not thrown");
}
Probado con la prueba
- (void)testShouldThrow {
STAssertThrows([myObject shouldThrow:YES], @"Should have thrown an exception");
STAssertNoThrow([myObject shouldThrow:NO], @"Should not have thrown an exception");
}
pasa todas las pruebas (es decir, la excepción es que es lanzado correctamente). Sin embargo, la cobertura del código no se muestra al 100%: la línea con @throw
activada no está marcada como probada.
¿Alguna idea?
Eso es lo que le tenía miedo :((He establecido puntos de interrupción en la línea, así que sé que está siendo probado, pero sería bueno poder automatizar esa prueba). – deanWombourne