Prueba de programas
En muchos casos, el analista trabaja de manera cercana con el usuario para desarrollar un conjunto eficaz y de gran alcance de casos de prueba basados en el modelo esencial y el modelo de implantación del usuario. Este proceso puede llevarse a cabo en paralelo con las actividades de implantación del diseño y de la programación, para que, cuando los programadores terminen de escribir sus programas y de realizar sus propias pruebas locales, el equipo del analista/usuario esté listo con sus propios casos de prueba.
Existen distintas estrategias de prueba, las dos más comunes se conocen como prueba ascendente y descendente. El enfoque ascendente empieza por probar módulos individuales separadamente (prueba de módulos). Luego, los módulos individuales se combinan para forma unidades que se probaran en masas (pruebas de subsistemas). Finalmente, todos los componentes del sistema se combinan para probarse (prueba del sistema).
El enfoque de prueba descendente empieza con un esqueleto del sistema; es decir, la estrategia de prueba supone que se han desarrollado los módulos ejecutivos de alto nivel del sistema, pero que los de bajo nivel existen sólo como módulos vacíos; un ejemplo de módulo vacío es uno que no procesa nada, sino que simplemente termina luego de ser llamado.
También existen diferentes tipos de pruebas, tales como:
- Prueba funcional: Su propósito es asegurar que el sistema realiza sus funciones normales de manera correcta. Así, los casos de prueba se desarrollan y se alimentan al sistema; las salidas se examinan para ver si son correctos.
- Prueba de recuperación: El propósito de este tipo de prueba es asegurar que el sistema pueda recuperarse adecuadamente de diversos tipos de fallas, como: fallas de hardware, fallas de corriente, fallas en el sistema operativo, etc.
- Prueba de desempeño: El propósito de este tipo de prueba es asegurar que el sistema pueda manejar el volúmen de datos y transacciones de entrada especificados en el módulo de implantación del usuario, además de asegurar que tenga el tiempo de respuesta requerido.
Para poder realizar una excelente prueba se necesita de tres cosas: un plan de prueba, descripciones de pruebas y procedimiento de prueba. Un plan de prueba es un documento organizado que describe las actividades de prueba. Un documento de planeación de pruebas típico contendrá la siguiente información:
- Propósito de la prueba: cuál es el objetivo de la prueba, y qué parte del sistema se está probando.
- Localización y horario de la prueba: dónde y cuando se hará.
- Descripción de la prueba: descripción de las entradas que se proporcionarán al sistema, y las salidas y resultados que se anticipan.
- Procedimiento de prueba: descripción de cómo se deben preparar y presentar los datos de prueba al sistema; cómo capturar los resultados de salida, cómo analizar los resultados de las pruebas, y cualesquiera otros procedimientos operacionales que se deben observar.
Fuente: Apunte Análisis y diseño de sistemas del ITLP.edu.mx