Directriz: Técnicas de prueba por riesgo de calidad / tipo de prueba
Esta directriz es una presentación detallada de todas las áreas de prueba clave y sus objetivos asociados, técnicas, oráculos, herramientas y criterios de éxito.
Relaciones
Elementos relacionados
Descripción principal

    Pruebas de integridad de datos y de base de datos

Las bases de datos y los procesos de base de datos deben probarse como subsistema independiente. Esta prueba debe probar los subsistemas sin la interfaz de usuario de destino de la prueba como interfaz de los datos. La búsqueda adicional en el sistema de gestión de bases de datos (DBMS) debe efectuarse para identificar las herramientas y las técnicas que pueden existir para proporcionar soporte a las pruebas identificadas en la tabla siguiente.

Objetivo de la técnica:

Ejercer métodos de acceso a base de datos y procesos independientes de la UI para que pueda observar y registrar los comportamientos de destino que funcionan incorrectamente o los datos dañados.

Técnica:

Invoque cada método de acceso a base de datos y procesos, sembrando cada uno con datos válidos o no válidos o solicitudes de datos.

Inspeccione la base de datos para asegurarse de que los datos se han rellenado tal como se pretendía y que todos los sucesos de la base de datos se han producido adecuadamente, o revise los datos devueltos para garantizar que se han recuperado los datos correctos por los motivos correctos.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

Configuraciones básicas de Imager y Restorer

herramientas de copia de seguridad y de recuperación

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

programas de utilidad y herramientas de SQL de base de datos

herramientas de generación de datos

Criterios de éxito:

La técnica proporciona soporte a las pruebas de todos los métodos y procesos de acceso de base de datos.

Consideraciones especiales:

Las pruebas pueden requerir un entorno de desarrollo DBMS o controladores para entrar o modificar datos directamente en la base de datos.

Los procesos se deben invocar manualmente.

Bases de datos pequeñas o de tamaño mínimo (con un número limitado de registros) deben utilizarse para aumentar la visibilidad de cualquier suceso no aceptable.


     Pruebas de función

Las pruebas de función del destino de la prueba deben centrarse en cualquier requisito para la prueba que se pueden rastrear directamente para los casos de uso o las funciones empresariales y las reglas empresariales. Los objetivos de estas pruebas son verificar la aceptación de datos apropiada, el proceso, y la recuperación, y la implementación adecuada de las reglas empresariales. Este tipo de pruebas se basa en las técnicas de caja negra; es decir, verifica la aplicación y sus procesos internos interactuando con la aplicación a través de la interfaz gráfica de usuario (GUI) y analizando la salida o los resultados. En la tabla siguiente se identifica una esquematización de las pruebas recomendadas para cada aplicación.

Objetivo de la técnica:

Ejercer una funcionalidad de destino de la prueba, que incluye la navegación, la entrada de datos, el proceso y la recuperación para observar y registrar el comportamiento de destino.

Técnica:

Ejercer los flujos de caso de uso o las funciones y características individuales de cada caso de ejemplo de caso de uso, con datos válidos o no válidos, para comprobar que:

los resultados esperados ocurren cuando se utilizan datos válidos

se muestran los mensajes de error o avisos apropiados cuando se utilizan datos incorrectos

cada regla empresarial se aplica adecuadamente

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

Configuraciones básicas de Imager y Restorer

herramientas de copia de seguridad y de recuperación

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

herramientas de generación de datos

Criterios de éxito:

La técnica da soporte a las pruebas de:

todos los casos de ejemplo de caso de uso clave

todas las características clave

Consideraciones especiales:

Identifique o describa estos elementos o cuestiones (internos o externos) que afectan la implementación y la ejecución de la prueba de función.


     Prueba de ciclo empresarial

La prueba de ciclo empresarial debe emular las tareas que se realizan en el <nombre de proyecto> a lo largo del tiempo. Debe identificarse un periodo, como un año, y las transacciones y las tareas que deben ejecutarse durante el transcurso de un año. Esto incluye todos los ciclos diarios, semanales y mensuales y los sucesos que son sensibles a los datos, como las agendas.

