Pruebas en Visual Studio XII Encuentro Danysoft en Microsoft Directos al código

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Pruebas en Visual Studio XII Encuentro Danysoft en Microsoft Directos al código"

Transcripción

1 Pruebas en Visual Studio XII Encuentro Danysoft en Microsoft Directos al código Jorge Bustos Servicios Profesionales Abril 2015 Día TFS Introducción a las pruebas Ejecución de pruebas en Visual Studio Las pruebas no resuelven todo 1

2 Introducción a las pruebas Clasificación: Estáticas/dinámicas Caja blanca / caja negra Nivel: unitarias / de integración / de sistema Manuales / automáticas Otras clasificaciones: regresión, aceptación, IU Coste de las pruebas Qué se gana con las pruebas Estáticas / dinámicas Pruebas estáticas: Sin ejecución de código Dinámicas: Con ejecución de código 2

3 Variación del algoritmo de Dijkstra (1959) Edsger W. Dijkstra 11/5/1930 6/8/2002 Caja blanca / negra Caja blanca: Se conoce y prueba la estructura del programa Caja negra: Se prueba sin tener en cuenta la estructura 3

4 Citando a Dijkstra A convincing demonstration of correctness being impossible as long as the mechanism is regarded as a black box, our only hope lies in not regarding the mechanism as a black box Citando a Dijkstra Una demostración convincente de la corrección es imposible si se trata el mecanismo como una caja negra; nuestra única esperanza está en no tratar el mecanismo como una caja negra 4

5 public class Calculadora { public int Suma (int a, int b) { } } return 2; Y si comprobamos que Suma(1,1) = 2? Pruebas de caja negra Problema, por el desconocimiento del código es posible: hacer muchas pruebas que prueban el mismo código dejar partes del código o casos sin probar Ventaja: probar cosas que al desarrollador no se le ocurren 5

6 Pruebas de caja blanca Al conocer la estructura del programa: Es más fácil determinar que pruebas deben hacerse para cubrir más casos y más código Si las hace el propio desarrollador puede que sólo pruebe lo que sabe que funciona (maldito subconsciente) Otras clasificaciones Pruebas de regresión: Comprobar que nada se ha roto tras modificar el software Pruebas de aceptación: Generalmente hechas por el cliente para dar el visto bueno Rendimiento, Usabilidad, Accesibilidad, Seguridad, Interfaz de usuario, Internacionalización 6

7 Clasificación por niveles Pruebas unitarias: Prueba una funcionalidad de un componente, aislada del resto del sistema Pruebas de integración Prueba varios componentes trabajando juntos Pruebas de sistema Prueba el software completo Pirámide de pruebas Menos pruebas Ejecución lenta Más inestables Amplio alcance IU Integración Unitarias Alcance limitado Más estables Ejecución rápida Más pruebas 7

8 Pruebas en el ciclo de desarrollo TDD Integración continua Prueba continua BDD Citando a Dijkstra When we take the position that it is not only the programmer's responsibility to produce a correct program but also to demonstrate its correctness in a convincing manner, then the above remarks have a profound influence on the programmer's activity: the object he has to produce must be usefully structured 8

9 Citando a Dijkstra si la responsabilidad del programador no es sólo producir un programa correcto, sino también demostrar su corrección de una manera convincente, [ ] esto tiene una profunda influencia en su actividad: el objeto que produce tiene que estar estructurado de manera útil Qué ganamos con las pruebas Para nuevas aplicaciones: calidad del código reducción de nº de bugs llegados a producción Aplicaciones heredadas: Red de seguridad para la refactorización 9

10 Coste de las pruebas Probar supone: definir y realizar pruebas Hay que buscar equilibrio entre el coste y el beneficio de las pruebas: Probar levemente las partes poco usadas/ poco críticas / más sencillas de implementar Probar exhaustivamente las partes más usadas, más críticas y más complicadas Pruebas manuales y automáticas Manuales: Requieren la intervención de una persona para su ejecución Automáticas: Se ejecutan sin intervención de una persona, produciendo un resumen de los resultado 10

11 Ejecución de pruebas en Visual Studio Todo el mundo prueba Pruebas automáticas Fases de las pruebas Definición y ejecución Prueba de integración, unitaria y sustitutos Estilos: verificación de estado y de comportamiento Cobertura de las pruebas No todos los errores son bugs Todo el mundo prueba sus programas Prueba: cualquier cosa que hacemos para comprobar que un programa funciona correctamente, e incluye: The chapuzero s way 11

12 Pruebas automáticas Las pruebas automáticas: Tienen menor coste Se ejecutan más veces Se pueden integrar en procesos (TDD, Integración continua, refactorización de aplicación heredada...) De muchos tipos, incluyendo unitarias, de integración, de IU Ejecución de pruebas en Visual Studio Visual Studio permite ejecutar pruebas automáticas No siempre son unitarias! 12

13 Fases de las pruebas AAA: Arrange Act Assert 4 fases: Setup Exercise Verify Tear-down Definición y ejecución de pruebas Elegir un framework para definir las pruebas: MSTest, NUnit, xunit, Jasmine, QUnit Ejecutar las pruebas: Test Runner de Visual Studio, adaptador, test runner externos, en procesos de CI... 13

14 Demo: definición de pruebas Definición de pruebas con dos frameworks: MSTest NUnit [TestFixture] public class CalculadoraTestNUnit { [Test] public void Suma1mas1_da2() { Calculadora calc = new Calculadora(); var suma = calc.suma(1, 1); Assert.AreEqual(2, suma); } [Test] [ExpectedException( typeof(dividebyzeroexception))] public void DivideEntreCero_LanzaExcepcion() { Calculadora calc = new Calculadora(); calc.divide(12, 0); } } [TestClass] public class CalculadoraTest { [TestMethod] public void Suma1mas1_Da2() { Calculadora calc = new Calculadora(); var suma = calc.suma(1, 1); Assert.AreEqual(2, suma); } [TestMethod] [ExpectedException( typeof(dividebyzeroexception))] public void DivideEntreCero_LanzaExcepcion() { Calculadora calc = new Calculadora(); calc.divide(12, 0); } } 14

