Model based testing

Solo disponible en BuenasTareas
  • Páginas : 27 (6542 palabras )
  • Descarga(s) : 0
  • Publicado : 21 de febrero de 2011
Leer documento completo
Vista previa del texto
MODEL-BASED TESTING

La técnica del testeo de software basado en modelos es un método que permite testear el comportamiento de un sistema mediante la generación de casos de prueba basados en un modelo. Consiste en representar el comportamiento esperado de un sistema mediante un modelo abstracto. En el mercado existen varias herramientas que pueden testear estos modelos, verificando así, que elcomportamiento del sistema es el deseado ante las distintas acciones que se pueden realizar en el sistema.
El término testeo basado en modelos se puede usar para diferentes técnicas de generación de test. Existen cuatro enfoques principales según(Ref:Practical Model-Based Testing):
* Generación de test de datos de entrada de prueba de un modelo de dominio.
* Generación de casos deprueba de un modelo de entorno.
* Generación de casos de prueba con predicciones del comportamiento del modelo.
* Generación de scripts de prueba a partir de pruebas abstractas.

El objetivo es que el probador se dedique solo a describir el comportamiento que se espera de la aplicación y que la generación de los casos de prueba abstractos y posteriormente la transformación en ejecutables sepueda hacer de manera automática. De esta forma se reduce el tiempo de desarrollo de un sistema ya que se pueden detectar fallos en los requerimientos desde fases más tempranas del desarrollo y porque se puede volver a probar la fiabilidad del sistema más rápidamente ante cambios de dichos requisitos.
Tradicionalmente, lo que se hacía, era primero escribir y tras esto ejecutar manualmentecasos de prueba para verificar el comportamiento del sistema. Gracias al testeo basado en modelos, ahora se pueden generar casos a partir de descripciones explicitas del sistema. (Ref: Graph Theory Techniques in Model-Based Testing)
El modelado es una forma de representar el comportamiento del sistema. Estos modelos son más simples que el sistema que representan y gracias a esto ayudan a entender ypredecir el funcionamiento del mismo. Un modelo muy común son los diagramas de estado o maquinas de estado finitas.
El testeo basado en modelos tiene numerosas ventajas frente al testeo tradicional. Algunas podrían ser:
* La construcción de los modelos de comportamiento se puede empezar antes en el ciclo de desarrollo.
* El modelado permite detectar ambigüedades en las especificacionesy el diseño del software.

* El modelo incluye información del comportamiento que puede ser reutilizada en futuros test aunque cambien las especificaciones.

* El modelo es más fácil de actualizar que un conjunto de test individuales.

* Un modelo proporciona información que se puede mezclar con técnicas graficas teóricas para generar numerosos escenarios de prueba de formaautomática.

Algunos de los lenguajes de modelado más empleados son: (Ref: ModelBasedSoftwareTesting)
* Maquinas de estado finitas (FSM)
* Gráficos de estado (StateFlow)
* Lenguaje Unificado de Modelado(UML)
* Cadenas de Markov
* Gramáticos
Dependiendo de la aplicación que se vaya a testear es mejor emplear un modelo u otro, ya que no existe un modelo en concreto para todas lasaplicaciones.
Maquinas de estado finitas (FSM): [wikipedia] Se denomina máquina de estados a un modelo de comportamiento de un sistema con entradas y salidas. Las salidas dependen no sólo de las señales de entradas actuales sino también de las anteriores. Las máquinas de estados se definen como un conjunto de estados que sirven de intermediarios en esta relación de entradas y salidas, haciendo queel historial de señales de entrada determine, para cada instante, un estado para la máquina, de tal forma que la salida únicamente dependa del estado y las entradas actuales. Una máquina de estados se denomina máquina de estados finitos (Finite State Machine) si el número de estados de la máquina es finito.
Gráficos de estado: [wikipedia] Un diagrama de estados es un diagrama utilizado para...
tracking img