Objetivo de la técnica:

Ejercer los procesos de destino de la prueba y de fondo de acuerdo con los modelos empresariales necesarios y las planificaciones para observar y registrar el comportamiento de destino.

Técnica:

Las pruebas simularán varios ciclos empresariales efectuando lo siguiente:

Las pruebas que se utilizan para la función de destino de la prueba se modificarán o mejorarán para aumentar el número de veces que cada función se ejecuta para simular varios usuarios diferentes durante un periodo especificado.

Las funciones de tiempo completo o sensibles a datos se ejecutarán mediante fechas o periodos de tiempo válidos o no válidos.

Todas las funciones que ocurren bajo una planificación periódica se ejecutarán o se iniciarán en el momento apropiado.

Las pruebas incluirán la utilización de datos válidos y no válidos para verificar lo siguiente:

Los resultados esperados ocurren cuando se utilizan datos válidos.

Se muestran los mensajes de error o avisos apropiados cuando se utilizan datos incorrectos.

Cada regla empresarial se aplica adecuadamente.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

Configuraciones básicas de Imager y Restorer

herramientas de copia de seguridad y de recuperación

herramientas de generación de datos

Criterios de éxito:

La técnica proporciona soporte a las pruebas de todos los ciclos empresariales críticos.

Consideraciones especiales:

Las fechas del sistema y los sucesos pueden requerir tareas especiales de soporte.

Un modelo empresarial es necesario para identificar los requisitos y los procedimientos de prueba apropiados.


     Pruebas de la interfaz de usuario

La prueba de la interfaz de usuario (UI) verifica la interacción de un usuario con el software. El objetivo de las pruebas de la UI es garantizar que la UI proporciona al usuario el acceso apropiado y la navegación a través de las funciones del destino de la prueba. Además, las pruebas de la UI garantizan que los objetos dentro de la UI funcionan tal como se esperaba y conforme a los estándares corporativos o del sector.

Objetivo de la técnica:

Ejercer lo siguiente para observar y registrar el cumplimiento de los estándares y el comportamiento de destino:

Navegación a través del destino de la prueba reflejando las funciones y requisitos empresariales, incluyendo ventana a ventana, campo a campo, y uso de métodos de acceso (teclas tabulador, movimientos del ratón y teclas de aceleración).

Objetos de ventana y características que se pueden ejercer -como menús, tamaño, posición, estado y enfoque.

Técnica:

Crear o modificar pruebas para cada ventana para verificar la navegación correcta y los estados de objeto para cada ventana de aplicación y de objeto.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere la herramienta de automatización de script de prueba.

Criterios de éxito:

La técnica da soporte a las pruebas de las principales pantallas o ventanas que utilizará ampliamente el usuario.

Consideraciones especiales:

No todas las propiedades de los objetos personalizados y de otros proveedores están accesibles.


     Perfilado de rendimiento

El perfilado de rendimiento es una prueba de rendimiento en que los tiempos de respuesta, los índices de transacción y otros requisitos sensibles al tiempo se miden y se evalúan. El objetivo del perfilado de rendimiento es verificar los requisitos de rendimiento que se han alcanzado. El perfilado de rendimiento se implementa y se ejecuta para perfilar y ajustar los comportamientos de destino de la prueba como una función de condiciones, como configuraciones de carga de trabajo o de hardware.

Nota: las transacciones de la tabla siguiente hacen referencia a "transacciones empresariales lógicas". Estas transacciones se definen como casos de uso específicos que se espera que efectúe un actor del sistema mediante el destino de la prueba, como adición o modificación de un contrato determinado.

Objetivo de la técnica:

Ejercer comportamientos para transacciones funcionales designadas o funciones empresariales bajo las condiciones siguientes para observar y registrar el comportamiento del destino y de los datos de rendimiento de la aplicación:

carga de trabajo normal anticipada

el peor caso de carga de trabajo anticipada

Técnica:

Utilice los procedimientos de prueba desarrollados para prueba de función o de ciclo empresarial.

