Pruebas de Integración de Software

Catch Exception Canal
11 Apr 201911:48

Summary

TLDREl video trata sobre las pruebas de integración en el desarrollo de software, especialmente en entornos ágiles. Explica cómo los componentes o módulos, desarrollados de manera independiente, deben ser integrados para asegurar su correcto funcionamiento conjunto. Se mencionan dos estrategias principales: el Big Bang y las pruebas incrementales (ascendentes y descendentes). El objetivo es probar los módulos de manera aislada y luego integrarlos, garantizando que el sistema completo funcione correctamente. Además, se resalta la importancia de la integración continua en proyectos de software modernos.

Takeaways

  • 💻 El desarrollo de software actual utiliza metodologías ágiles con ciclos cortos, donde se crean componentes o módulos que luego deben integrarse.
  • 🔧 La integración de componentes desarrollados de manera independiente es crucial para asegurar que funcionen correctamente cuando interactúan juntos.
  • 🧩 Existen dos esquemas básicos de integración: Big Bang e incremental, cada uno con sus ventajas y desventajas según el proyecto.
  • ✅ Las pruebas de unidad verifican que los componentes individuales funcionen, pero la integración necesita pruebas adicionales para comprobar el funcionamiento del sistema completo.
  • 📊 La integración incremental puede hacerse de forma ascendente, empezando por los módulos de nivel inferior, o descendente, comenzando con los módulos de nivel superior.
  • 🚀 En la integración ascendente se usan drivers para invocar y probar módulos inferiores sin depender de los superiores.
  • ⬇️ En la integración descendente se usan 'stubs' para simular el comportamiento de los módulos inferiores que aún no han sido desarrollados o probados.
  • 🛠️ La integración continua es una técnica común que garantiza que cada vez que se desarrolla y prueba un nuevo componente, este se integre correctamente al resto del sistema.
  • 🌐 Las pruebas de integración garantizan que los componentes funcionen correctamente cuando se ensamblan, evitando problemas que puedan surgir en el sistema completo.
  • 🎯 La estrategia Big Bang prueba todo el sistema una vez que cada módulo ha sido probado individualmente, pero puede ser difícil identificar la causa de un error si ocurre.

Q & A

  • ¿Qué es la integración de componentes en el desarrollo de software?

    -La integración de componentes en el desarrollo de software se refiere a la combinación de módulos o partes de un programa que han sido desarrollados por separado para asegurar que trabajen juntos de manera correcta y eficiente.

  • ¿Cuál es la importancia de las pruebas de integración?

    -Las pruebas de integración son importantes porque aseguran que los componentes desarrollados individualmente funcionen bien cuando se combinan. Sin ellas, es difícil saber si el sistema completo funcionará correctamente, ya que pueden surgir problemas en la interacción entre componentes.

  • ¿Qué diferencia hay entre las pruebas de integración ascendentes y descendentes?

    -Las pruebas ascendentes empiezan probando los módulos más básicos o de menor jerarquía hacia los módulos superiores. Por otro lado, las pruebas descendentes inician probando los módulos de mayor jerarquía, usando simuladores o 'stubs' para reemplazar los módulos inferiores que aún no se han integrado.

  • ¿Qué es la estrategia de pruebas Big Bang?

    -La estrategia Big Bang consiste en integrar todos los módulos desarrollados y probados de manera individual en un solo paso, y luego ejecutar pruebas en el sistema completo. El problema con esta estrategia es que, si hay fallos, es difícil identificar cuál componente los causa.

  • ¿Qué papel juegan las metodologías ágiles en la integración de software?

    -Las metodologías ágiles promueven ciclos de desarrollo cortos y frecuentes, con entregas rápidas. En este contexto, la integración de software se realiza continuamente para asegurar que cada incremento funcione correctamente y esté listo para la entrega al usuario final.

  • ¿Qué se necesita para realizar pruebas de integración efectivas?

    -Para realizar pruebas de integración efectivas, se deben tener definidos claramente los componentes a probar, una estrategia de integración (ascendente, descendente o Big Bang), y un entorno configurado con las herramientas y el servidor necesarios para ejecutar las pruebas.

  • ¿Qué es un 'driver' y cuándo se utiliza en las pruebas de integración?

    -Un 'driver' es un programa simple que se utiliza en las pruebas ascendentes para invocar módulos individuales que aún no están integrados. Actúa como un invocador de funciones o métodos, ayudando a probar la funcionalidad de los módulos base.

  • ¿Qué es un 'stub' y cómo se utiliza en las pruebas de integración?

    -Un 'stub' es un sustituto temporal para un módulo que aún no ha sido desarrollado o probado. Se utiliza en las pruebas descendentes para simular el comportamiento de los módulos inferiores, proporcionando valores de prueba para asegurarse de que el módulo superior funciona correctamente.

  • ¿Cuáles son los principales retos de la integración continua en el desarrollo de software?

    -Los principales retos de la integración continua incluyen asegurar que todos los componentes desarrollados se integren correctamente y que el sistema siga funcionando tras cada nueva integración. También es necesario detectar rápidamente los problemas de interacción entre módulos y resolverlos de manera eficaz.

  • ¿Cómo se garantiza la correcta integración de componentes en un proyecto con múltiples desarrolladores?

    -Para garantizar la correcta integración de componentes en un proyecto con múltiples desarrolladores, se deben definir claramente las interfaces y dependencias de cada módulo. Además, es crucial realizar pruebas de integración continuas, comunicarse efectivamente entre los desarrolladores y utilizar un repositorio con control de versiones actualizado.