15 Prueba unitaria frente a prueba de integración Unitaria: prueba una funcionalidad individual, quitando las dependencias de otros módulos Integración: prueba una funcionalidad completa, que involucra varios módulos Sustitución de dependencias En el mundo real las clases tienen dependencias Para garantizar que la prueba funciona, las dependencias deben sustituirse con doubles, dummies, stubs, spies, fakes, mocks... Para sustituirlas, las dependencias deben ser interfaces, no clases (si no queda otro remedio, métodos virtuales) 15

16 Ejemplo de dependencias Notificador Servidor GestorVentas PasarelaPago Servidor pagos Almacen Base de datos Sustitución de dependencias (2) Las dependencias deben estar accesibles: Si hay inyección de dependencias por constructor ya lo tenemos Si no, ofrecer constructor alternativo o propiedades para poder remplazar dependencias Para casos extremos (por ej. método estático como DateTime.Today), usar shims (o JustMock) 16

17 Demo: prueba integración Prueba de integración Estilos de pruebas unitarias Verificación de estado Establece estado inicial, actúa, comprueba estado final Verificación de comportamiento Ejecuta prueba y verifica que se han realizado las llamadas esperadas a las dependencias 17

18 Demo: sustitución clásica Prueba clásica, con sustitutos creados a mano Mocks Frameworks para crear dinámicamente sustitutos para pruebas: Permiten remplazar comportamientos Permiten verificar ejecuciones Múltiples frameworks: FakeItEasy, MoQ, NSubstitute, ( RhinoMocks, Autofac ) 18

19 Demo: sustitución con mocks Prueba de comportamiento con mocks Las pruebas no resuelven todo Cobertura de las pruebas Otros orígenes de los defectos del software 19

20 Cobertura de las pruebas Es imposible probar completamente todo el software, y en todas las circunstancias posibles. Se puede medir hasta cierto punto: Cobertura de funciones Cobertura de sentencias Cobertura 100% de sentencias no significa que el software funcione bien Cobertura de código Ejecutado Parcialmente ejecutado No ejecutado 20

21 Citando a Dijkstra Program testing can be used to show the presence of bugs, but never to show their absence! Citando a Dijkstra Las pruebas de programas se pueden usar para mostrar la presencia de bugs, pero nunca para mostrar su ausencia! 21

22 Orígenes de defectos de software No todos los problemas del software son bugs, pueden ser otros: Motivos técnicos: el software falla más tarde por el entorno, configuración de seguridad, rendimiento que no son requisitos (Cada vez hay más herramientas para probarlos) El cliente no sabe lo que quiere o lo explica mal Hemos visto Clasificación de las pruebas Coste y ventajas de las pruebas Ejecución de las pruebas automáticas Sustitutos Verificación de estados y comportamiento Las pruebas no resuelven todo Consejo final: probar, probar y probar! 22

23 Más Información Información ampliada sobre licencias, qué incluye cada edición, y utilidades software en: Información ampliada sobre formación, consultoría y cesión profesionales en: Valor añadido a la comunidad en forma de eventos como este, artículos técnicos o revistas en: +50 vídeos en castellano sobre Visual Studio, SQL Server, TFS y soluciones Microsoft en: shop.danysoft.com /servicios /comunidad /danysoftech Gracias Para más información contacta con Danysoft info@danysoft.com

El software se divide en módulos especializados Unos módulos usan a otros: Aparecen las dependencias entre módulos

El software se divide en módulos especializados Unos módulos usan a otros: Aparecen las dependencias entre módulos IoC y DI IoC: Inversión de control y DI: Inyección de dependencia Mejorando la gestión de las dependencias Jorge Bustos Servicios Profesionales sp@danysoft.com 916 638683 www.danysoft.com Abril 2015 Día

Más detalles

Agenda. Ciclo de calidad continua XII Encuentro Danysoft en Microsoft Directos al código. XII Encuentro Danysoft en Microsoft Abril 2015

Agenda. Ciclo de calidad continua XII Encuentro Danysoft en Microsoft Directos al código. XII Encuentro Danysoft en Microsoft Abril 2015 Ciclo de calidad continua XII Encuentro Danysoft en Microsoft Directos al código Jose García Servicios Profesionales sp@danysoft.com 916 638683 www.danysoft.com Abril 2015 Sala 2 Team Foundation Server

Más detalles

Contenido de la sesión. Las pruebas unitarias. Qué es eso de TDD? Inyección de dependencias 19/04/2013

Contenido de la sesión. Las pruebas unitarias. Qué es eso de TDD? Inyección de dependencias 19/04/2013 TDD con ASP.NET MVC Jorge Bustos j.bustos@danysoft.com, Servicios Profesionales sp@danysoft.com www.danysoft.com 18.04.2013 Contenido de la sesión Las pruebas unitarias Qué es eso de TDD? Inyección de

Más detalles

NuGet. NuGet Gestión de librerías en Visual Studio XII Encuentro Danysoft en Microsoft Directos al código. Día Visual Studio

NuGet. NuGet Gestión de librerías en Visual Studio XII Encuentro Danysoft en Microsoft Directos al código. Día Visual Studio NuGet Gestión de librerías en Visual Studio XII Encuentro Danysoft en Microsoft Directos al código Jorge Bustos Servicios Profesionales sp@danysoft.com 916 638683 www.danysoft.com Abril 2015 Día Visual

Más detalles

Planifica tu integración continua con Visual Studio Team Services

Planifica tu integración continua con Visual Studio Team Services Planifica tu integración continua con Visual Studio Team Services Luis Alfonso Rey Servicios Profesionales sp@danysoft.com 13 Encuentro Danysoft en Microsoft Abril 2016 Sala 1 Visual Studio Agenda Sala

Más detalles

Vamos a ver. Breeze Aplicaciones JavaScript dirigidas por datos con Breeze El ORM de JavaScript. Agenda Día Visual Studio

