Fundamentos de Pruebas

Alcides Penaranda
Mind Map by Alcides Penaranda, updated more than 1 year ago
Alcides Penaranda
Created by Alcides Penaranda over 4 years ago
29
0

Description

Capitulo I de la certificacion ISTQB FOUNDATION

Resource summary

Fundamentos de Pruebas
  1. Porque son necesarias las pruebas

    Annotations:

    • Los probadores buscan fallos, e informan sobre los mismos, los desarrolladores buscan defectos y los corrigen
    1. La pruebas y revisiones aseguran la mejora de la calidad de productos de software, asi como la calidad del proceso de desarrollo en si. Pruebas es parte de calidad, Pruebas ayuda a reducir riesgos
      1. Causas de fallos
        1. pueden ser por error humano y condiciones ambientales
          1. Error: IEEE 610, siempre lo causa un humano, acción humana que produce un resultado incorrecto, algo que deje de hacer
            1. Defecto: Desperfecto en un componente o sistema que puede causar que el sistema falle en desempeñar las funciones requeridas, casi siempre es a nivel de codigo, los defectos causa fallos
              1. Fallo: Manifestacion fisica o funcional de un defecto, desviacion de un componente o sistema respecto de la presentacion, servicio o resultado esperado, es la consecuencia de un defecto
              2. Papel del proceso de pruebas en el desarrollo mantenimiento y operaciones
                1. Mejora la calidad de un producto de software
                  1. Reducción del riesgo de detectar errores
                    1. Satisface compromisos
                    2. Definiciones
                      1. Software: IEEE 610: Programa de ordenador, procedimientos y posiblemente documentación y datos pertenecientes a la operación de un sistema basado en un ordenaodr
                        1. Calidad software: IEC 9126: La totalidad de la funcionalidad y prestaciones de un producto de software que contribuye con su capacidad de satisfacer sus necesidades explicitas o implicitas
                          1. Calidad: IEEE610 Grado en el cual un componente sistema o proceso satisface requsitos especificados, y o necesidades y expectativas del usuario
                            1. Codigo: Programa de ordenador escrito en un lenguaje de programacion que puede ser leido por una persona
                              1. Depuración: Localizacion y correcion de defectos en el codigo fuente
                                1. Desarrollo de software: Es un proceso complejo/secuencia de actividades cuyo objetivo es desarrollar un sistema basado en un ordenador
                                  1. Requisito: Describe un atributo funcional o no funcional deseado
                                    1. Revision: Evaluacion de un producto o proyecto para detectar discrepancias respecto a resultados planificados
                                    2. La calidad del software consiste en
                                      1. Atributos Funcionales
                                        1. Adecuacion
                                          1. Exactitud
                                            1. Interoperabilidad
                                              1. Seguridad
                                                1. Cumplimiento de funcionalidad
                                                2. Atributos no funcionales
                                                  1. Fiabilidad
                                                    1. Usabilidad
                                                      1. Eficiencia
                                                        1. Mantenibilidad
                                                          1. Portabilidad
                                                        2. Tipos de aseguramiento de la calidad
                                                          1. Constructivos: prevenir
                                                            1. Organizacion
                                                              1. Guias, estandares, listas de comprobacion, reglas de proceso, requisitos legales
                                                              2. Tecnico
                                                                1. Metodos, herramientas lenguajes, entornos de desarrollo, listas/plantillas
                                                              3. Analiticos : Detectar
                                                                1. Dinamico
                                                                  1. Caja negra
                                                                    1. Partición de equivalencia, analisis de valores limites, pruebas de transicion de estados, tablas de decision y pruebas de casos de uso
                                                                    2. Basados en la experiencia
                                                                      1. Caja blanca
                                                                        1. Cobertura de sentencia, cobertura de rama, cobertura de condicion y cobertura de camino
                                                                        2. Las pruebas dinamicas son la ejecución del software, muestran fallos que han sido causado por defectos, la depuración, detecta, analiza y elimina la causa del fallo
                                                                        3. Estatico

                                                                          Annotations:

                                                                          • Pruebas sin la ejecución del programa
                                                                          1. Revisiones/ revisiones guiadas, analisis del flujo de control, analisis de flujo de datos, metricas del compilador, analizador
                                                                            1. Las pruebas estaticas son revision de documentos
                                                                        4. Objetivos de las pruebas
                                                                          1. Adquirir conocimiento sobre los defectos de un objeto de prueba
                                                                            1. Confirmación de la funcionalidad
                                                                              1. Generar información
                                                                                1. Generar confianza
                                                                                2. Cuantas pruebas son suficientes:
                                                                                  1. Criterios de salida
                                                                                    1. Pruebas basadas en riesgo
                                                                                      1. Pruebas basadas en plazos y presupuestos
                                                                                      2. Casos de prueba - IEEE 610
                                                                                        1. Precondiciones, conjunto de valores de entrada, conjunto de resultados esperados, , poscondiciones esperadas, identificador unico, , dependencia de otros casos de prueba. referencia al requisito que sera probado, forma en que se debe ejecutar el caso de prueba (opcional) y prioridad (opcional)
                                                                                        2. Base de prueba: Conjunto de documentos que definen los requisitos de un componente o sistema
                                                                                        3. Que son las pruebas
                                                                                          1. Proceso de Pruebas
                                                                                            1. Planificacion y Control, Seleccion de condiciones de prueba, Diseño y ejecución de casos de prueba, Comprobacion de resultados, Generacion de informes respecto al proceso de pruebas, Finalizacion y completar actividades de cierre
                                                                                            2. Objetivos de las pruebas
                                                                                              1. Detección de defectos, generación de confianza respecto del nivel de calidad, aportación de información para la toma de decisiones y prevención de defectos
                                                                                            3. Principios del proceso de pruebas
                                                                                              1. El proceso de pruebas demuestra la presencia de defectos
                                                                                                1. No es posible realizar pruebas exhaustivas
                                                                                                  1. Pruebas tempranas

                                                                                                    Annotations:

                                                                                                    • Planeacion y diseño de pruebas no puede tomar mas del 30% Cuanto mas temprana es la deteccion de un defecto, menos costosa es su correción La preparacion de una prueba consume tiempo Las actividades de pruebas incluidas las revisiones deben ser ejecutadas en paralelo a la especificacion y diseño de software
                                                                                                    1. Agrupamiento de defectos

                                                                                                      Annotations:

                                                                                                      • Encuentre un defecto y encontrara mas defectos cerca Los defectos aparecen agrupados Los testers deben ser flexibles
                                                                                                      1. Paradoja del pesticida

                                                                                                        Annotations:

                                                                                                        • Repetir pruebas en las mismas condiciones no es efectivo Las pruebas deben ser revisadas/modificadas para los distintos codigos de modulos
                                                                                                        1. Las pruebas dependen del contexto

                                                                                                          Annotations:

                                                                                                          • Las pruebas se llevan a cabo de forma diferente en diferentes contextos Objetos de prueba diferente son probados de forma diferente
                                                                                                          1. La falacia de la ausencia de errores
                                                                                                          2. Proceso de prueba basico
                                                                                                            1. Planificación de pruebas
                                                                                                              1. Determinar alcance y riesgos, determinar objetivos, determinar enfoque, implementar metodo y estrategias de prueba, adquirir/obtener y programar recursos
                                                                                                                1. Plan maestro de prueba (Hoja de ruta), Estrategia de prueba (Que vamos a probar), Enfoque de prueba (Como vamos a probar), Criterios de salida (En que momento puedo finalizar mis pruebas)
                                                                                                                2. Analisis y Diseño de pruebas
                                                                                                                  1. Revisar las bases de pruebas, Analizar la testibilidad, Identificar y priorizar condiciones, Diseñar pruebas y casos de pruebas, Identificar condiciones de pruebas, Diseñar el entorno de prubas, probar infraestructura, crear trazabilidad
                                                                                                                    1. Datos de prueba (test data): Datos que están en la BD y son suceptibles a ser modificados, Datos de entrada (Input data): Variables que son leidas por un componente, Cobertura de prueba (Test coverage): usado en pruebas de caja blanca con objeto de determinar la cobertura del codigo, Oraculo de pruebas (Test ORACLE): Es toda la base de conocimiento que yo tenga de las pruebas
                                                                                                                    2. Implementacion y ejecucion
                                                                                                                      1. Finalizar, implementar y priorizar casos de prueba, Desarrollar y priorizar procedimientos de prueba, Verificar el entorno de prueba, Verificar y actualizar la trazabilidad, Ejecutar pruebas, registrar resultados, comparar resultados, repetición de pruebas, pruebas de regresión
                                                                                                                        1. Juego de pruebas (Test sequence): Conjunto de casos de pruebas. Especificación de procedimientos de pruebas (Test procedure specification): paso a paso IEEE 829. Ejecución de pruebas (Test execution): Seguir el paso a paso. Registro de pruebas (Informe de pruebas), Pruebas de regresion, Repeticion de pruebas
                                                                                                                        2. Evaluacion de criterios de salida y generación de informes
                                                                                                                          1. Evaluar la ejecución de pruebas con respecto a los objetivos, Evaluar los registros de pruebas, Proporcionar información de pruebas adicionales
                                                                                                                          2. Actividades de cierre
                                                                                                                            1. Recopilar datos de las pruebas finalizadas. Cerrar informes de incidencias, Comprobar entregables. Documentar aceptacion. Finalizar y archivar los productos de soporte de pruebas. Analizar lecciones aprendidas. Utilizar información recopilada
                                                                                                                            2. Control de pruebas
                                                                                                                              1. Es transversal a todo el proceso
                                                                                                                                1. Se miden y analizan resultados, se mira la evolucion y cobertura de las pruebas y el cumplimientos de los criterios de salida, se incian medidas correctivas, se preparan y toman decisiones
                                                                                                                              2. Psicologia en el proceso de pruebas
                                                                                                                                1. Roles
                                                                                                                                  1. Desarrollador
                                                                                                                                    1. Implementa requisitos. Desarrolla estructuras. Diseña y programa el software. Su éxito consiste en la creación de un producto
                                                                                                                                      1. Actividad constructiva
                                                                                                                                      2. Probador
                                                                                                                                        1. Planifica actividades de prueba. Diseña casos de prueba. Su unica preocupacion es encontrar defectos. Encontrar errores producidos por un desarrolador
                                                                                                                                          1. Actividad destructiva
                                                                                                                                            1. Caracteristicas
                                                                                                                                              1. Curiosos, perceptivo, atento a los detalles
                                                                                                                                                1. Escéptico y con actitud critica
                                                                                                                                                  1. Aptitudes para la comunicacion
                                                                                                                                                    1. Experiencia
                                                                                                                                                2. Diferencias
                                                                                                                                                  1. Diseñar: Ayudar al cliente a proveer los requisitos adecuados
                                                                                                                                                    1. Desarrollar: Convertir los requisitos en funciones
                                                                                                                                                      1. Probadores: Evaluar la correcta implementacion de los requisitos
                                                                                                                                                      2. Organizacion de pruebas
                                                                                                                                                        1. Pruebas de desarrollador
                                                                                                                                                          1. El desarrollador nunca analizara su creación de forma imparcial.
                                                                                                                                                            1. Las personas tienden a pasar por alto sus propios defectos
                                                                                                                                                              1. Errores debido a mala interpretacion pasaran sin ser detectados
                                                                                                                                                              2. Equipos de Desarrollo
                                                                                                                                                                1. Hablan un mismo lenguaje
                                                                                                                                                                  1. Los costes de formacion con respecto a objetos de prueba es moderado
                                                                                                                                                                    1. Peligro de generacion de conflictos entre equipos de desarrollo
                                                                                                                                                                      1. Mezcla de actividades de desarrollo y pruebas
                                                                                                                                                                        1. Genera un mayor grado de independencia
                                                                                                                                                                        2. Equipos de pruebas
                                                                                                                                                                          1. Equipos de pruebas que den servicio a diferentes areas de proyecto mejoran la calidad
                                                                                                                                                                            1. Equipos de pruebas de diferentes areas trabajen de forma independiente
                                                                                                                                                                            2. Subcontratacion de pruebas
                                                                                                                                                                              1. Separacion de actividades de pruebas y desarrollo aportan mas independencia
                                                                                                                                                                                1. Tener en cuenta la curva de aprendizaje del negocio
                                                                                                                                                                                  1. Cuentan con un alto nivel de conocimiento del proceso de prueba
                                                                                                                                                                                    1. Diseño de casos de prueba en forma independiente
                                                                                                                                                                                  2. Dificultades
                                                                                                                                                                                    1. Incapacidad de compresión mutua
                                                                                                                                                                                      1. En situaciones de tension la detección de errores puede conducir a conflictos
                                                                                                                                                                                        1. La comunciacion entre desarrolladores y probadores es insuficiente o inexistente
                                                                                                                                                                                          1. Un proceso de prueba solido requerie la distancia adecuada con respecto al objeto de prueba
                                                                                                                                                                                        2. Código ético
                                                                                                                                                                                          1. Código de conducta
                                                                                                                                                                                            1. Es necesario para asegurar que la información es utilizada de forma apropiada
                                                                                                                                                                                              1. Publico: Deben actuar conforme con los intereses de su cliente o empleador, conforme con el interés público
                                                                                                                                                                                                1. Cliente y empleador: Igual que el público, No filtrar información interna o privada del cliente
                                                                                                                                                                                                  1. Producto: Aseguran que los entregables que suministran alcanzan los estandares profesionales
                                                                                                                                                                                                    1. Juicio: Mantendran su integridad e independencia en su juicio profesional
                                                                                                                                                                                                      1. Gestión: Suscribirán y promoverán un enfoque ético en la gestión de las pruebas de software
                                                                                                                                                                                                        1. Profesión: promoverán la integridad y reputación de la profesión consistente con el interés público
                                                                                                                                                                                                          1. Compañeros de profesión: Serán justos y solidarios con sus compañeros de profesión
                                                                                                                                                                                                            1. Individualmente: Participaran en procesos de formación relacionados con su práctica profesional de forma permanente (cursos de formación y leyendo libros)
                                                                                                                                                                                                          Show full summary Hide full summary

                                                                                                                                                                                                          Similar

                                                                                                                                                                                                          Mapa Conceptual Hardware y Software
                                                                                                                                                                                                          Jeferson Alfonso Alvarado Suarez
                                                                                                                                                                                                          Los ordenadores
                                                                                                                                                                                                          Adela Rico Torres
                                                                                                                                                                                                          FUNDAMENTOS DE REDES DE COMPUTADORAS
                                                                                                                                                                                                          anhita
                                                                                                                                                                                                          La ingenieria de requerimientos
                                                                                                                                                                                                          Sergio Abdiel He
                                                                                                                                                                                                          Abreviaciones comunes en programación web
                                                                                                                                                                                                          Diego Santos
                                                                                                                                                                                                          Test: "La computadora y sus partes"
                                                                                                                                                                                                          Dayana Quiros R
                                                                                                                                                                                                          Seguridad en la red
                                                                                                                                                                                                          Diego Santos
                                                                                                                                                                                                          Sistema de procesamiento en Bases de datos
                                                                                                                                                                                                          jhonatanandresce
                                                                                                                                                                                                          Evolución de la Informática
                                                                                                                                                                                                          Diego Santos
                                                                                                                                                                                                          Excel Básico-Intermedio
                                                                                                                                                                                                          Diego Santos
                                                                                                                                                                                                          Introducción a la Ingeniería de Software
                                                                                                                                                                                                          David Pacheco Ji