Cobertura de código

De Wikipedia, la enciclopedia libre

La cobertura de código es una medida (porcentual) en las pruebas de software que mide el grado en que el código fuente de un programa ha sido comprobado con pruebas de software. Sirve para determinar la calidad del test que se lleve a cabo[1]​ y para determinar las partes críticas del código que no han sido comprobadas y las partes que ya lo fueron, además se puede utilizar como técnica de optimización dentro de un compilador optimizador para llevar a cabo una eliminación de código muerto, más específicamente sirve para detectar código inalcanzable

La cobertura de código fue uno de los primeros métodos inventados para las pruebas de software sistemáticas. La primera referencia fue publicada por Miller y Maloney en Communications of the ACM en 1963.[2]

La cobertura de código es una consideración en la certificación de seguridad de los equipos de aviación. Las pautas que indican que equipos de aviación están certificados por la Administración Federal de Aviación (FAA) se documentan en DO-178B[3]​ y DO-178C.[4]​ Es más, la cobertura máxima del código es un requisito en los estándares de calidad de software modernos como ISO 26262 o ICE 61508.[5]

Véase también[editar]

Referencias[editar]

  1. David Alonso Ríos. «Cobertura de código». Consultado el 17 de enero de 2013. 
  2. Joan C. Miller, Clifford J. Maloney (febrero de 1963). «Systematic mistake analysis of digital computer programs». Communications of the ACM (New York, NY, USA: ACM) 6 (2): 58-63. ISSN 0001-0782. doi:10.1145/366246.366248. 
  3. RTCA/DO-178B, Software Considerations in Airborne Systems and Equipment Certification, Radio Technical Commission for Aeronautics, December 1, 1992
  4. RTCA/DO-178C, Software Considerations in Airborne Systems and Equipment Certification, Radio Technical Commission for Aeronautics, January, 2012.
  5. Arthur Baars, Verónica Hernández, Tanja Vos (2009). «Pruebas estructurales evolutivas con EvoTest Framework». Consultado el 17 de enero de 2013. 

Enlaces externos[editar]