Outlines

00:00

👋 Bienvenida y enfoque en pruebas de integración

El vídeo comienza con una bienvenida, destacando la importancia de suscribirse y activar las notificaciones. Luego introduce el tema de las pruebas de integración en el desarrollo de software. Se menciona cómo las metodologías ágiles han cambiado el enfoque hacia el desarrollo modular, donde los componentes o módulos se crean en ciclos cortos y luego deben integrarse. La integración es un desafío importante, y el vídeo explora si los componentes funcionan correctamente cuando interactúan entre sí. También se destaca la necesidad de establecer un orden y un método adecuado para la integración.

05:01

🧩 Estrategias de pruebas: Big Bang y pruebas incrementales

Se explican dos estrategias clave para las pruebas de integración: la prueba de Big Bang y las pruebas incrementales. En la prueba de Big Bang, todos los módulos se prueban de manera individual y luego se integran al mismo tiempo, aunque presenta el riesgo de no saber dónde ocurre una falla. Por otro lado, las pruebas incrementales se dividen en dos categorías: ascendentes y descendentes. En las pruebas ascendentes, se comienza desde los módulos que no dependen de otros, utilizando drivers para realizar las pruebas. Las pruebas descendentes, en cambio, empiezan desde los módulos superiores y usan stubs para simular los módulos inferiores.

10:01

🛠️ Herramientas y enfoques para pruebas de integración

El vídeo concluye con una visión general de las pruebas de integración y las herramientas utilizadas, como JUnit o JYunís. Se destaca la relevancia de la integración continua, que permite integrar y probar módulos a medida que se desarrollan. Esto asegura que los módulos funcionen correctamente una vez integrados. Se reiteran las dos estrategias principales de pruebas: el enfoque Big Bang y las pruebas de integración ascendentes o descendentes. La finalidad es garantizar que el sistema completo funcione correctamente al unir todos los módulos, evitando problemas que puedan surgir en la integración.

Mindmap

Keywords

💡Desarrollo de software

El desarrollo de software se refiere al proceso de diseñar, crear y mantener aplicaciones o sistemas. En el video, se menciona que actualmente se realiza a través de ciclos pequeños e iterativos, especialmente con el auge de metodologías ágiles, donde se crean componentes individuales que luego son integrados para formar una funcionalidad completa.

💡Ciclos cortos

Los ciclos cortos son periodos breves de desarrollo dentro de metodologías ágiles. En estos, se crean y prueban módulos de software de manera rápida, lo que permite una mayor flexibilidad y adaptabilidad. El video destaca que al final de cada ciclo, los componentes deben integrarse para entregar una funcionalidad completa.

💡Componentes

Los componentes son partes individuales de un sistema de software, como clases o funciones en programación orientada a objetos. El video menciona que cada componente debe ser desarrollado y probado por separado antes de ser integrado con otros para asegurar que todo funcione correctamente en conjunto.

💡Integración de componentes

La integración de componentes implica combinar diferentes módulos o partes de un sistema para que funcionen como una unidad. Este proceso es crucial porque, como se menciona en el video, aunque los componentes funcionen individualmente, pueden surgir problemas cuando se combinan, debido a dependencias o interacciones inesperadas.