Vamos a ver. Breeze Aplicaciones JavaScript dirigidas por datos con Breeze El ORM de JavaScript. Agenda Día Visual Studio Breeze Aplicaciones JavaScript dirigidas por datos con Breeze El ORM de JavaScript Jorge Bustos Servicios Profesionales sp@danysoft.com 916 638683 www.danysoft.com Abril 2015 Día Visual Studio Agenda Día

Más detalles

TESTS UNITARIOS. keep the bar green to keep the code clean

TESTS UNITARIOS. keep the bar green to keep the code clean TESTS UNITARIOS keep the bar green to keep the code clean Para qué hacer tests unitarios? Es imposible hacer software libre de defectos. Tiempo del desarrollador: Diseño Análisis Debug Desarrollo Los tests

Más detalles

Modelos de desarrollo en SharePoint 2013

Modelos de desarrollo en SharePoint 2013 Modelos de desarrollo en SharePoint 2013 Luis Alfonso Rey Servicios Profesionales sp@danysoft.com 13 Encuentro Danysoft en Microsoft Abril 2016 Sala 2 Productividad Agenda Sala 2 Soluciones de Productividad

Más detalles

Tercera Sesión. Entity Framework Core y ASP.NET Core:.NET en todas las plataformas. Sexta Sesión. SPAs: aplicaciones en el navegador

Tercera Sesión. Entity Framework Core y ASP.NET Core:.NET en todas las plataformas. Sexta Sesión. SPAs: aplicaciones en el navegador Agenda Sala 1 Visual Studio y TFS Primera Sesión Segunda Sesión Tercera Sesión Planifica tu integración continua con Visual Studio Team Services Desarrollo móvil con Xamarin Entity Framework Core y ASP.NET

Más detalles

Testing. Es el proceso orientado a demostrar que un programa no tiene errores.

Testing. Es el proceso orientado a demostrar que un programa no tiene errores. Pruebas de Software Testing Es el proceso orientado a demostrar que un programa no tiene errores. 1. Imposible. 2. Tentación a diseñar tests que no detecten errores. Es la tarea de demostrar que un programa

Más detalles

Pruebas unitarias en profundidad

Pruebas unitarias en profundidad Pruebas unitarias en profundidad Luis Alfonso Rey 9º Encuentro Danysoft en Microsoft Agenda Lo que ya sabemos Algunas cosas nuevas Despacito y buena letra Herencia de familia Lo que ya sabemos Qué es

Más detalles

Tema 5 - Pruebas del software Ingeniería del Software de Gestión II

Tema 5 - Pruebas del software Ingeniería del Software de Gestión II escuela técnica superior de ingeniería informática Tema 5 - Pruebas del software Ingeniería del Software de Gestión II Objetivos Cuáles son las alternativas para verificar y validar software Qué son las

Más detalles

Pruebas de Software: Herramientas: Pruebas Unitarias. Elisa Herrmann Ingeniería del Software de Gestión

Pruebas de Software: Herramientas: Pruebas Unitarias. Elisa Herrmann Ingeniería del Software de Gestión Pruebas de Software: Herramientas: Pruebas Unitarias Elisa Herrmann Ingeniería del Software de Gestión Contenido Qué son Pruebas Unitarias? Frameworks Ventajas Desventajas y limitaciones Mitos sobre Pruebas

Más detalles

Alta Disponibilidad en SQL Server: AlwaysOn

Alta Disponibilidad en SQL Server: AlwaysOn Alta Disponibilidad en SQL Server: AlwaysOn Ponente: Pablo F. Dueñas Campo Servicios Profesionales sp@danysoft.com 13 Encuentro Danysoft en Microsoft Abril 2016 Sala 3 Infraes - tructur Agenda Sala 3 Gestión

Más detalles

Agenda. Apache Cordova para el Desarrollo móvil XII Encuentro Danysoft en Microsoft Directos al código. Sala 1 Visual Studio

Agenda. Apache Cordova para el Desarrollo móvil XII Encuentro Danysoft en Microsoft Directos al código. Sala 1 Visual Studio Apache Cordova para el Desarrollo móvil XII Encuentro Danysoft en Microsoft Directos al código Luis Alfonso Rey Servicios Profesionales sp@danysoft.com 916 638683 www.danysoft.com Abril 2015 Sala 1 Visual

Más detalles

Modelos de calidad. Técnicas de prueba del software Estrategias de prueba del software. Calidad del software. Factores de Calidad. producto.

Modelos de calidad. Técnicas de prueba del software Estrategias de prueba del software. Calidad del software. Factores de Calidad. producto. Técnicas de prueba del software Estrategias de prueba del software 1 Modelos de calidad Calidad del software Factores de Calidad Criterios de calidad del proceso producto Métricas del proceso producto

Más detalles

Control de Lectura # 3. Pruebas del software

Control de Lectura # 3. Pruebas del software Universidad Don Bosco Facultad de Ingeniería Escuela de Ingeniería en Computación Ingeniería de Software Control de Lectura # 3 Pruebas del software Docente: Milton Narváez. Grupo: 01T Presentado por:

Más detalles

Verificación. Taller de Programación

Verificación. Taller de Programación Verificación Taller de Programación Error, Defecto y Falla puede generar Un defecto un error humano (interna) que puede generar?! una falla (externa) El software falla cuando No hace lo requerido o Hace

Más detalles

Criterios de Evaluación

Criterios de Evaluación Criterios de Evaluación Se ha reconocido la importancia de la comunicación visual y sus principios básicos. Se han analizado y seleccionado los colores y tipografías adecuados para su visualización en

Más detalles

Pruebas de Software. Agenda. Pruebas de Programas Los Niveles de Prueba Diseño de Casos de Prueba

Pruebas de Software. Agenda. Pruebas de Programas Los Niveles de Prueba Diseño de Casos de Prueba Pruebas de Software R. Casallas Dpto. de Ingeniería de Sistemas y Computación Universidad de los Andes 1 Agenda Pruebas de Programas Los Niveles de Prueba Diseño de Casos de Prueba 2 1 Pruebas de Programas

