introducción a las p - s3-us-west-2. · pdf fileinstitucional y académica en...

Download INTRODUCCIÓN A LAS P - s3-us-west-2. · PDF fileinstitucional y académica en Uruguay –su ... Nada de lo que se presenta aquí es ... ¿Cómo Disminuir los Problemas Detectados

If you can't read please download the document

Upload: ngonga

Post on 08-Feb-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • INTRODUCCIN A LAS PRUEBAS DE SISTEMAS DE INFORMACIN

    Autor: Federico Toledo Rodrguez

    Co-autores: Andrs Curcio y Giulliana Scuoteguazza

    Colaboradores: todo el equipo de Abstracta

    Abstracta, Montevideo, Uruguay, 2014

  • PRLOGO Resea

    Introduccin a las Pruebas de Sistemas de Informacin es una de las primeras publicaciones en espaol sobre aspectos prcticos de testing. En el mismo se abordan todas las dimensiones del testing, mostrando su propsito y beneficio. Integrando tcnicas modernas de forma dinmica y prctica le permite al lector realizar una recorrida nutrida y clara sobre el diseo de pruebas, pruebas automatizadas, pruebas de performance y aspectos humanos que debe desarrollar un buen tester.

    Su autor, el ingeniero Federico Toledo, PHD en Informtica en la Universidad de Castilla-La Mancha, es un especialista en testing y cuenta con una destacada trayectoria privada, institucional y acadmica en Uruguay su pas de nacimiento y Europa. Es socio fundador e integrante permanente del directorio de ABSTRACTA, empresa que provee productos y servicios de testing a compaas en Estados Unidos y Amrica Latina, y es un blogger frecuente de artculos especializados en testing en lengua castellana. Federico, destaca el carcter integral de su obra, en cuanto a conceptos y metodologa y rescata la invalorable contribucin que realizaron todos los integrantes de Abstracta, en especial Andrs Curcio y Giulliana Scuoteguazza, quienes colaboraron fervientemente para que el libro est hoy en sus manos.

    El pblico objetivo de Introduccin a las Pruebas de Sistemas de Informacin son las personas que trabajan cotidianamente haciendo testing y se enfrentan a un sinnmero de desafos y dificultades. Ellos contarn a partir de hoy con una gua de apoyo para enfrentar distintas actividades que realizan, especialmente las relativas a tcnicas de diseo de testing, testing automatizado y de performance.

    Introduccin a las Pruebas de Sistemas de Informacin est escrito en un lenguaje llano y ameno, y fue pensado y redactado para que su lectura permita la rpida incorporacin de conceptos, tcnicas y nuevas habilidades para sus lectores. El aprender y disfrutar aprendiendo fue uno de los intereses mayores que sostuvo Federico a la hora de estructurar y dar contenido a su obra.

  • Temas

    Introduccin a las Pruebas Funcionales

    Comenzando por conceptos bsicos e introductorios para seguir luego mostrando su utilidad, profundizando en un posible mtodo bsico para abordar la tarea de disear pruebas. Entre otras cosas veremos las tcnicas que incluso se termina utilizando casi en forma inconsciente, tales como: particin en clases de equivalencia, valores lmites, etc.

    Tcnicas de Diseo de Pruebas Funcionales

    Habiendo visto las bsicas de las pruebas funcionales podremos seguir luego describiendo algunas tcnicas a las que llamaremos avanzadas, siempre pensando en particular en sistemas de informacin. Entre ellas veremos cmo derivar casos de prueba a partir de casos de uso, tablas de decisin, mquinas de estado, etc.

    Pruebas Exploratorias

    Es una tcnica bastante avanzada que consiste en disear y ejecutar al mismo tiempo. Veremos que existen escenarios especiales en las que nos va a resultar principalmente til, y tambin cmo podramos aplicar la tcnica en forma prctica.

    Pruebas Automatizadas

    Veremos cmo el testing automtico nos puede aportar beneficios para bajar costos y aumentar la cantidad de pruebas que logramos ejecutar. Luego veremos qu tener en cuenta para no fracasar en el intento.

    Pruebas de Performance

    En este caso veremos cmo automatizar pruebas con el fin de simular mltiples usuarios concurrentes y as poder analizar el rendimiento de la aplicacin bajo pruebas, sus tiempos de respuesta y el consumo de recursos.

  • Habilidades de un Tester

    Porque no todo en la vida son solo tcnicas y tecnologas, tambin abordaremos algunos puntos ms relacionados a los aspectos humanos que todo tester tambin debe preocuparse por desarrollar, especialmente relacionados a la capacidad de comunicar.

    Sntesis final

    Auguramos que Introduccin a las Pruebas de Sistemas de Informacin sea una excelente experiencia de lectura y aprendizaje que efectivamente eleven al lector a un mayor nivel de conocimiento conceptual y prctico. Ahora, a disfrutarlo!

    Lic. Gonzalo Acua

  • AGRADECIMIENTOS Este es un libro con un carcter divulgativo. Nada de lo que se presenta aqu es nuestro, y al mismo tiempo todo lo presentado aqu es nuestro, pues lo hicimos parte de nuestra cultura de testing, adaptndolo segn nuestros criterios y necesidades.

    En este libro queremos plasmar conceptos, buenas prcticas, tcnicas y metodologas que hemos investigado y que nos han resultado tiles, y creemos que les pueden resultar tiles tambin.

    Como se trata de nuestro primer libro tampoco estamos siendo ambiciosos de querer tener algo completamente extenso, sino que priorizamos los conceptos, tcnicas y mtodos que nos resultan de mayor prioridad para entregar en esta primera versin (vaya que hasta aqu estamos aplicando conceptos de testing: no exhaustivo, priorizando lo importante para la liberacin del producto).

    Los que nos conocen, los que han visto charlas nuestras, o quienes leen nuestro blog (blog.abstracta.com.uy) se darn cuenta que muchas de estas cosas las hemos nombrado ya en otras ocasiones. Aqu las estamos organizando y comentando con ms formalidad (bueno, quiz no tanta formalidad, veremos).

    El agradecimiento va a todos los que nos han hecho crecer trabajando con nosotros, tanto los integrantes del equipo de Abstracta, como colegas y amigos de empresas partners y clientes. A todos ellos, muchas gracias!

  • CONTENIDO Introduccin .................................................................................................................... 15

    Es Posible Construir un Software que no Falla? ................................................................ 15 La Calidad, El Testing y sus Objetivos .................................................................................. 17

    Calidad ............................................................................................................................. 17 Testing ............................................................................................................................. 18 Objetivos ......................................................................................................................... 18

    El Testing al Final del Proyecto ............................................................................................ 19 Testing Independiente ........................................................................................................ 21 Estructura del Resto del Libro ............................................................................................. 22

    Introduccin a las Pruebas Funcionales ............................................................................ 23 Conceptos Introductorios ................................................................................................... 24

    Caso de Prueba ............................................................................................................... 24 Orculo ............................................................................................................................ 25 Cobertura de Pruebas ..................................................................................................... 25 Tcnicas de Diseo de Casos de Prueba ......................................................................... 26 Caja Blanca y Caja Negra ................................................................................................. 27 Caso de Prueba Abstracto y Especfico ........................................................................... 27 Pruebas Dirigidas por Datos ............................................................................................ 28

    Diseo Bsico de Casos de Prueba ...................................................................................... 30 Identificar Variables ........................................................................................................ 31 Seleccionar Valores Interesantes .................................................................................... 33 Combinacin de Valores ................................................................................................. 36 Calcular Valores Esperados ............................................................................................. 41

    Tcnicas de Diseo de Casos de Prueba ........................................................................... 43 Derivacin de Casos de Prueba desde Casos de Uso .......................................................... 44

    Representacin de Casos de Uso .................................................................................... 44 Derivando los Casos de Prueba ....................................................................................... 48

    Tcnica de Tablas de Decisin ............................................................................................. 55 Ejemplo Bajo Pruebas ..................................................................................................... 56 Derivando los Casos de Prueba con Tablas de Decisin ................................................. 56

  • Derivacin de Pruebas con Grafos Causa-Efecto ................................................................ 60 Mquinas de Estado ............................................................................................................ 64

    Aplicacin de la Tcnica en un Ejemplo ...............................................