Modifique los archivos de datos para aumentar el número de transacciones o los scripts para aumentar el número de iteraciones que ocurren en cada transacción.

Los scripts se deben ejecutar en una máquina (es mejor realizar el estándar de comparación en un único usuario, una única transacción) y se debe repetir con múltiples clientes (virtuales o reales, consulte el apartado Consideraciones especiales a continuación).

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

una herramientas de perfilado de rendimiento de la aplicación, como Rational Quantify

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

herramientas de restricción de recursos; por ejemplo, Canned Heat

Criterios de éxito:

La técnica da soporte a las pruebas:

Transacción única o usuario único: Emulación correcta de los scripts de transacción sin anomalías debido a los problemas de implementación de prueba.

Transacciones múltiples o usuarios múltiples: Emulación correcta de la carga de trabajo sin anomalías debido a los problemas de implementación de prueba.

Consideraciones especiales:

Las pruebas de rendimiento global incluyen tener una carga de trabajo de fondo en el servidor.

Existen varios métodos que se pueden utilizar para efectuar esto, que incluyen:

"Dirigir las transacciones" directamente al servidor, habitualmente en forma de llamadas de lenguaje de consulta estructurado (SQL).

Crear una carga de usuario "virtual" para simular muchos clientes, normalmente varios centenares. Las herramientas de emulación de terminal remoto se utilizan para cumplir esta carga. Esta técnica también se puede utilizar para cargar la red con "tráfico".

Utilice múltiples clientes físicos, que ejecuten scripts de prueba, para colocar una carga en el sistema.

Las pruebas de rendimiento deben efectuarse en una máquina dedicada o en un tiempo dedicado. Esto permite el control total y las medidas precisas.

Las bases de datos que se utilizan para las pruebas de rendimiento deben tener tamaño real o igualmente escalado.


     Prueba de carga

La prueba de carga es una prueba de rendimiento que somete el destino de la prueba a la variación de cargas de trabajo para medir y evaluar los comportamientos de rendimiento y las capacidades del destino de la prueba para continuar funcionando adecuadamente bajo estas diferentes cargas de trabajo. El objetivo de las pruebas de carga es determinar y garantizar que el sistema funciona adecuadamente más allá de la carga de trabajo máxima esperada. De forma adicional, la prueba de carga evalúa las características de rendimiento, como los tiempos de respuesta, índices de transacción y otros asuntos sensibles al tiempo.

Nota: las transacciones de la tabla siguiente hacen referencia a "transacciones empresariales lógicas". Estas transacciones se definen como funciones específicas que se espera que efectúe un usuario del sistema mediante la aplicación, como la adición o modificación de un contrato determinado.

Objetivo de la técnica:

Ejercer las transacciones o casos de negocio designados dependiendo de las condiciones de carga de trabajo variables para observar y registrar el comportamiento de destino y los datos de rendimiento del sistema.

Técnica:

Utilice los scripts de prueba de transacción desarrollados para las pruebas de función o de ciclo empresarial como base, pero recuerde que debe eliminar las interacciones innecesarias y los retrasos.

Modifique los archivos de datos para aumentar el número de transacciones o las pruebas para aumentar el número de veces que ocurre cada transacción.

Las cargas de trabajo deben incluir -por ejemplo, diariamente, semanalmente y mensualmente- cargas punta.

Las cargas de trabajo deben representar cargas medias y también cargas punta.

Las cargas de trabajo deben representar puntas instantáneas y sostenidas.

Las cargas de trabajo se deben ejecutar bajo diferentes configuraciones de entorno de prueba.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

Herramienta de planificación de carga de transacción y de control

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

herramientas de restricción de recursos; por ejemplo, Canned Heat

herramientas de generación de datos

Criterios de éxito:

La técnica da soporte a la prueba de emulación de carga de trabajo, que es la emulación correcta de la carga de trabajo sin anomalías debido a los problemas de implementación de prueba.

Consideraciones especiales:

Las pruebas de carga deben efectuarse en una máquina dedicada o en un tiempo dedicado. Esto permite el control total y las medidas precisas.