Más detalles

Técnicas de Pruebas de

Técnicas de Pruebas de Técnicas de Pruebas de Software Lecturas Pruebas de Unidades Pruebas Integración Docente Beatriz E. Florián bflorian@eisc.edu.co Mayo 3 de 2005 Pruebas Reglas de oro para pruebas Límites de Pruebas: Probar

Más detalles

INGENIERÍA DEL SOFTWARE II Práctica 1. Univ. Cantabria Fac. de Ciencias Carlos Blanco, Juan Hernández

INGENIERÍA DEL SOFTWARE II Práctica 1. Univ. Cantabria Fac. de Ciencias Carlos Blanco, Juan Hernández INGENIERÍA DEL SOFTWARE II Práctica 1 Pruebas con Junit y Eclemma Univ. Cantabria Fac. de Ciencias Carlos Blanco, Juan Hernández Objetivos Realizar pruebas de caja negra de forma automática Familiarizarse

Más detalles

Facilitan arquitecturas más desacopladas:

Facilitan arquitecturas más desacopladas: Enterprise Library 5.0 Jorge Bustos sp@danysoft.com Sigue descubriendo 8º Encuentro Danysoft en Microsoft Visual Studio SQL Server Sharepoint 3 salas Madrid 24 Mayo 2011 Enterprise Library 5.0 Bloques

Más detalles

MIGRACIÓN DE PROYECTOS A TFS, MUCHO MÁS QUE CODIGO Y DOCUMENTACION

MIGRACIÓN DE PROYECTOS A TFS, MUCHO MÁS QUE CODIGO Y DOCUMENTACION MIGRACIÓN DE PROYECTOS A TFS, MUCHO MÁS QUE CODIGO Y DOCUMENTACION Luis Alfonso Rey Danysoft Sesión realizada en las Microsoft ALM Sessions 2011 Madrid, Marzo 2011 INTRODUCCIÓN A LA MIGRACIÓN Para de o

Más detalles

El modelo V nos permite ejecutar el proceso de validación y verificación en cada una de las etapas de un proyecto. Codificación

El modelo V nos permite ejecutar el proceso de validación y verificación en cada una de las etapas de un proyecto. Codificación ASEGURAMIENTO DE CALIDAD Modelo V El modelo V nos permite ejecutar el proceso de validación y verificación en cada una de las etapas de un proyecto. Análisis de Requerimientos Pruebas de Aceptación Diseño

Más detalles

Pruebas de Software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008

Pruebas de Software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 Pruebas de Software Objetivos de las Pruebas Demostrar al desarrollador y al cliente que el software satisface los requerimientos. Descubrir defectos en el software en que el comportamiento de éste es

Más detalles

a. Integración Top Down b. Integración Buttom Up c. Ninguna de las anteriores d. Módulo de integración.

a. Integración Top Down b. Integración Buttom Up c. Ninguna de las anteriores d. Módulo de integración. Nombre: Puntaje: 1. Defectos Típicos que son más fáciles de encontrar en las revisiones que en las pruebas dinámicas son los siguientes: A. Desviaciones de las normas. B. Defectos en los requerimientos.

Más detalles

Instituto Tecnológico Superior De Acatlán de Osorio. Portafolio de evidencias

Instituto Tecnológico Superior De Acatlán de Osorio. Portafolio de evidencias Instituto Tecnológico Superior De Acatlán de Osorio Carrera: Ingeniería Informática Materia: Verificación y Validación de Software Portafolio de evidencias Elaborado por: Solano Agustín Carlos Profesor:

Más detalles

CLASE 11: PRUEBAS DE SOFTWARE. Unversidad Simón Bolívar. Prof. Ivette Carolina Martínez

CLASE 11: PRUEBAS DE SOFTWARE. Unversidad Simón Bolívar. Prof. Ivette Carolina Martínez CLASE 11: PRUEBAS DE SOFTWARE Unversidad Simón Bolívar. Prof. Ivette Carolina Martínez Pruebas: Definición Prueba de Software es la ejecución del código usando combinaciones de entradas, en un determinado

Más detalles

Creando Plantilla de Procesos para la Generación de Team Project

Creando Plantilla de Procesos para la Generación de Team Project Creando Plantilla de Procesos para la Generación de Team Project Team Project Dentro de los múltiples tipos de tareas que he realizado en la implementación de Team Foundation, en las organizaciones que

Más detalles

PRUEBA DE SOFTWARE LA PRUEBA DE UN SISTEMA

PRUEBA DE SOFTWARE LA PRUEBA DE UN SISTEMA PRUEBA DE SOFTWARE Probar bien un sistema no es una actividad trivial para aprender. Algunos lo consideran un arte y aprender a hacerlo bien requiere práctica y experiencia. El 50% del tiempo y esfuerzo

Más detalles

Análisis y modelación de sistemas de software 4. Pruebas. Blanca A. Vargas Govea Mayo 3, 2013

Análisis y modelación de sistemas de software 4. Pruebas. Blanca A. Vargas Govea Mayo 3, 2013 Análisis y modelación de sistemas de software 4. Pruebas Blanca A. Vargas Govea vargasgovea@itesm.mx Mayo 3, 2013 Contenido Introducción a las pruebas de software 2 Introducción a las pruebas de software

Más detalles

Tecnología hardware y software

Tecnología hardware y software Denominación: Desarrollo de software Código : J62.05 Nivel: 4 Sector: Familia: Eje tecnológico: Programación informática, consultoría de informática y actividades conexas. Tecnología hardware y software

Más detalles

Parte I: El computador y el proceso de programación

Parte I: El computador y el proceso de programación Parte I: El computador y el proceso de programación 1.Introducción a los computadores y su programación 2. Introducción al análisis y diseño de algoritmos 3. Introducción al análisis y diseño de programas

Más detalles

WebForms con LeadTools

WebForms con LeadTools WebForms con LeadTools 21.01.2007 Danysoft Con la aparición de la version 15 de LEADTOOLS, LEAD ha incluido un control.net para la gestión de formularios en la Web. A continuación le incluimos unas instrucciones

