Sé que esto se parece mucho a otras preguntas que ya se han hecho, pero en realidad es un poco diferente. En general, se considera que los programadores no son buenos para realizar la función de probar una aplicación. Por ejemplo:
Joel on Software - Cinco razones principales (incorrectas) por las que no tiene probadores (énfasis mío)
Ni siquiera piense en tratar de decirles a los graduados universitarios de CS que pueden venir a trabajar para usted, pero "todos tienen que pasar un tiempo en el control de calidad por un tiempo antes de pasar al código". He visto mucho de esto. Los programadores no son buenos evaluadores , y perderás a un buen programador, que es mucho más difícil de reemplazar.
Y en esta pregunta , una de las respuestas más populares dice (nuevamente, mi énfasis):
Los desarrolladores pueden ser probadores, pero no deberían serlo. Los desarrolladores tienden a evitar involuntariamente / inconscientemente usar la aplicación de una manera que pueda romperla. Eso es porque lo escribieron y lo prueban principalmente en la forma en que debería usarse.
¿Entonces la pregunta es si los programadores son malos en las pruebas? ¿Qué evidencia o argumentos hay para apoyar esta conclusión? ¿Los programadores solo son malos para probar su propio código? ¿Hay alguna evidencia que sugiera que los programadores son realmente buenos en las pruebas?
¿Qué quiero decir con "prueba"? No me refiero a pruebas unitarias ni a nada que se considere parte de la metodología utilizada por el equipo de software para escribir software. Me refiero a algún tipo de método de garantía de calidad que se utiliza después de que el código se haya creado y desplegado en lo que ese equipo de software llamaría el "entorno de prueba".