Las bases de datos que se utilizan para las pruebas de carga deben tener tamaño real o igualmente escalado.


     Prueba de tensión

La prueba de tensión es un tipo de prueba de rendimiento que se implementa y ejecuta para comprender cómo falla un sistema debido a condiciones en el límite, o fuera de este, de las tolerancias esperadas. Suele implicar recursos bajos o competencia de recursos. Bajas condiciones de recursos revelan cómo falla el destino de la prueba, que no es aparente bajo condiciones normales. Otros defectos pueden resultar de la competencia por los recursos compartidos, como los bloqueos de base de datos o el ancho de banda de red, aunque algunas de estas pruebas suelen dirigirse bajo pruebas funcionales y de carga.

Nota: Las referencias a transacciones de la tabla siguiente hacen referencia a transacciones empresariales lógicas.

Objetivo de la técnica:

Ejercer las funciones del destino de la prueba bajo las condiciones de tensión siguientes para observar y registrar el comportamiento de destino que identifique y documente las condiciones bajo las cuales el sistema no puede continuar funcionando adecuadamente:

poca memoria o sin memoria disponible en el servidor (RAM y espacio de almacenamiento persistente)

máximo real o número capaz físicamente de clientes conectados o simulados

múltiples usuarios efectúan las mismas transacciones contra los mismos datos o cuentas

volumen de transacción de "sobrecarga" o mezcla (consulte el apartado Perfilado de rendimiento anterior)

Técnica:

Utiliza pruebas desarrolladas para perfilado de rendimiento o prueba de carga.

Para probar recursos limitados, las pruebas se deben ejecutar en una única máquina y se debe reducir o limitar la RAM y el espacio de almacenamiento persistente en el servidor.

Para las pruebas de tensión restantes, deben utilizarse múltiples clientes, ejecutando las mismas pruebas o pruebas complementarias para producir el volumen o la mezcla de transacción del peor de los casos.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

Herramienta de planificación de carga de transacción y de control

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

herramientas de restricción de recursos; por ejemplo, Canned Heat

herramientas de generación de datos

Criterios de éxito:

La técnica da soporte a las pruebas de emulación de tensión. El sistema se puede emular satisfactoriamente en una o más condiciones definidas como condiciones de tensión, y se puede capturar una observación del estado resultante del sistema, durante y después de emular la condición.

Consideraciones especiales:

Presionar la red puede requerir que las herramientas de red carguen la red con mensajes o paquetes.

El almacenamiento persistente que se utiliza para el sistema debe reducirse temporalmente para restringir el espacio disponible para que crezca la base de datos.

Sincronice los clientes simultáneos para acceder a los mismos registros o cuentas de datos.


     Pruebas de volumen

Las pruebas de volumen someten el destino de la prueba a grandes cantidades de datos para determinar si se alcanzan los límites que provocan que falle el software. Las pruebas de volumen también identifican la carga máxima continua o volumen que el destino de la prueba puede manejar durante un periodo determinado. Por ejemplo, si el destino de la prueba está procesando un conjunto de registros de base de datos para generar un informe, una prueba de volumen utilizaría una base de datos de prueba grande, y comprobaría que el software se comporta normalmente y que produce el informe correcto.

Objetivo de la técnica:

Ejercer las funciones del destino de la prueba bajo los casos de ejemplo de volumen elevado siguientes para observar y registrar el comportamiento de destino:

Número máximo (real o físicamente alcanzable) de clientes conectados, o simulados, que realizan la misma función empresarial en el peor de los casos (rendimiento) durante un periodo prolongado.

Tamaño máximo que la base de datos ha alcanzado (real o escalado) y múltiples consultas o transacciones de informe que se ejecutan simultáneamente.

Técnica:

Utiliza pruebas desarrolladas para perfilado de rendimiento o prueba de carga.

Deben utilizarse múltiples clientes, ejecutando las mismas pruebas o pruebas complementarias para producir el volumen o la mezcla de transacción del peor de los casos (consulte el apartado Prueba de tensión) durante un periodo prolongado.