Más detalles

Introducción. Curso de Middleware. Práctica 1. 1 de 14

Introducción. Curso de Middleware. Práctica 1. 1 de 14 Introducción Nuestro objetivo a la hora de crear estas prácticas es ver cómo usar los servicios y mecanismos que nos ofrece un Middleware mediante una sucesión de ejemplos, quizás algo sencillos al principio

Más detalles

Estrategia de Pruebas

Estrategia de Pruebas Estrategia de Pruebas Introducción: Las pruebas son parte integral de un proyecto y del ciclo de vida de la aplicación. Dentro un proyecto de implementación, las pruebas siguen un enfoque estructurado

Más detalles

Anexo 10. Pruebas verificadas

Anexo 10. Pruebas verificadas 1 Anexo 10. Pruebas verificadas Introducción El proceso de pruebas inició con una revisión conceptual para la identificación de las pruebas por realizar, a partir de las características del proyecto. En

Más detalles

Implementación de Componentes

Implementación de Componentes Implementación de Componentes Concepto Un componente es una parte no trivial, casi independiente, y reemplazable de un sistema que llena claramente una funcionalidad dentro de un contexto en una arquitectura

Más detalles

Behavior Driven Development

Behavior Driven Development Behavior Driven Development Sesión 11c Repaso de TDD Práctica de desarrollo de software propuesta por Kent Beck Parte de XP y de metodologías ágiles, pero puede ser usada también con cualquier otra metodología

Más detalles

CRYSTAL REPORTS Ana María Bisbé York

CRYSTAL REPORTS Ana María Bisbé York Ana María Bisbé York sp@danysoft.com Crystal Reports CRYSTAL REPORTS Solución de creación de informes flexibles, interactivos, enriquecidos, para utilizarlos de forma independiente desde las herramientas

Más detalles

Capítulo 4: Prueba y validación de los objetos modelo.

Capítulo 4: Prueba y validación de los objetos modelo. Capítulo 4: Prueba y validación de los objetos modelo. Una vez que se genera el código fuente, el software debe ser probado para descubrir y, si es necesario, corregir errores antes de su entrega y liberación

Más detalles

XII Encuentro Danysoft en Microsoft Abril 2015

XII Encuentro Danysoft en Microsoft Abril 2015 Automatizando el seguimiento de SQL Server XII Encuentro Danysoft en Microsoft Directos al código Pablo F. Dueñas Campo Servicios Profesionales sp@danysoft.com 916 638683 www.danysoft.com Abril 2015 Sala

Más detalles

Testing + Integración continua

Testing + Integración continua Testing + Integración continua Agenda Introducción Conceptos Herramientas CI en Arquitectura Práctica Agenda Introducción Conceptos Herramientas CI en Arquitectura Práctica Conceptos El Testing, o pruebas

Más detalles

JUNIT. Pruebas Unitarias

JUNIT. Pruebas Unitarias JUNIT. Pruebas Unitarias Dpto. de Ingeniería de Sistemas Telemáticos http://www.lab.dit.upm.es/~lprg Introducción Un programa es aceptable cuando: Hace lo que se acordó que debía hacer en las especificaciones.

Más detalles

Descripción específica

Descripción específica Descripción específica NÚCLEO: Comercio y Servicios SUBSECTOR: Informática y Comunicación Nombre del Módulo: Planificación de pruebas de software Código: CSTI0192 total: 309 horas Objetivo General: Planificar

Más detalles

Proyecto de Fin de Carrera. Autor: David Rozas Domingo Tutor: José Centeno González

Proyecto de Fin de Carrera. Autor: David Rozas Domingo Tutor: José Centeno González Proyecto de Fin de Carrera Autor: David Rozas Domingo Tutor: José Centeno González Índice: El problema del reparto de turnos. Por qué Moodle?. Objetivos. Algoritmo de reparto de turnos. Diseño de la aplicación

Más detalles

Lenguaje Java Avanzado

Lenguaje Java Avanzado Sesión 8: Pruebas con DbUnit 2012-2013 Depto. Ciencia de la Computación e IA Puntos a tratar Framework Prácticas recomendadas Ciclo de vida Interfaces y clases DbUnit y Eclipse Ejemplos 2011-2012 Depto.

Más detalles

Ingeniería del Software. Pruebas. Pruebas en el PUD. Las pruebas del software. Diseño de casos de prueba. Pruebas de SI OO

Ingeniería del Software. Pruebas. Pruebas en el PUD. Las pruebas del software. Diseño de casos de prueba. Pruebas de SI OO Pruebas Pruebas en el PUD Las pruebas del software Diseño de casos de prueba Pruebas de SI OO 1 Iteración en PUD Planificación de la Iteración Captura de requisitos: Modelo de casos de uso, Modelo de Dominio,...

Más detalles

Contenido. Comentarios. l Estilo l Documentación l Pruebas l Depuración **/ l Comentarios de código. l Comentarios de documentación