💡Pruebas de integración

Las pruebas de integración verifican si los componentes individuales de un sistema de software funcionan correctamente cuando se combinan. El video habla de dos enfoques principales para estas pruebas: el Big Bang, donde todo se prueba al mismo tiempo, y las pruebas incrementales, donde se van probando los módulos de manera gradual.

💡Big Bang

La estrategia Big Bang para pruebas de integración consiste en probar todos los componentes del software al mismo tiempo, después de haber sido desarrollados y probados de manera individual. El video señala que esta estrategia es útil, pero si ocurre un error, puede ser difícil identificar qué módulo lo causó.

💡Pruebas incrementales

Las pruebas incrementales son un enfoque de pruebas de integración donde los componentes se integran y prueban gradualmente. Pueden realizarse de manera ascendente, comenzando por los módulos más básicos, o descendente, comenzando por los módulos más altos en la jerarquía. Este enfoque permite identificar errores más fácilmente que el Big Bang.

💡Pruebas ascendentes

Las pruebas ascendentes son una técnica de integración en la que se empieza probando los módulos más bajos en la jerarquía (aquellos que no dependen de otros) y luego se van integrando progresivamente módulos más complejos. El video menciona que en esta técnica se utilizan 'drivers' para simular la interacción entre módulos.

💡Pruebas descendentes

Las pruebas descendentes son una estrategia de pruebas de integración que comienza con los módulos superiores de la jerarquía. Para simular los módulos inferiores que aún no han sido desarrollados o probados, se usan stubs, que proporcionan datos falsos para probar el comportamiento de los módulos superiores. Esta técnica permite probar primero los componentes clave del sistema.

💡Integración continua

La integración continua es una práctica donde los desarrolladores integran su trabajo de manera regular y frecuente, asegurando que los cambios se prueben y validen de inmediato. En el video se menciona que esta metodología ayuda a evitar problemas de integración tardía, ya que se resuelven errores de manera temprana, facilitando un desarrollo más fluido.

Highlights

El desarrollo de software actualmente se realiza con metodologías ágiles y ciclos cortos de entrega.

Es importante realizar pruebas de integración para asegurarse de que los componentes desarrollados funcionen en conjunto.

El enfoque principal está en integrar componentes probados individualmente para formar una funcionalidad completa.

Las metodologías ágiles requieren una integración continua de los componentes para ofrecer valor rápidamente al cliente.

La arquitectura del software juega un papel clave en la integración de componentes desarrollados por diferentes equipos.

Existen dos tipos principales de pruebas de integración: Big Bang y pruebas incrementales.

Las pruebas incrementales pueden dividirse en ascendentes, descendentes e híbridas, combinando ambas.

La estrategia Big Bang prueba todos los componentes de forma simultánea, pero es difícil localizar errores cuando fallan.

Las pruebas ascendentes comienzan desde los módulos básicos y usan drivers para llamar y probar otros módulos en niveles superiores.

En las pruebas descendentes se utilizan 'stubs', sustitutos de módulos no desarrollados, para probar los módulos de nivel superior.

El uso de pruebas de integración es crucial para garantizar que la suma de los módulos funcione correctamente como un sistema completo.

Las pruebas de integración continua permiten detectar y corregir errores de integración rápidamente durante el desarrollo ágil.

La jerarquía de dependencias entre los módulos es fundamental para definir la estrategia de integración y pruebas.

Es importante contar con herramientas y servidores configurados para realizar pruebas de integración eficientemente.

Se prometen ejemplos prácticos en próximos videos, utilizando herramientas como JUnit o NUnit para demostrar las pruebas de integración.

Transcripts

play00:00

hola amigos de la programación el

play00:02

desarrollo es obra actualmente se hacen

play00:04

pequeños ciclos de corto tiempo donde se

play00:07

desarrollan componentes o módulos que

play00:10

luego deben ser integrados este vídeo

play00:13

habla acerca de eso no olviden

play00:15

suscribirse al canal darle like si les

play00:18

gusta el vídeo y activar la campanita de

play00:20

notificaciones bienvenidos

play00:27

en el tema de pruebas de sofá vamos a

play00:30

dar los elementos conceptuales de lo que

play00:32

son las pruebas de integración

play00:36

el desarrollo de software actualmente y

play00:38

sobre todo por el auge de las

play00:40

metodologías ágiles se hace utilizando

play00:43

sitios interactivos donde en cada uno de

