Un método de generación de pruebas bioinspirado utilizando un algoritmo de optimización de murciélagos discretizado y modificado
Autores: Arasteh, Bahman; Arasteh, Keyvan; Kiani, Farzad; Sefati, Seyed Salar; Fratu, Octavian; Halunga, Simona; Tirkolaee, Erfan Babaee
Idioma: Inglés
Editor: MDPI
Año: 2024
Acceso abierto
Artículo científico
2024
Un método de generación de pruebas bioinspirado utilizando un algoritmo de optimización de murciélagos discretizado y modificado
Categoría
Matemáticas
Subcategoría
Matemáticas generales
Palabras clave
Pruebas de software
Automatización
Datos de prueba
Cobertura de ramas
Optimización
Técnica bioinspirada
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 28
Citaciones: Sin citaciones
El proceso de desarrollo de software es incompleto sin pruebas de software. Los gastos de pruebas de software representan casi la mitad de todos los gastos de desarrollo. La automatización del proceso de pruebas se considera una técnica para reducir el costo de las pruebas de software. Un desafío de optimización NP-completo es generar los datos de prueba con la mayor cobertura de ramas en el menor tiempo. El objetivo principal de esta investigación es proporcionar datos de prueba que cubran todas las ramas de una unidad de software. Aumentar la velocidad de convergencia, la tasa de éxito y la estabilidad de los resultados son otros objetivos de este estudio. En este estudio se sugiere una técnica bioinspirada eficiente para generar automáticamente datos de prueba utilizando el Algoritmo de Optimización de Murciélagos Discretizado (BOA). Modificar y discretizar el BOA y adaptarlo al problema de generación de pruebas son las principales contribuciones de este estudio. En la primera etapa del método propuesto, el código fuente del programa de entrada se analiza estadísticamente para identificar las ramas y sus predicados. Luego, el BOA discretizado desarrollado genera de manera iterativa datos de prueba efectivos. La función de aptitud se desarrolló en función de la cobertura de ramas del programa. El método propuesto se implementó junto con el anterior. Los resultados de los experimentos indicaron que el método sugerido podría generar datos de prueba con aproximadamente el 99.95% de cobertura de ramas en un tiempo limitado (16 veces menor que el tiempo de algoritmos similares); su tasa de éxito fue del 99.85% y el número promedio de iteraciones requeridas para cubrir todas las ramas es de 4.70. Una mayor cobertura, mayor velocidad y mayor estabilidad hacen que el método propuesto sea adecuado como un método eficiente de generación de pruebas para software grande del mundo real.
Descripción
El proceso de desarrollo de software es incompleto sin pruebas de software. Los gastos de pruebas de software representan casi la mitad de todos los gastos de desarrollo. La automatización del proceso de pruebas se considera una técnica para reducir el costo de las pruebas de software. Un desafío de optimización NP-completo es generar los datos de prueba con la mayor cobertura de ramas en el menor tiempo. El objetivo principal de esta investigación es proporcionar datos de prueba que cubran todas las ramas de una unidad de software. Aumentar la velocidad de convergencia, la tasa de éxito y la estabilidad de los resultados son otros objetivos de este estudio. En este estudio se sugiere una técnica bioinspirada eficiente para generar automáticamente datos de prueba utilizando el Algoritmo de Optimización de Murciélagos Discretizado (BOA). Modificar y discretizar el BOA y adaptarlo al problema de generación de pruebas son las principales contribuciones de este estudio. En la primera etapa del método propuesto, el código fuente del programa de entrada se analiza estadísticamente para identificar las ramas y sus predicados. Luego, el BOA discretizado desarrollado genera de manera iterativa datos de prueba efectivos. La función de aptitud se desarrolló en función de la cobertura de ramas del programa. El método propuesto se implementó junto con el anterior. Los resultados de los experimentos indicaron que el método sugerido podría generar datos de prueba con aproximadamente el 99.95% de cobertura de ramas en un tiempo limitado (16 veces menor que el tiempo de algoritmos similares); su tasa de éxito fue del 99.85% y el número promedio de iteraciones requeridas para cubrir todas las ramas es de 4.70. Una mayor cobertura, mayor velocidad y mayor estabilidad hacen que el método propuesto sea adecuado como un método eficiente de generación de pruebas para software grande del mundo real.