Se crea el tamaño máximo de la base de datos (real, escalado o rellenado con datos representativos), y se utilizan múltiples clientes para ejecutar consultas e informar sobre transacciones simultáneamente durante periodos prolongados.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

Herramienta de planificación de carga de transacción y de control

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

herramientas de restricción de recursos; por ejemplo, Canned Heat

herramientas de generación de datos

Criterios de éxito:

La técnica da soporte a las pruebas de emulación de volumen. Grandes cantidades de usuarios, datos, transacciones u otros aspectos del uso del sistema bajo volumen se pueden emular satisfactoriamente y se puede capturar una observación de los cambios de estado del sistema con la duración de la prueba de volumen.

Consideraciones especiales:

¿Qué periodo de tiempo se considerará un tiempo aceptable para condiciones de alto volumen, como se ha indicado anteriormente?


     Prueba de seguridad y de control de accesos

Las pruebas de seguridad y de control de accesos se centran en dos áreas clave de la seguridad:

Seguridad de nivel de aplicación, que incluyen el acceso a los datos o a las funciones empresariales

Seguridad de nivel de sistema, que incluye el registro en o el acceso remoto al sistema

Basándose en la seguridad que desea, la seguridad de nivel de aplicación garantiza que los actores se restringen a funciones específicas o casos de uso, o se limitan en los datos que están disponibles para ellos. Por ejemplo, cualquiera puede tener permiso para entrar datos y crear nuevas cuentas, pero sólo los gestores pueden suprimirlas. Si existe seguridad en el nivel de datos, las pruebas garantizan que el "tipo de usuario uno" puede ver toda la información del cliente, incluidos los datos financieros, sin embargo, el "tipo de usuario dos" sólo ve los datos demográficos del mismo cliente.

La seguridad de nivel de sistema garantiza que sólo los usuarios que disponen de acceso al sistema pueden acceder a las aplicaciones y sólo a través de las pasarelas apropiadas.

Objetivo de la técnica:

Ejercer el destino de la prueba bajo las condiciones siguientes para observar y registrar el comportamiento de destino:

Seguridad de nivel de aplicación: un actor sólo puede acceder a las funciones o datos para los que su tipo de usuario dispone de permisos.

Seguridad de nivel de sistema: sólo los actores con acceso al sistema y las aplicaciones tienen permiso para acceder a ellos.

Técnica:

Seguridad de nivel de aplicación: Identifique y liste cada tipo de usuario y las funciones o los datos para los que cada tipo tiene permisos.

Cree pruebas para cada tipo de usuario y verifique cada permiso creando transacciones específicas para cada tipo de usuario.

Modifique el tipo de usuario y vuelva a ejecutar las pruebas para los mismos usuarios. En cada caso, verifique que las funciones adicionales o los datos están disponibles correctamente o se deniegan.

Acceso de nivel de sistema: Consulte el apartado siguiente Consideraciones especiales.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Herramienta de automatización de script de prueba

Brecha en la seguridad de un "hacker" y herramientas de análisis

Herramientas de administración de seguridad del sistema operativo

Criterios de éxito:

La técnica proporciona soporte a las pruebas de las funciones apropiadas o datos afectados por la configuración de seguridad que se puede probar para cada tipo de actor conocido.

Consideraciones especiales:

El acceso al sistema se debe revisar o discutir con el administrador de red o del sistema apropiado. Esta prueba puede no ser necesaria ya que puede ser una función de red o de la administración de los sistemas.


     Pruebas de migración tras error y de recuperación

Las pruebas de migración tras error y recuperación garantizan que el destino de la prueba puede migrar tras error y recuperarse satisfactoriamente a partir de una serie de averías de hardware, software o de red con pérdida indebida de datos o de integridad de datos.

Para los sistemas que deben seguir ejecutándose, las pruebas de migración tras error garantizan que cuando ocurre una condición de migración tras error, los sistemas alternativo o de copia de seguridad asumen correctamente las funciones del sistema que ha fallado sin perder datos ni transacciones.

