Pregunta

Estoy escribiendo un método de prueba donde quiero que el SUT arroje una excepción cuando se encuentre en ciertas condiciones.El código se ve así:

- (void) testCantStartTwice
{
    XCTAssertThrows([self.sut start], @"");
}

Ahora, todo es bueno y la prueba pasa.Sin embargo, tengo xcode, establece un punto de interrupción de excepción para todas las excepciones de OBJC, que es bastante útil al probar una aplicación en el depurador.Como usted ahora, ahora, cuando ejecuto mi suite de prueba con ⌘u, ahora se detiene en esa prueba y parece que si está fallando, a pesar de que dice "Prueba sucedió".

¿Alguna forma de hacer el punto de interrupción no detener en esa prueba?

gracias y todo lo mejor

¿Fue útil?

Solución

Tal vez podría usar un punto de interrupción de falla de prueba en lugar de un punto de interrupción de una excepción cuando está probando.El video WWDC 2013 en la prueba de la unidad describió un flujo de trabajo bastante bueno para inspeccionar fallas de prueba.Esencialmente dijo:

  1. Establezca un punto de interrupción de falla de prueba que le permitirá inspeccionar las condiciones que causaron la falla.
  2. Si es necesario, establezca un punto de interrupción manual antes en la prueba y vuelva a ejecutar para que pueda pasar por las afirmaciones que conducen a la falla como de costumbre.
  3. Esto no es realmente una respuesta directa, pero por lo que sé, no creo que haya una manera de crear excepciones al punto de interrupción de la excepción.Espero que ayude a

Otros consejos

Tuve el mismo problema y estaba buscando una solución durante 2 horas.Probablemente no podemos hacer nada con eso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top