play00:47

ellos se desarrolla o se crea una serie

play00:49

de componentes que le dan valor al

play00:52

proyecto desarrollado desde el punto de

play00:55

vista de el usuario pero eso implica

play00:58

ciertos retos y ciertos aspectos

play01:01

técnicos que es necesario tener en

play01:03

cuenta por ejemplo la integración de los

play01:07

componentes que se desarrollan y de la

play01:09

mano de esto pues las pruebas la

play01:12

pregunta es funcionan los componentes

play01:14

cuando ya están interactuando juntos

play01:18

porque claro sabemos que hay conocido

play01:22

dicho que es que el todo es más que la

play01:25

suma de las partes yo puedo tener mis

play01:28

componentes que quiero integrar cuando

play01:31

me refiero a componentes el recibimiento

play01:33

el viniendo a funciones como nuestro

play01:36

refiriendo a clases en él

play01:39

en programación orientada a objetos y la

play01:41

pregunta de si se amplió integrar esos

play01:42

componentes de esas clases de esos

play01:44

métodos que funcionarán una vez

play01:47

integrados entonces eso es un gran reto

play01:49

la idea de que yo debo establecer un

play01:52

nuevo orden un método para hacer esa

play01:54

integración de los componentes que he

play01:56

desarrollado en el caso de desarrollo

play01:58

interactivo en un ciclo de los

play02:00

componentes que se han desarrollado de

play02:01

manera independiente y posiblemente por

play02:03

programadores o desarrollos o

play02:05

desarrolladores perdón en diferentes y

play02:08

después de nuevo integrarlos para crear

play02:11

una gran funcionalidad entonces la

play02:14

integración se va a basar mucho en la

play02:16

arquitectura sea porque la tenga a dos o

play02:19

porque la tenga formalmente en un modelo

play02:21

definida

play02:24

conforme se van obteniendo estos

play02:26

componentes individuales por parte del

play02:29

mismo desarrollador o por parte incluso

play02:31

de otros desarrolladores pues la idea es

play02:34

probar esos componentes pero luego debo

play02:37

integrarlos esto hace parte de lo que ya

play02:40

se ha mencionado el desarrollo

play02:41

interactivo incrementar pero que además

play02:43

se le suma la integración continua ya no

play02:46

puedo irlos acumulando funcionando los

play02:48

componentes individualmente sino que

play02:51

realmente luego la idea es irlos

play02:53

integrando cada que se termina un ciclo

play02:55

con unos componentes desarrollados y

play02:59

probados pues integrarlos para que

play03:01

presenten ya una funcionalidad completa

play03:03

al usuario final o el cliente

play03:06

entonces

play03:08

como se integra el software la idea es

play03:11

seleccionar los componentes que van a

play03:13

ser integrados habitando en cuenta que

play03:16

de nuevo se está utilizando desarrollo

play03:19

por ciclos pequeños y con entregas

play03:23

completas al final de cada sitio

play03:26

entonces pues los componentes serían los

play03:30

que desarrollo en ese sitio los que voy

play03:32

a integrar pero en términos generales yo

play03:34

tengo una cantidad de componentes llamas

play03:36

en clases llame cementos llamas en

play03:38

funciones entonces la idea es

play03:41

seleccionar de ellos los que voy a

play03:43

integrar

play03:45

para ello ya una vez seleccionados debe

play03:48

establecer cuál va a ser mi estrategia

play03:51

de integración que ya las vamos a ver

play03:52

más adelante y obviamente algo muy

play03:56

técnico es que debo tener ya configurado

play03:59

técnicamente el servidor y las

play04:02

herramientas que voy a utilizar para

play04:03

realizar esas pruebas

play04:05

la idea finalmente es que todos los

play04:08

componentes en el repositorio que hemos

play04:11

definido estén con la última versión y

play04:14

que esa última versión haya pasado una

play04:16

serie de procesos que permitan decir que

play04:19

está aprobadas la versión para ser

play04:20

integrada entonces hay dos esquemas

play04:24

fundamentales o básicos para las plazas

play04:26

de integración el primero es el big band

play04:28

y el segundo son las plazas

play04:29

incrementales las pruebas incrementales

play04:32

al llevar esas categorías las

play04:33

ascendentes que ya miraremos qué

play04:36

significan las descendentes y las

play04:39

híbridas con las híbridas me refiero a

play04:41