Contenido. Comentarios. l Estilo l Documentación l Pruebas l Depuración **/ l Comentarios de código. l Comentarios de documentación {F-PROG dit Contenido l Estilo l Documentación l Pruebas l Depuración Fundamentos de Programación DIT- 1 {F-PROG dit Comentarios l Comentarios de código n /*... */ n // comentario táctico: hasta fin de

Más detalles

Fase de Pruebas Introducción.

Fase de Pruebas Introducción. Fase de Pruebas Introducción. El desarrollo de sistemas de software implica una serie de actividades de producción en las que las posibilidades de que aparezca el fallo humano son enormes. Los errores

Más detalles

Descripción Específica en la modalidad de Formación Dual

Descripción Específica en la modalidad de Formación Dual Descripción Específica en la modalidad de Formación Dual Para la persona tutora y la persona monitora, a continuación se presenta la descripción específica para ejecutar el Módulo en modalidad Dual. Tomando

Más detalles

El primer módulo del curso. Esperamos que te guste.

El primer módulo del curso. Esperamos que te guste. El primer módulo del curso. Esperamos que te guste. 1 En todos los módulos encontrarás una primera transparencia de objetivos de cada uno de los módulo. 2 Todo el módulo tiene un boletín de ejercicio.

Más detalles

Software Tester QA. Programa de Estudio.

Software Tester QA. Programa de Estudio. Software Tester QA Programa de Estudio Software Tester QA Aprende a construir Planes de Prueba para el Desarrollo de Software, y conviértete en un Software Tester QA participando en Proyectos de Testing

Más detalles

Catálogo de Servidores OGC basado en búsquedas interactivas. Febrero, 2008

Catálogo de Servidores OGC basado en búsquedas interactivas. Febrero, 2008 Catálogo de Servidores OGC basado en búsquedas interactivas Febrero, 2008 Introducción Justificación del proyecto Existe un buen número de usuarios de información geográfica con dificultades para conocer

Más detalles

PRUEBAS DE SISTEMAS. Hungría Berbesí UNEFA Ingeniería de Sistemas

PRUEBAS DE SISTEMAS. Hungría Berbesí UNEFA Ingeniería de Sistemas PRUEBAS DE SISTEMAS Hungría Berbesí UNEFA Ingeniería de Sistemas Técnicas de prueba El desarrollo de Sistemas de software implica la realización de una serie de actividades predispuestas a incorporar

Más detalles

Captura de Eventos en Sharepoint

Captura de Eventos en Sharepoint Captura de Eventos en Sharepoint 27.09.2006 Servicios Profesionales Danysoft Luego de instalar, configurar y rellenar documentos en Sharepoint, el administrador del portal asume tareas más complicadas

Más detalles

Testing para Desarrolladores

Testing para Desarrolladores Testing para Desarrolladores La calidad del software (también) es nuestra responsabilidad Gira SSTQB 2016 Noviembre de 2016 www.mtp.es Índice Motivación Responsabilidades Herramientas Técnicas Las pruebas

Más detalles

2. Indica cuál de las siguientes afirmaciones es cierta:

2. Indica cuál de las siguientes afirmaciones es cierta: Nombre:. Indica cuál de las siguientes afirmaciones es cierta: El diseño de un programa procedural está guiado por la división en tareas a realizar, mientras que el diseño orientado a objetos está dirigido

Más detalles

Exposición dialogada: Identifica el concepto de calidad. Determina la diferencia entre control de calidad y aseguramiento de la calidad.

Exposición dialogada: Identifica el concepto de calidad. Determina la diferencia entre control de calidad y aseguramiento de la calidad. NÚCLEO: Comercio y Servicios SUBSECTOR: Informática y comunicación Nombre del Módulo: Verificación de aplicaciones web total: 44 horas Objetivo General: Verificar aplicaciones web, mediante el uso de pruebas

Más detalles

Propuesta framework de herramientas para el desarrollo de aplicaciones en un modelo colaborativo. Ricardo Borillo Domenech

Propuesta framework de herramientas para el desarrollo de aplicaciones en un modelo colaborativo. Ricardo Borillo Domenech Propuesta framework de herramientas para el desarrollo de aplicaciones en un modelo colaborativo Ricardo Borillo Domenech borillo@uji.es Índice Introducción y objetivos Arquitectura básica del sistema

Más detalles

Testing Ágil. Experiencia de aproximación 2.0 Junio de 2016

Testing Ágil. Experiencia de aproximación 2.0 Junio de 2016 Testing Ágil Experiencia de aproximación 2.0 Junio de 2016 Hacemos un scrum? Índice Objetivos de pruebas Manifiesto ágil Estrategias de pruebas Skills del tester Organización del trabajo: inception y sprints

Más detalles

Desarrollo Software Gran Escala

Desarrollo Software Gran Escala Desarrollo Software Gran Escala Herramientas de Desarrollo (Parte 2: Pruebas y depuradores, Documentación) Diferentes tipos de herramientas Controladores de versión Ambientes de desarrollo Pruebas y Depuración

Más detalles

Jose Garcia Servicios Profesionales VII Encuentro Desarrolladores Microsoft Todo en la vida comienza con Código

Jose Garcia Servicios Profesionales VII Encuentro Desarrolladores Microsoft Todo en la vida comienza con Código Todo en la vida comienza con código VII Encuentro Desarrolladores Microsoft VII Encuentro de Desarrolladores Microsoft-Danysoft Jose Garcia Servicios Profesionales VII Encuentro Desarrolladores Microsoft

Más detalles

Introducción a la Computación. Testing en Python. Facultad de Ciencias Exactas y Naturales, UBA 28/05/2013

Introducción a la Computación. Testing en Python. Facultad de Ciencias Exactas y Naturales, UBA 28/05/2013 Introducción a la Computación Testing en Python Maximiliano Geier (mgeier@dc.uba.ar) Facultad de Ciencias Exactas y Naturales, UBA 28/05/2013 Maximiliano Geier (UBA) Clase 9: Testing en Python 28/05/2013

Más detalles

Visual Studio 2010 Guía de ventas

Visual Studio 2010 Guía de ventas Visual Studio 2010 Guía de ventas 2 Microsoft Confidential 5 Microsoft Confidential 6 Microsoft Confidential SDLC, v1 SDLC, v2 Mantenimiento Gobierno Desarrollo Operaciones 9 Microsoft Confidential

Más detalles

TEMA 2.1 TIPOS DE PRUEBAS DEL SOFTWARE

TEMA 2.1 TIPOS DE PRUEBAS DEL SOFTWARE TEMA 2.1 TIPOS DE PRUEBAS DEL SOFTWARE INTRODUCCIÓN La prueba del software es un elemento crítico para la garantía de la calidad del software y representa una revisión final de las especificaciones, del

Más detalles

Plan de estudios ISTQB: Nivel Fundamentos

Plan de estudios ISTQB: Nivel Fundamentos Plan de estudios ISTQB: Nivel Fundamentos Temario 1. INTRODUCCIÓN 2. FUNDAMENTOS DE PRUEBAS 3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL SOFTWARE 4. TÉCNICAS ESTÁTICAS 5. TÉCNICAS DE DISEÑO DE PRUEBAS 6.

Más detalles

NÚMERO DE HORAS: 160H PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE OBJETIVO

NÚMERO DE HORAS: 160H PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE OBJETIVO PACK FORMATIVO EN DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB NÚMERO DE HORAS: 160H PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE OBJETIVO - Identificar la estructura de una página web conociendo los lenguajes

Más detalles

Estrategias de Pruebas de Software

Estrategias de Pruebas de Software Estrategias de Software Software Es el proceso de probar el sistema con el fin de encontrar errores antes de la entrega al usuario final. Qué muestran las pruebas errores Concordancia con los requerimientos

Más detalles

SÍLABO PRUEBAS DE SOFTWARE ÁREA CURRICULAR: INGENIERÍA DE SOFTWARE : E3040. : Ingeniería de Software II. : Electivo de Especialidad

SÍLABO PRUEBAS DE SOFTWARE ÁREA CURRICULAR: INGENIERÍA DE SOFTWARE : E3040. : Ingeniería de Software II. : Electivo de Especialidad ESCUELA PROFESIONAL:. INGENIERÍA DE COMPUTACIÓN Y SISTEMAS. INGENIERÍA ELECTRÓNICA SÍLABO PRUEBAS DE SOFTWARE ÁREA CURRICULAR: INGENIERÍA DE SOFTWARE CICLO: Electivo de Especialidad SEMESTRE ACADÉMICO:

Más detalles

Curso Implementing and Maintaining Microsoft SQL Server 2008 Reporting Services (6236)

Curso Implementing and Maintaining Microsoft SQL Server 2008 Reporting Services (6236) Curso Implementing and Maintaining Microsoft SQL Server 2008 Reporting Services (6236) Programa de Estudio Curso Implementing and Maintaining Microsoft SQL Server 2008 Reporting Services (6236) Aprende

Más detalles

MANUAL DE AYUDA INSTALACIÓN SOFTWARE

MANUAL DE AYUDA INSTALACIÓN SOFTWARE MANUAL DE AYUDA INSTALACIÓN SOFTWARE Fecha última revisión: Marzo 2016 INDICE DE CONTENIDOS MANUAL DE INSTALACIÓN SOFTWARE GOTELGEST.NET... 3 1. INSTALACIÓN DEL SOFTWARE (MODO SERVIDOR O MODO DEMO)...

Más detalles

Desarrollo ágil basado en pruebas de aceptación

Desarrollo ágil basado en pruebas de aceptación Desarrollo ágil basado en pruebas de aceptación Patricio Letelier letelier@dsic.upv.es Qué resultados de I+D tenemos? TUNE-UP Process: enfoque y herramienta de apoyo para gestión ágil de proyectos (equipos

Más detalles

Agile Testing. Sesión 8. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante

Agile Testing. Sesión 8. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante Agile Testing Sesión 8 Unas palabras previas de cautela Las pruebas no son una verificación formal de un programa, no pueden garantizar la corrección del software para todos los posibles casos de entrada

Más detalles

Sacándole Partido a JUnit Módulo 1. Introducción a las Pruebas

Sacándole Partido a JUnit Módulo 1. Introducción a las Pruebas Sacándole Partido a JUnit Módulo 1. Introducción a las Pruebas Ejercicios Resueltos Ejercicio 03. El siguiente código muestra para calcular la potencia de dos de cualquier número con cualquier cantidad

Más detalles

Creación de controles de usuario

Creación de controles de usuario 197 Capítulo 11 Creación de controles de usuario 1. Introducción Creación de controles de usuario El desarrollo de aplicaciones se basa principalmente en los controles, que proporcionan las distintas funcionalidades

Más detalles

Plan de estudios ISTQB: Nivel Fundamentos

Plan de estudios ISTQB: Nivel Fundamentos Plan de estudios ISTQB: Nivel Fundamentos Temario 1. INTRODUCCIÓN 2. FUNDAMENTOS DE PRUEBAS 3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL SOFTWARE 4. TÉCNICAS ESTÁTICAS 5. TÉCNICAS DE DISEÑO DE PRUEBAS 6.

Más detalles

Inspección de Diseño Similar a la inspección de código, pero se realiza sobre los documentos de diseño.

Inspección de Diseño Similar a la inspección de código, pero se realiza sobre los documentos de diseño. Clasificación Ortogonal de Defectos Atributo Actividad Se refiere a la actividad que se estaba realizando cuando se produce la falla. En el caso de inspecciones, es la actividad que detecta el defecto

Más detalles

Testing Unitario. Laboratorio de Testing y Aseguramiento de la Calidad del Software

Testing Unitario. Laboratorio de Testing y Aseguramiento de la Calidad del Software Testing Unitario Laboratorio de Testing y Aseguramiento de la Calidad del Software Construcción de suites Caja blanca/caja negra Cobertura basada en flujo de control Complejidad ciclomática LCov Testing

Más detalles

UNIVERSIDAD DON BOSCO

UNIVERSIDAD DON BOSCO UNIVERSIDAD DON BOSCO Facultad: Ingeniería Escuela: Computación CONTROL DE LECTURA No 3 PRUEBAS DE SOFTWARE INGENIERIA DE SOFTWARE ING. MILTON NARVAEZ INTEGRANTES HERNÁNDEZ DOÑO NORBERTO ANTONIO MARROQUIN

Más detalles

Curso Aseguramiento de la Calidad De los Procesos y Productos de Software

Curso Aseguramiento de la Calidad De los Procesos y Productos de Software Curso Aseguramiento de la Calidad De los Procesos y Productos de Software Objetivos Este curso tiene por finalidad el aseguramiento de la calidad que pueden afectar al software, identificar las diferentes

Más detalles

Tema I Testing Estructurado

Tema I Testing Estructurado Tema I Testing Estructurado 4ta Parte Verificación y Validación de Software UNS Contenido Testing de Unidad: Caja Negra Grafos Causa Efecto Clases de Equivalencia Valores Límite Verificación y Validación

Más detalles

PA JOSÉ MANUEL BURBANO CARVAJAL

PA JOSÉ MANUEL BURBANO CARVAJAL PA121-01 SISTEMA DE GESTIÓN DEL CONOCIMIENTO PARA LA DEFINICIÓN DE ESTRATEGIAS QUE EVITEN LA DESERCIÓN ESCOLAR EN LOS COLEGIOS DE MOCOA PUTUMAYO EN EL NIVEL DE EDUCACIÓN BÁSICA SECUNDARIA JOSÉ MANUEL BURBANO

Más detalles

Instituto Tecnológico de Informática. Calidad, Proceso y Testeo Software

Instituto Tecnológico de Informática. Calidad, Proceso y Testeo Software Instituto Tecnológico de Informática Calidad, Proceso y Testeo Software Agenda Presentación del ITI Oficina de Calidad Mejora de Procesos Oficina de Test Experiencias Conclusiones 1 PRESENTACIÓN ITI Qué

Más detalles

PROGRAMACIÓN EN JAVA. { una línea para definir, crear o ejecutar ; }

PROGRAMACIÓN EN JAVA. { una línea para definir, crear o ejecutar ; } PROGRAMACIÓN EN JAVA { una línea para definir, crear o ejecutar ; } JFC Y API SPECIFICATIONS OBJECT INTERFACE ABSTRACT IMPLEMENTS EXTENDS NEW EXTENDS (Hasta que una clase derivada deje de ser ABSTRACT)

Más detalles

Manual de uso. Jenkins

Manual de uso. Jenkins Manual de uso. Jenkins Fecha: 08/08/2012 Referencia: EJIE S.A. Mediterráneo, 14 01010 Vitoria-Gasteiz Posta-kutxatila / Apartado: 809 01080 Vitoria-Gasteiz Tel. 945 01 73 00* Fax. 945 01 73 01 www.ejie.es

Más detalles

Aseguramiento de la calidad y pruebas de software 5- Pruebas del software Caja Negra/Caja Blanca Blanca A. Vargas Govea

Aseguramiento de la calidad y pruebas de software 5- Pruebas del software Caja Negra/Caja Blanca Blanca A. Vargas Govea Aseguramiento de la calidad y pruebas de software 5- Pruebas del software Caja Negra/Caja Blanca Blanca A. Vargas Govea vargasgovea@itesm.mx Marzo 12, 2013 Contenido Pruebas de caja negra Causa-efecto

Más detalles

6.1 Behavior Driven Development. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15

6.1 Behavior Driven Development. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15 6.1 Behavior Driven Development Modelo tradicional de desarrollo de requisitos John Ferguson Smart - BDD in Action 2 Modelo de desarrollo usando BDD John Ferguson Smart - BDD in Action 3 Resumen en un

Más detalles

Introducción a la Computación. Testing en Python. Maximiliano Geier. Facultad de Ciencias Exactas y Naturales, UBA 13/11/2017

Introducción a la Computación. Testing en Python. Maximiliano Geier. Facultad de Ciencias Exactas y Naturales, UBA 13/11/2017 Introducción a la Computación Testing en Python Maximiliano Geier Facultad de Ciencias Exactas y Naturales, UBA 13/11/2017 Maximiliano Geier (UBA) Testing en Python 13/11/2017 1 / 12 Testing Qué era testing?

Más detalles

Calidad de Software. Algoritmos y Estructuras de Datos I. Calidad de Software. Buenas prácticas

Calidad de Software. Algoritmos y Estructuras de Datos I. Calidad de Software. Buenas prácticas Calidad de Software Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2017 Departamento de Computación - FCEyN - UBA Calidad de Software - clase 1 Testing y Buenas Prácticas Uno de los objetivos

Más detalles

TESTS EXAMEN ISG ACTUALIZADO SEP TEMA 6 PRUEBAS DEL SOFTWARE

TESTS EXAMEN ISG ACTUALIZADO SEP TEMA 6 PRUEBAS DEL SOFTWARE 01 [Sep. 2006] Según Boehm, validar es: TEMA 6 PRUEBAS DEL SOFTWARE a) Estamos construyendo el producto correcto?. (pág. 420) b) Estamos construyendo correctamente el producto?. c) El producto funciona?.

