Articulo de referencia

Pruebas de robustez

Las pruebas de robustez son cualquier metodología de aseguramiento de la calidad centrada en probar la robustez del software . También se han utilizado para describir el proceso...

Las pruebas de robustez son cualquier metodología de aseguramiento de la calidad centrada en probar la robustez del software . También se han utilizado para describir el proceso de verificación de la robustez (es decir, la corrección) de los casos de prueba en un proceso de prueba. ANSI e IEEE han definido la robustez como el grado en que un sistema o componente puede funcionar correctamente en presencia de entradas no válidas o condiciones ambientales adversas. [ 1 ]

El término "pruebas de robustez" fue utilizado por primera vez por el proyecto Ballista en la Universidad Carnegie Mellon . Realizaron pruebas de confiabilidad de sistemas operativos basadas en los tipos de datos de la API POSIX , produciendo fallos completos del sistema en algunos casos. [ 2 ] El término también fue utilizado por investigadores de OUSPG y VTT que participaron en el proyecto PROTOS en el contexto de las pruebas de seguridad de software. [ 3 ] Con el tiempo, el término fuzzing (que los expertos en seguridad utilizan para las pruebas de robustez, en su mayoría no inteligentes y aleatorias) se extendió para abarcar también las pruebas de robustez basadas en modelos.

Métodos

Inyección de fallos

La inyección de fallos es un método de prueba que se puede utilizar para comprobar la robustez de los sistemas. Durante el proceso, los ingenieros de pruebas inyectan fallos en los sistemas y observan su resiliencia. [ 4 ] Los ingenieros de pruebas pueden desarrollar métodos eficientes que faciliten la inyección de fallos para encontrar fallos críticos en el sistema. [ 5 ] [ 6 ]

Véase también

Referencias

  1. "Glosario estándar de terminología de ingeniería de software (ANSI)". The Institute of Electrical and Electronics Engineers Inc. 1991.
  2. Kropp, Koopman, Siewiorek. 1998. Pruebas automatizadas de robustez de componentes de software comerciales. Actas de FTCS'98. http://www.ece.cmu.edu/~koopman/ballista/ftcs98/ftcs98.pdf
  3. Kaksonen, Rauli. 2001. Un método funcional para evaluar la seguridad de la implementación de protocolos (tesis de licenciatura). Espoo. Centro de Investigación Técnica de Finlandia, Publicaciones VTT 448. 128 págs. + apéndice 15 págs. ISBN 951-38-5873-1(edición de tapa blanda) ISBN 951-38-5874-X(Edición en línea). https://www.ee.oulu.fi/research/ouspg/PROTOS_VTT2001-functional
  4. Moradi, Mehrdad; Van Acker, Bert; Vanherpen, Ken; Denil, Joachim (2019). "Inyección de fallos híbrida implementada en modelos para Simulink (demostraciones de herramientas)" . En Chamberlain, Roger; Taha, Walid; Törngren, Martin (eds.). Sistemas ciberfísicos. Diseño basado en modelos . Lecture Notes in Computer Science. Vol. 11615. Cham: Springer International Publishing. pp. 71–90 . doi : 10.1007/978-3-030-23703-5_4 . ISBN   978-3-030-23703-5. S2CID 195769468 . 
  5. "Optimización de la inyección de fallos en la cosimulación FMI mediante partición de sensibilidad | Actas de la Conferencia de Simulación de Verano de 2019" . dl.acm.org : 1–12 . 22 de julio de 2019. Consultado el 15 de junio de 2020 .
  6. Moradi, Mehrdad, Bentley James Oakes, Mustafa Saraoglu, Andrey Morozov, Klaus Janschek y Joachim Denil. "Explorando el espacio de parámetros de fallas usando inyección de fallas basada en aprendizaje por refuerzo." (2020).