la combinación de las ascendentes y las

play04:43

descendentes entonces vamos a suponer

play04:45

que vamos a hacerlo desde el punto de

play04:48

vista del big band

play04:49

desde este punto de vista la idea es

play04:52

primero cada uno de estos módulos en el

play04:55

bc el de él

play04:58

y el f han sido probados individualmente

play05:00

y han pasado las pruebas ésas

play05:02

normalmente se conocen como pruebas de

play05:04

unidad porque obviamente ahí lo está

play05:07

diciendo que cada una de estas es una

play05:09

unidad que puede una

play05:10

un componente un método en fin y

play05:12

entonces voy a probarlo ya lo probé de

play05:14

manera individual y la estrategia de big

play05:17

band es probar todo el programa

play05:20

completamente ya las provenido la mente

play05:22

las relacionó esto es una relación la

play05:25

que vemos aquí es una relación

play05:27

jerárquica es decir a es el que está

play05:29

haciendo referencia a hacer avería de y

play05:33

a su vez ve hace referencia a él o de

play05:35

las referencias que pudiéramos ver lo

play05:37

que depende para funcionar que depende

play05:42

de efe para funcionar y que el módulo

play05:44

principal que se ve aquí el de altura

play05:46

más jerárquica

play05:47

pues depende de p c y d para funcionar

play05:50

con la lógica aquí es pues si todos

play05:53

funcionan probemos los ordinales porque

play05:55

debe funcionar correctamente es la única

play05:57

del pib para qué problema tienen pues

play06:00

que si hay se encuentra una falla la

play06:02

verdad es que no sabemos en dónde pudo

play06:04

haberse ocurrido o por qué poder se

play06:06

ocurrido una falla lógica o una falla de

play06:09

alguna de la relación entre los módulos

play06:11

etcétera pero es una estrategia válida y

play06:13

que dependiendo obviamente

play06:15

la particularidad de lo que quiera

play06:16

probar puede ser útil o no

play06:19

ahora las pruebas de integración vamos a

play06:22

ver las que son ascendentes la idea es

play06:25

que voy probando módulo por módulo

play06:28

entonces empiezo como el nombre lo dice

play06:31

ascendente empiezo de la base de los

play06:33

módulos que no dependen de ninguno de lo

play06:35

que serían como las hojas y los pruebas

play06:38

de manera independiente para hacer eso

play06:40

define una serie de drivers que es un

play06:43

programa

play06:46

voy a utilizar un programa simple que

play06:49

utiliza para invocar para llamar a este

play06:52

módulo y hacer las pruebas este

play06:55

programita o este elemento llamado

play06:58

driver lo que va a hacer es instancia en

play07:00

el caso de que sea una clase instancia

play07:02

de esta clase o llamar a este módulo o

play07:05

incluir esta de leer en fin lo que desea

play07:07

por lo que sea esta relación para probar

play07:09

el funcionamiento de esto cabe anotar

play07:12

que aquí estoy hablando de un punto está

play07:14

muy técnico de lo que es las pruebas de

play07:17

la integración pero estas pruebas que se

play07:21

diseñan aquí en este driver dependerán

play07:23

obviamente de algunos casos de prueba

play07:25

que se hayan sido diseñados para ser

play07:27

probados en cada uno de estos honores

play07:29

luego de que esto esté probado la idea

play07:32

es que pues como el modo sigo con el

play07:35

segundo nivel de jerarquía que el módulo

play07:37

b y el módulo de como el módulo de ya

play07:40

fue probado y el módulo ha reprobado

play07:41

entonces voy a probar el módulo b y el

play07:44

módulo de entonces ya algún driver para

play07:47

hacer la prueba de murube y algún driver

play07:50

para hacerlo

play07:51

cabe anotar las volver pronto no fue

play07:53

claro al principio que para hacer estas

play07:54

pruebas debe tener muy claro la

play07:57

jerarquía que tiene los molesto voy a

play07:59

aprobar la jerarquía de llamados que

play08:01

hacen un módulo a los demás o de

play08:03

dependencias o de asociaciones que hacen

play08:05

un módulo con respecto al demás para

play08:07

poder utilizar estas estrategias que

play08:09

aquí defina los nuevos los drivers y ya

play08:12

el módulo de sede había sido probado y

play08:16

también el jefe y el dentro como estos

play08:18

ya están aquí ya no es necesario definir

play08:21

