Supongamos que he escrito una aplicación que se puede invocar de la siguiente manera:
my_magic_app --foo=yes --bar=5003 --baz=best_baz_ever
Ahora supongamos que quiero probarlo haciendo que el rango de barras de un número a otro, sea sí o no, y baz sean todas las cadenas hasta una cierta longitud o cadenas de un diccionario determinado que tengo en un archivo. Además, no quiero todas las combinaciones, pero solo sujeto a una cierta condición (por ejemplo, la barra no puede ser superior a 5000 si foo es negativo).
Podría escribir un guión para hacer esta generación, aplicar la condición, etc., pero me preguntaba si ya existe algo así.
Requisitos:
El método de partición de categorías describe este tipo de generación de prueba basada en restricciones. TSLGenerator es una utilidad que puede generar pruebas para usted, dadas las restricciones. La salida tiene la forma de una especificación de prueba; son fáciles de leer, si desea desarrollar su propia forma de analizarlos en stubs o comandos de prueba unitaria.
El método y el software se describen en este módulo de un curso de posgrado de GATech.
Puede considerar una combinación de pruebas de todos los pares y pruebas de límites. La prueba de todos los pares es un método para reducir el número de vectores de prueba a aquellos que ejercitan todos los pares de combinaciones. Puede reducir en gran medida el número de casos de prueba, sin reducir apreciablemente la cobertura de la prueba. Obviamente, tendrá que satisfacer sus requisitos de prueba, pero este es realmente un gran método cuando puede usarlo. Cuando se prueban rangos de números, por lo general solo es realmente interesante verificar los límites. Por ejemplo, si una entrada puede ser 0-5000, los casos de prueba interesantes serán -1, 0, 1, 4999, 5000 y 5001.
Lo que he hecho en el pasado para las pruebas es armar un script que usa todos los pares para parámetros que tienen distintas opciones y pruebas de límites para parámetros numéricos.
No creo que pueda evitar escribir algún tipo de guión, pero ciertamente puede usar herramientas que otras personas han desarrollado. James Bach, un probador de software "famoso", ha escrito una herramienta de todos los pares que podría usar.
CPerkins
einpoklum
dramático
einpoklum