¿Deberíamos probar las salidas de la consola?

Estoy trabajando con un código heredado que tiene algunosSystem.out.print comandos en sí mismo. Mi complemento eCobertura muestra estas líneas en rojo, por lo que quiero probarlas por unidad.

aquí en stackoverflow encontré una manera de probar las salidas de la consola, lo cual es muy interesante.

Así es como lo hago:

        private final ByteArrayOutputStream outContent = new ByteArrayOutputStream();

        @Before
        public void setUpStreams() {
            System.setOut(new PrintStream(outContent));
        }

        @After
        public void cleanUpStreams() {
            System.setOut(null);
        }

        @Test
        public void out() {
            System.out.print("Some message from the system");
            assertEquals("Some message from the system", outContent.toString());
        }

Hasta ahora todo bien, la prueba se pone verde, pero cuando vuelvo a ejecutar el complemento de cobertura de código, recibo este mensaje:

Excepción en el hilo "Thread-0". ) en net.sourceforge.cobertura.coveragedata.SaveTimer.run (SaveTimer.java:31) en java.lang.Thread.run (Thread.java:662)

Tengo algunas dudas:

¿Es correcto intentar la prueba unitaria?System.out.print()'s?¿Es compatible eCoberturain con este tipo de prueba?Si eCobertura no es compatible con este tipo de prueba, ¿por qué muestra la línea roja?¿Hay algo mal en mi prueba?Estoy usando jUnit 4.11 ¿crees que esto tiene algo que ver con eso?¿Por qué eCobertura me está dando este error?

Respuestas a la pregunta(2)

Su respuesta a la pregunta