Las pruebas de recuperación son un proceso de prueba antagónico en que la aplicación o el sistema se expone a condiciones extremas, o condiciones simuladas, para causar una anomalía, como anomalías de Entrada/Salida (E/S) del dispositivo, o punteros y claves de base de datos no válidos. Se invocan los procesos de recuperación, y la aplicación o sistema se supervisa e inspecciona para verificar la aplicación correcta, o el sistema, y que se ha logrado la recuperación de datos.

Objetivo de la técnica:

Simular las condiciones anómalas y ejecutar los procesos de recuperación (manual y automatizada) para restaurar la base de datos, aplicaciones, y sistema a un estado deseado y conocido. Los tipos siguientes de condiciones se incluyen en las pruebas para observar y registrar el comportamiento después de la recuperación:

interrupción de la alimentación del cliente

interrupción de la alimentación del servidor

interrupción de la comunicación a través de los servidores de red

interrupción, comunicación, o pérdida de alimentación a DASD (Acceso directo a dispositivos de almacenamiento) y a controladores DASD

ciclos incompletos (procesos de filtrado de datos interrumpidos, procesos de sincronización de datos interrumpidos)

punteros o claves de base de datos no válidos

elementos de datos no válidos o dañados en la base de datos

Técnica:

Las pruebas ya creadas para las pruebas de función y de ciclo empresarial se pueden utilizar como base para crear una serie de transacciones para proporcionar soporte a las pruebas de migración tras error y recuperación, principalmente para definir las pruebas que se ejecutarán para probar que la recuperación se ha realizado satisfactoriamente.

Interrupción de la alimentación al cliente: apague el PC.

Interrupción de la alimentación del servidor: simule o inicie los procedimientos de apagado para el servidor.

Interrupción a través de los servidores de red: simular o iniciar la pérdida de comunicación con la red (desconectar físicamente los cables de comunicación o cortar la alimentación de los servidores de red y los direccionadores).

Interrupción, comunicación, o pérdida de alimentación a DASD y a controladores DASD: simular o eliminar físicamente la comunicación con uno o más DASD o controladores DASD.

Cuando se logran las condiciones o condiciones simuladas anteriores, deben ejecutarse transacciones adicionales y cuando se alcance este segundo estado de punto de prueba, se deben invocar los procedimientos de recuperación.

Las pruebas de los ciclos incompletos utilizan la misma técnica que la descrita anteriormente, excepto que los procesos de la base de datos deben cancelarse anormalmente o terminarse prematuramente.

Las pruebas de las siguientes condiciones requieren que se alcance un estado de base de datos conocido. Varios campos de base de datos, punteros, y claves se deben dañar manualmente y directamente dentro de la base de datos (mediante herramientas de base de datos). Deben ejecutarse transacciones adicionales mediante las pruebas de la función de aplicación y las pruebas de ciclo empresarial y los ciclos completos ejecutados.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Configuraciones básicas de Imager y Restorer

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

herramientas de copia de seguridad y de recuperación

Criterios de éxito:

La técnica da soporte a las pruebas de:

Uno o más desastres simulados que implican una o más combinaciones de la aplicación, la base de datos y el sistema.

Una o más recuperaciones simuladas que implican una o más combinaciones de la aplicación, la base de datos y el sistema a un estado deseado conocido.

Consideraciones especiales:

Las pruebas de recuperación son muy intrusivas. Los procedimientos para desconectar el cableado (simulando que se pierde la comunicación con la alimentación) puede no ser deseable o factible. Métodos alternativos, como las herramientas de software de diagnóstico, pueden ser necesarias.

Recursos de los sistemas (u operaciones informáticas), base de datos y grupos de redes son necesarios.

Estas pruebas deben ejecutarse después de horas o en una máquina aislada.


     Pruebas de configuración

Las pruebas de configuración verifican el funcionamiento del destino de la prueba en diferentes configuraciones de software y hardware. En la mayoría de entornos de producción, las especificaciones de hardware concretas para las estaciones de trabajo del cliente, conexiones de red y servidores de bases de datos varían. Las estaciones de trabajo del cliente pueden tener diferentes softwares cargados (por ejemplo, aplicaciones, controladores, etc.) y, en cualquier momento, muchas combinaciones diferentes pueden estar activas utilizando diferentes recursos.