Más detalles

Sistemas Operativos. Introducción. Tema 6

Sistemas Operativos. Introducción. Tema 6 Sistemas Operativos Introducción Qué es un sistema operativo? Ubicación de un sistema operativo en un computador Descripción de un sistema operativo: Funcional Estructural Realización Funciones de los

Más detalles

Maestría en Seguridad Informática. Jorge Ezequiel, Bo Hugo Pagola Alberto Dums

Maestría en Seguridad Informática. Jorge Ezequiel, Bo Hugo Pagola Alberto Dums Maestría en Seguridad Informática Construcción de seguridad en metodologías Ágiles Jorge Ezequiel, Bo Hugo Pagola Alberto Dums Agenda 1. Introducción 2. Metodologías Ágiles 3. Problema de estudio 4. Experimentación

Más detalles

Técnicas Avanzadas de Testing Automatizado

Técnicas Avanzadas de Testing Automatizado Técnicas Avanzadas de Testing Automatizado Introducción: Testing ad hoc Testing sistemático Testing unitario Unidad y Suite de tests Frameworks xunit Fixtures compartidos e independecia Tests parametrizados

Más detalles

Microsoft Visual Studio está basado en.net framework. Definiciones de.net Framework:

Microsoft Visual Studio está basado en.net framework. Definiciones de.net Framework: 1) CONCEPTO La palabra "Visual" hace referencia al método que se utiliza para crear la interfaz gráfica de usuario (GUI). En lugar de escribir numerosas líneas de código para describir la apariencia y

Más detalles

Estructuras de control selectivas

Estructuras de control selectivas Práctica 3 Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 2.0.2 Concepto de sentencia y estructura de control El cuerpo de los métodos

Más detalles