el trabjo aunque pudiera serlo pero éste

play08:23

ya puede hacer de driver a su vez y de

play08:25

módulo probando esto esa es la técnica

play08:27

ascendente la técnica descendente es muy

play08:31

similar pero como el nombre lo indica

play08:32

empiezo de arriba hacia abajo en este

play08:34

caso del módulo a entonces defino una

play08:36

serie de métodos que se llaman a estar

play08:38

en inglés que lo que son son como

play08:40

sustitutos o son una especie de

play08:43

simuladores de estos modos que aún no

play08:46

han sido probados si simplemente el

play08:49

tiempo de definir programados en algunos

play08:51

casos

play08:52

estos aplaste módulos simplemente estos

play08:55

que están aquí retornan valores a este

play08:58

modo que éste necesitaba ser probado

play09:00

pero esos valores pueden ser fake es

play09:02

decir no necesariamente en que está el

play09:04

código el algoritmo que realmente de

play09:06

este de este método de ese idea sino

play09:09

simplemente los prueban con métodos que

play09:11

retornan valores que éste necesita

play09:15

funcionar este le pasan a centrar estos

play09:17

retornos valores que necesita para

play09:19

funcionar para probar si este modo

play09:21

realmente está bien con los valores que

play09:22

suponen que le van a empresa pero luego

play09:25

yo voy reemplazando eso es estar por

play09:27

neil por módulos reales

play09:32

y aquí tengo dos opciones o sigo de esta

play09:36

manera transversal o móvil por

play09:38

profundidad así como por anchura o sido

play09:40

por profundidad de la primera opción va

play09:42

a ser seguir por anchura se aproveche

play09:44

estos dos no definir está para el bebé y

play09:48

lo logré el plazo

play09:51

la opción 2 es irme por anchura y de

play09:55

final modo se desarrolló un estado para

play09:58

el módulo ver entonces así seguiría

play10:00

sucesivamente esas son las estrategias

play10:03

del riego como les digo es un vídeo muy

play10:05

conceptual entender cómo funciona y por

play10:09

qué el de las pruebas ascendentes o

play10:13

descendentes después de integración el

play10:15

big-bang entenderlos y en un próximo

play10:18

vídeo mostraré un caso particular

play10:21

utilizando puede ser en el unit ojota

play10:23

yunís que ya son herramientas y que

play10:25

mostrarán un ejemplo de cómo se hace

play10:27

esto para concluir y hablamos de las

play10:30

pruebas de integración que la

play10:32

integración es un esquema una estrategia

play10:34

de desarrollo muy común en la actualidad

play10:36

incluso la integración continua que

play10:38

permite que a medida que se vayan

play10:39

desarrollando y probando módulos vayan

play10:41

integrando para poderlos integrar todo

play10:43

garantizar que la integración no me

play10:45

cause problemas porque como lo dije

play10:48

anteriormente el todo es más que la suma

play10:50

de sus partes y el hecho de que módulos

play10:52

funcionen cada uno de manera individual

play10:54

no me implica directamente que los

play10:56

módulos funcionen cuando se integran

play10:58

para eso tengo dos estrategias big man

play11:01

a todos los módulos de manera individual

play11:03

y luego integrarlos todos y probar todo

play11:06

el sistema

play11:07

la otra es las trabas de integración que

play11:09

puede ser ascendente donde empiezo con

play11:11

los nodos básico utilizando drivers para

play11:15

ir llamando a esos muros que voy

play11:16

probando o la otra la descendente donde

play11:19

utilizó stats que es al revés tengo el

play11:21

módulo de arriba gráficamente

play11:22

desarrollado he probado y empiezo a

play11:25

utilizar reemplazos o está en la parte

play11:28

inferior jerárquica para que retornen

play11:31

los datos que está esperando recibir

play11:32

para ser probados una vez que estemos

play11:34

los de prueba de esa manera pues empiezo

play11:36

a integrar cada uno de ellos

play11:38

bueno hemos terminado el vídeo espero

play11:40

que les haya gustado que sea de su útil

play11:43

de utilidad y nos vemos en la próxima

play11:45

oportunidad muchas gracias

Rate This

5.0 / 5 (0 votes)

相关标签
integración softwarepruebas unitariasdesarrollo ágilBig Bangmetodologías ágilesciclo de desarrollopruebas ascendentespruebas descendentespruebas incrementalesintegración continua
您是否需要英文摘要?