Objetivo de la técnica:

Ejercer el destino de la prueba en las configuraciones de hardware y software necesarias para observar y registrar el comportamiento bajo diferentes configuraciones e identificar los cambios en el estado de configuración.

Técnica:

Utilice los script de prueba de función.

Abra y cierre varios softwares relacionados que no sean el destino de la prueba, como las aplicaciones Microsoft® Excel® y Microsoft® Word®, como parte de la prueba o bien antes de iniciarla.

Ejecute las transacciones seleccionadas para simular actores que interactúan con el software destino de la prueba y el que no es destino de la prueba.

Repita el proceso anterior, minimizando la memoria convencional disponible en la estación de trabajo cliente.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Configuraciones básicas de Imager y Restorer

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

Criterios de éxito:

La técnica proporciona soporte a la prueba de una o más combinaciones de elementos del destino de la prueba que se ejecutan en entornos de despliegue esperados y admitidos.

Consideraciones especiales:

¿Qué software que no es destino de la prueba es necesario, está disponible y está accesible en el escritorio?

¿Qué aplicaciones se utilizan habitualmente?

¿Qué datos ejecutan las aplicaciones; por ejemplo, una hoja de cálculo grande abierta en Excel o un documento de 100 páginas en Word?

Todo el netware de los sistemas, servidores de red, bases de datos, etc., también deben documentarse como parte de esta prueba.


     Pruebas de instalación

Las pruebas de instalación tienen dos objetivos. El primero es garantizar que el software se puede instalar bajo diferentes condiciones (como una nueva instalación, una actualización, y una instalación completa o personalizada) bajo condiciones normales y anormales. Las condiciones anormales incluyen espacio en disco insuficiente, falta de privilegios para crear directorios, etc. El segundo objetivo es verificar que, una vez instalado, el software funciona correctamente. Esto habitualmente significa ejecutar una serie de pruebas que se desarrollaron para las pruebas de función.

Objetivo de la técnica:

Ejercer la instalación del destino de la prueba en cada configuración de hardware necesaria bajo las condiciones siguientes para observar y registrar los cambios de estado del comportamiento y la configuración de la instalación:

nueva instalación: una nueva máquina, nunca instalada anteriormente con <Nombre de proyecto>

actualización: una máquina instalada anteriormente <Nombre de proyecto>, misma versión

actualización: una máquina instalada anteriormente <Nombre de proyecto>, versión anterior

Técnica:

Desarrollar scripts automatizados o manuales para validar la condición de la máquina de destino.

nuevo: <Nombre del proyecto> nunca antes instalado

<Nombre de proyecto> misma versión o anterior ya instalada

Iniciar o efectuar la instalación.

Utilizando un subconjunto predeterminado de scripts de prueba de función, ejecute las transacciones.

Oráculos:

Destacan una o más estrategias que se pueden utilizar con la técnica para observar con precisión los resultados de la prueba. El oráculo combina elementos del método por los cuales la observación se puede realizar y las características de un resultado específico que indican el éxito o la anomalía probable. Idealmente, los oráculos se verificarán automáticamente, permitiendo las pruebas automatizadas para realizar una valoración inicial de la aprobación o la anomalía de la prueba; sin embargo, tenga cuidado de mitigar los riesgos inherentes en la determinación de resultados automatizados.

Herramientas necesarias:

La técnica requiere las herramientas siguientes:

Configuraciones básicas de Imager y Restorer

herramientas de instalación-supervisión (registro, disco duro, CPU, memoria, etc.)

Criterios de éxito:

La técnica da soporte a las pruebas de la instalación del producto desarrollado en una o más configuraciones de instalación.

Consideraciones especiales:

¿Qué transacciones de <nombre de proyecto> deben seleccionarse para incluir una prueba de confianza que la aplicación del <nombre de proyecto> ha instalado satisfactoriamente y no falta ningún componente de software importante?