B3-T9 Repositorios, Generación de código y documentación. Metodologías de desarrollo. Pruebas. Programas para control de versiones. Flashcards
Que son las herramientas CASE ?
Las herramientas CASE (Computer-Aided Software Engineering) son aplicaciones de software que asisten en el desarrollo y mantenimiento de sistemas de software
Que son las Low Code Platforms ?
son entornos de desarrollo que permiten a los usuarios crear aplicaciones con un mínimo de codificación manual, utilizando interfaces gráficas y componentes predefinidos.
nota: es el tipico IDE que pintas cajas y por debajo te escribe codigo
Que es el XMI ?
Lenguaje de XML para el intercambio de información de metamodelos (lenguaje xml de intercambio de información entre herramientas CASE)
Con que dos categorias podemos clasificar los repositorios de codigo ?
- Centralizados
- Distribuidos
Ejemplos de sofwtare repositorios centralizados y distribuidos
- Centralizados: CVS, Subversion(SVN), TFS/SourceSafe
Subversion: Cliente TortoiseSVN - Distribuidos: Git, Mercurial, Bazaar, Dares, BitKeeper
Quien fue el creador de GIT, la herramienta de control de versiones distribuido ?
Linus Torvalds.
Exacto, el creador del nucleo de linux
¿Qué puerto se usa para las comunicaciones HTTPS en Git?
el de HTTPS, claro, osea el 443
¿Qué puerto generalmente se usa para las comunicaciones SSH en Git?
Pues el de SSH, claro. Osea el 22
¿Git usa un puerto específico para sus comunicaciones?
No, utiliza los puertos asociados a los protocolos con los que se comunica, como HTTPS (443) y SSH (22).
Objetos que utiliza GIT
- Tree: Representa un directorio
- Blob (Binary Large Object), contenido de un archivo sin ningún tipo de metadatos
- commit: “instantánea” del estado de un proyecto en un momento particular.
- tag: una versión o un punto específico en la historia del proyecto
- Rama: permiten a los desarrolladores trabajar de manera independiente en nuevas funcionalidades, correcciones de errores o experimentos, sin afectar directamente el código principal.
que es JFrog Artifactory ?
Repositorio de artefactos universal. Es una herramienta diseñada para gestionar y distribuir software, binarios y dependencias en cualquier lenguaje de programación
Artifactory facilita el trabajo de los equipos de desarrollo al proporcionar un entorno centralizado, escalable y seguro para almacenar y gestionar artefactos de software
Artifactory se integra con diversas herramientas de desarrollo, como sistemas de control de versiones (SCMs), entornos de desarrollo integrados (IDEs) y suites de CI/CD, lo que permite una gestión más eficiente y coherente de los procesos de DevOps
Que hace el comando git init ?
crea un repositorio de git
Que hace el comando git config –global –list ?
El comando git config –global –list en Git muestra una lista de todas las configuraciones globales que se han establecido para Git en tu entorno. Estas configuraciones se aplican a todos los repositorios de Git del usuario en esa máquina.
Descripción:
git config: Es el comando principal para configurar los ajustes de Git.
–global: Indica que las configuraciones se aplicarán a nivel global, es decir, para todos los repositorios del usuario en esa máquina.
–list: Lista todas las configuraciones que han sido establecidas.
Cuando ejecutas git config –global –list, verás configuraciones como tu nombre de usuario, tu correo electrónico, la configuración del editor predeterminado, entre otros.
Que hace el comando git branch ?
lista las ramas
Que hace el comando git branch <rama> ?</rama>
crea la rama x
Que hace el comando git merge ?
se utiliza para fusionar los cambios de una rama en la rama actual
- git merge <rama> : Funde la rama especificada con la rama actual</rama>
- git merge -m: se utiliza para realizar una fusión (merge) de ramas en Git y, al mismo tiempo, agregar un mensaje personalizado que describe la fusión.
Diferencia entre git pull y git fetch (T)
- git pull: te trae los datos al local repo y al working directory
- git fetch: te trae los datos al local del repo pero no te actualiza el working directory
Que hace el comando git log ?
Muestra el historial de commits del repositorio. Incluye información como el hash del commit, autor, fecha y mensaje del commit.
Que hace el comando git diff ?
listar diferencias
nota: git diff HEAD~1 HEAD: Diferencias entre el último commit y el commit anterior.
Que es un fork ? (T)
es una copia de un repositorio que se crea bajo la cuenta de un usuario diferente al propietario original.
En subversion, que es trunk ?
La rama principal del desarrollo donde se hacen los cambios estables y más importantes.
En subversion, que es Branches ?
Directorio donde se almacenan las ramas de desarrollo paralelas.
Nombra distintos tipos de pruebas
Pruebas Unitarias:
Pruebas de Integración.
Pruebas del Sistema.
Pruebas de Implantación.
Pruebas de Aceptación.
Pruebas de Regresión.
Que son las pruebas unitarias de caja blanca y caja negra ?
Las de caja blanca el desarrollador tiene acceso al codigo fuente
Las de caja negra el desarrollados no tiene acceso al codigo
Tipos de pruebas de integracion
- Incremental
1.1 top-down
1.2 bottom-up
1.3 combinadas - No incremental
Tipos de prueba de sistema
Pruebas funcionales
Pruebas de comunicación
Pruebas de rendimiento
Pruebas de volumen
Pruebas de sobrecarga
Pruebas de disponibilidad de datos
Pruebas de facilidad de uso
Pruebas de operación
Pruebas de entorno
Pruebas de seguridad
¿Cuál de las siguientes opciones NO es una característica de Git?
a) Distribuido: la mayor parte del trabajo se realiza localmente.
b) Trabaja sin conexión.
c) Centralizado: todos los desarrolladores trabajan en una copia local del código, pero interactúan directamente con un servidor central.
d) Soporta un sistema avanzado de ramas.
C
Centralizado: todos los desarrolladores trabajan en una copia local del código, pero interactúan directamente con un servidor central.
¿Cuál es la función del archivo “.gitignore”?
a) Almacenar información sobre las ramas del repositorio.
b) Definir la configuración global de Git para un usuario.
c) Especificar qué archivos o directorios deben ser ignorados por el sistema de control de versiones.
d) Listar las diferencias entre dos commits.
C
Especificar qué archivos o directorios deben ser ignorados por el sistema de control de versiones.
¿Cuál de los siguientes comandos de Git se utiliza para deshacer los cambios de un commit específico creando un nuevo commit que revierte los efectos?
a) git reset
b) git revert
c) git commit –amend
d) git rebase
B
git revert
Cual de estas son metodologias tradicionales y cuales son agiles ?
- Cascada (waterfall)
- Modelo en V (v-model)
- Modelo en Espiral
- XP
- Scrum
- FDD
- BDD - Behavior-driven development
- Kanban: pizarra con tareas (To do - Doing - Done)
1- Tradicionales:
- Cascada (waterfall)
- v-model -> enfatiza verificacion y validacion
- Modelo en Espiral -> centrado en analisis riesgos
2- Agiles:
- XP
- Scrum
- FDD
- BDD - Behavior-driven development
- Kanban: pizarra con tareas (To do - Doing - Done)
Cual es la labor del scrum master ?
Asegura que el equipo siga las prácticas ágiles
Elimina los obstáculos
Cual es la labor del product owner ?
Responsable de maximizar el valor del producto y de gestionar el Product Backlog.
Define y prioriza los requisitos (historias de usuario)
Cual es el enfoque principal de la metodología Metrica V3 ?
Enfoque orientado al proceso.
Organizada en Procesos, Actividades y Tareas que cubren todas las fases del ciclo de vida de un proyecto.
Dime los 3 procesos principales de la metodología métrica v3
pista: PSI-PDS-MSI
PSI: Planificación de Sistemas de Información
PDS: Desarrollo de Sistemas de Información
MSI: Mantenimiento de Sistemas de Información
Que son las pruebas de humo (smoke testing) ?
son una revisión rápida de un producto de software para comprobar que funciona y no tiene defectos evidentes que interrumpan la operación básica del mismo.
Según MÉTRICA v3, ¿cuál es el diagrama que describe en detalle un determinado escenario de un caso de uso?
a) Diagrama de interacción.
b) Diagrama de representación.
c) Diagrama de flujo de datos.
d) Diagrama de casos de uso.
A
Diagrama de interacción
Según MÉTRICA v3, ¿qué tipo de pruebas son las que tienen como objetivo verificar el correcto ensamblaje entre los distintos componentes para comprobar que interactúan correctamente a través de sus interfaces, cubren la funcionalidad establecida y se ajustan a los requisitos no funcionales especificados?
a) Pruebas del sistema.
b) Pruebas de implantación.
c) Pruebas de regresión.
d) Pruebas de integración.
D
Pruebas de integración
Según establece MÉTRICA v3, ¿qué participantes están presentes en la tarea de “Elaboración de los Manuales de Usuario”?
a) Usuarios Expertos.
b) Consultor de Sistemas de Información.
c) Equipo de Formación.
d) Equipo de Proyecto.
D
Equipo de Proyecto.
Indique la definición correcta en referencia a los diagramas de flujo de datos de Métrica v3:
a) Almacén de datos: representa la información en movimiento utilizada por el sistema.
b) Proceso de control: representa procesos que coordinan y sincronizan las actividades de otros procesos del diagrama de flujo de datos.
c) Flujo de control: representa el flujo entre dos procesos de control.
d) Flujo de datos: representa el movimiento de los datos, y establece la comunicación entre dos almacenes.
B
Proceso de control: representa procesos que coordinan y sincronizan las actividades de otros procesos del diagrama de flujo de datos.
Según Métrica v3, en la teoría de la normalización se define el término Dependencia Funcional como:
a) Un atributo Y depende funcionalmente respecto de otro X, si depende funcionalmente de él en su totalidad, es decir, no depende de ninguno de los posibles atributos que formen parte de X.
b) Un atributo Y se dice que depende funcionalmente de otro X si, y sólo si, a cada valor de X le corresponde un único valor de Y.
c) Un atributo depende funcionalmente de otro si, y sólo si, depende de él a través de otro atributo.
d) Un atributo X sólo puede tomar un único valor de dominio simple.
B
Un atributo Y se dice que depende funcionalmente de otro X si, y sólo si, a cada valor de X le corresponde un único valor de Y.
Según Métrica v3, ¿qué tipo de pruebas consiste en determinar que los tiempos de respuesta están dentro de los intervalos establecidos en las especificaciones del sistema?
a) Pruebas de respuesta.
b) Pruebas de sobrecarga.
c) Pruebas de rendimiento.
d) Pruebas de tiempo.
C
Pruebas de rendimiento.
Según Métrica v3, en el modelo Entidad/Relación extendido las relaciones se definen por:
a) Categoría, nombre, tipo de correspondencia.
b) Atributo, cardinalidad, nombre.
c) Atributo, dominio, nombre.
d) Cardinalidad, nombre, tipo de correspondencia
D
Cardinalidad, nombre, tipo de correspondencia
¿Cuál de las siguientes opciones NO es una característica de un repositorio de Git?
a) Distribuido.
b) Centralizado
c) Control de versiones.
d) Integridad de datos.
B
Centralizado
GIT es distribuido, no centralizado (subversion si es centralizado, por ejemplo)
¿Qué tipo de pruebas en Métrica 3 se centra en verificar el correcto funcionamiento de las interfaces entre los distintos subsistemas?
a) Unitarias.
b) De implantación.
c) De integración.
d) De sistema.
C
De integración.
¿Qué comando de Git se utiliza para crear una nueva rama?
git branch <nombre_de_la_rama></nombre_de_la_rama>
Nombra tres plataformas colaborativas de software de código abierto
GitHub, GitLab, SourceForge
¿Cuáles son los tipos de pruebas de integración?
A) Unitarias y Funcionales
B) Estáticas y Dinámicas
C) Incrementales y No Incrementales
D) Automatizadas y Manuales
C
Incrementales y No Incrementales
Pruebas de Integración Incrementales:
Top-Down: Integración y pruebas comienzan desde los módulos de nivel superior hacia los de nivel inferior.
Bottom-Up: Integración y pruebas comienzan desde los módulos de nivel inferior hacia los de nivel superior.
Combinadas: Uso combinado de enfoques top-down y bottom-up.
Pruebas de Integración No Incrementales:
En este enfoque, todos los módulos se integran de una vez y luego se prueba el sistema completo, también conocido como “Big Bang Integration”.
¿Cuáles son los tres procesos principales de la metodología Métrica v3?
A) Planificación, Implementación, Pruebas
B) Identificación, Desarrollo, Evaluación
C) Planificación de Sistemas de Información, Desarrollo de Sistemas de Información, Mantenimiento de Sistemas de Información
D) Diseño, Desarrollo, Implementación
C
Planificación de Sistemas de Información, Desarrollo de Sistemas de Información, Mantenimiento de Sistemas de Información
Descripción:
Planificación de Sistemas de Información (PSI): Consiste en la planificación estratégica y operativa para identificar las necesidades de sistemas de información en la organización.
Desarrollo de Sistemas de Información (DSI): Se enfoca en el análisis, diseño, construcción, e implementación de sistemas de información.
Mantenimiento de Sistemas de Información (MSI): Involucra la actualización, mejora y corrección de errores en los sistemas de información existentes.
¿Qué es un fork en el contexto de desarrollo de software y sistemas de control de versiones?
A) Una técnica de depuración de código
B) Un proceso para combinar dos ramas de desarrollo en una
C) La creación de una copia independiente de un proyecto o repositorio que permite realizar cambios y desarrollos de manera separada
D) Un protocolo de comunicación entre procesos
C
La creación de una copia independiente de un proyecto o repositorio que permite realizar cambios y desarrollos de manera separada
Fork es una operación común en sistemas de control de versiones distribuidos como Git. Permite a los desarrolladores crear una copia independiente de un proyecto o repositorio, lo que les permite experimentar, desarrollar nuevas funcionalidades o corregir errores sin afectar el proyecto original. Los cambios realizados en el fork pueden eventualmente ser propuestos para integrarse de nuevo en el proyecto principal mediante un pull request.
¿Qué es JFrog Artifactory en el contexto de DevOps y gestión de artefactos?
A) Un lenguaje de programación para aplicaciones web
B) Un sistema operativo para servidores
C) Un repositorio universal para gestionar y distribuir artefactos de software
D) Un protocolo de comunicación entre procesos
C
Un repositorio universal para gestionar y distribuir artefactos de software
JFrog Artifactory es una plataforma de gestión de repositorios de artefactos que permite a los equipos DevOps almacenar, gestionar y distribuir artefactos de software, como binarios, paquetes, contenedores y componentes, de manera centralizada y segura. Facilita la integración con herramientas de CI/CD y mejora la eficiencia y la seguridad en el proceso de entrega de software.
¿Cuál es la principal diferencia entre los comandos git pull y git fetch en Git?
A) git pull solo descarga las actualizaciones del repositorio remoto sin aplicarlas, mientras que git fetch descarga y aplica las actualizaciones automáticamente.
B) git fetch solo descarga las actualizaciones del repositorio remoto sin aplicarlas, mientras que git pull descarga y aplica las actualizaciones automáticamente.
C) git fetch crea un nuevo repositorio, mientras que git pull actualiza el repositorio actual.
D) git pull elimina los cambios locales, mientras que git fetch preserva los cambios locales.
B
git fetch solo descarga las actualizaciones del repositorio remoto sin aplicarlas, mientras que git pull descarga y aplica las actualizaciones automáticamente.
Descripción:
git fetch: Descarga los cambios del repositorio remoto a tu repositorio local, pero no los aplica automáticamente a tu rama de trabajo. Es útil para ver qué cambios se han hecho en el repositorio remoto antes de fusionarlos manualmente.
git pull: Combina la operación de git fetch y git merge en un solo paso. Descarga los cambios del repositorio remoto y los fusiona automáticamente con tu rama actual.
¿Qué hace el comando git init en Git?
A) Descarga un repositorio desde un servidor remoto
B) Inicializa un nuevo repositorio de Git en el directorio actual
C) Fusiona dos ramas existentes
D) Elimina un repositorio de Git
B
Inicializa un nuevo repositorio de Git en el directorio actual
git init es un comando utilizado para crear un nuevo repositorio de Git. Al ejecutarlo, Git configura un nuevo repositorio en el directorio actual, permitiendo que comiences a rastrear cambios y a gestionar el historial de versiones de los archivos en ese directorio.
¿Qué es XMI en el contexto de la informática?
a) Un protocolo de transferencia de archivos.
b) Un formato de intercambio de modelos para el desarrollo de software.
c) Un estándar de compresión de datos.
d) Una herramienta de monitoreo de red.
B
Un formato de intercambio de modelos para el desarrollo de software.
a) Un protocolo de transferencia de archivos.: Los protocolos de transferencia de archivos incluyen FTP y SFTP, no XMI.
c) Un estándar de compresión de datos.: Los estándares de compresión incluyen ZIP y GZIP, no XMI.
d) Una herramienta de monitoreo de red.: Herramientas de monitoreo de red incluyen Nagios y Zabbix, no XMI.
XMI (XML Metadata Interchange) es un estándar para el intercambio de información de modelos en el desarrollo de software, basado en XML y utilizado principalmente en el ámbito de la ingeniería de software y los sistemas de modelado.
¿Cuál de las siguientes opciones NO es un tipo de objeto en Git?
A. Tree
B. Blob
C. Commit
D. Branch
D
Branch
Las ramas (branches) no son objetos en Git, sino referencias a commits. Los objetos en Git son: Tree (representa un directorio), Blob (contenido de un archivo), Commit (instantánea del estado del proyecto) y Tag (versión específica del proyecto)
¿Cuál de los siguientes comandos de Git se utiliza para descargar un repositorio remoto a tu máquina local?
A. git push
B. git fetch
C. git clone
D. git pull
C
git clone
El comando git clone crea una copia local de un repositorio remoto en tu sistema
¿Qué comando Git se utiliza para ver el historial de commits de un repositorio?
git log
¿Qué significa HEAD en Git?
HEAD es un puntero que indica el commit actual en el que te encuentras en tu repositorio
¿Cuál es la diferencia entre git pull y git fetch en Git?
a) git pull solo obtiene los cambios remotos sin actualizar el repositorio local, mientras que git fetch actualiza y combina los cambios en el repositorio local.
b) git fetch solo obtiene los cambios remotos sin actualizar el repositorio local, mientras que git pull actualiza y combina los cambios en el repositorio local.
c) git pull descarga archivos individuales, mientras que git fetch descarga ramas enteras.
d) git fetch crea una nueva rama en el repositorio local, mientras que git pull mantiene la rama actual.
B
git fetch solo obtiene los cambios remotos sin actualizar el repositorio local, mientras que git pull actualiza y combina los cambios en el repositorio local.
git fetch descarga todos los cambios de las ramas remotas al repositorio local, pero no fusiona esos cambios con las ramas locales. git pull, por otro lado, realiza un git fetch seguido de un git merge, lo que significa que descarga los cambios y luego los fusiona automáticamente en la rama actual.
¿Qué significa el término “fork” en Git?
a) Un método para fusionar ramas
b) La creación de una copia de un repositorio en la cuenta del usuario
c) Un tipo de error en el código
d) Un comando para eliminar un repositorio
B
La creación de una copia de un repositorio en la cuenta del usuario
¿Cuál es la principal diferencia entre un fork y un clon en Git?
a) Un fork crea una copia local, mientras que un clon crea una copia remota
b) Un fork crea una copia independiente del repositorio original, mientras que un clon mantiene la conexión con el repositorio original
c) No hay diferencias significativas entre ellos
d) Un fork solo se puede hacer en repositorios públicos
B
Un fork crea una copia independiente del repositorio original, mientras que un clon mantiene la conexión con el repositorio original
¿Cuál es el propósito principal de crear un fork en proyectos de código abierto?
a) Para modificar directamente el repositorio original
b) Para experimentar con cambios sin afectar al proyecto original
c) Para aumentar la visibilidad del proyecto
d) Para eliminar versiones anteriores del código
B
Para experimentar con cambios sin afectar al proyecto original
Un Pull request es una petición al administrador del repositorio para unir….
a) Su código modificado
b) Su código con el modificado
c) Su código modificado con el código principal
d) Su código xo el del administrador
C
Su código modificado con el código principal
¿Cuál de las siguientes plataformas es una herramienta de integración continua y entrega continua que forma parte de un servicio de repositorio Git, conocido por sus capacidades de DevOps integrales?
a) Jenkins
b) Travis CI
c) GitHub Actions
d) GitLab CI
D
GitLab CI
a) Jenkins:
Jenkins es una herramienta de integración continua y entrega continua muy popular y potente. Sin embargo, no es un servicio de repositorio Git en sí mismo. Jenkins se puede integrar con múltiples sistemas de control de versiones, como Git, Subversion, Mercurial, etc. No ofrece un servicio de repositorio Git con capacidades integrales de DevOps, sino que se enfoca más en la automatización de la integración y entrega continua.
b) Travis CI:
Travis CI es una herramienta de integración continua que se utiliza principalmente con GitHub. Aunque es excelente para CI/CD, no proporciona un servicio de repositorio Git propio. Travis CI se integra con repositorios existentes en GitHub para ejecutar pruebas y despliegues automatizados, pero no gestiona los repositorios de código en sí mismo.
c) GitHub Actions:
GitHub Actions es una herramienta de CI/CD que forma parte de GitHub. Si bien proporciona capacidades de DevOps y se integra perfectamente con los repositorios Git en GitHub, no ofrece el mismo nivel de capacidades integrales de DevOps que GitLab CI. GitHub Actions es más un complemento a los repositorios Git en GitHub para ejecutar flujos de trabajo automatizados.
d) GitLab CI:
GitLab CI es parte integral de GitLab, una plataforma de repositorio Git que incluye capacidades de DevOps completas. GitLab CI permite realizar integración y entrega continua directamente dentro del ecosistema de GitLab, proporcionando una solución unificada para el ciclo de vida del desarrollo de software.
¿Cuál de las siguientes herramientas es ampliamente utilizada para la automatización de la integración continua y entrega continua (CI/CD) y es conocida por su extensibilidad a través de plugins?
a) CircleCI
b) GitHub Actions
c) Travis CI
d) Jenkins
D
Jenkins
¿Cuál de las siguientes herramientas de automatización de TI se utiliza para la gestión de configuración y la infraestructura como código, y está basada en Python?
a) Chef
b) Puppet
c) Ansible
d) SaltStack
D
SaltStack
¿Qué herramienta de infraestructura como código utiliza archivos de recetas escritos en Ruby para definir la configuración del sistema?
a) Terraform
b) Ansible
c) Chef
d) Puppet
C
Chef
¿Cuál de las siguientes herramientas se basa en archivos de manifiestos escritos en el lenguaje de dominio específico (DSL) de Puppet para gestionar configuraciones?
a) Ansible
b) Chef
c) Puppet
d) Terraform
C
Puppet
¿Qué herramienta de HashiCorp se utiliza para la provisión de infraestructura a través de archivos de configuración declarativos, permitiendo definir y proporcionar recursos en la nube?
a) Ansible
b) Terraform
c) SaltStack
d) Chef
B
Terraform
¿Cuál de las siguientes herramientas de gestión de configuración y orquestación utiliza un enfoque sin agentes y es conocida por su simplicidad y facilidad de uso?
a) Puppet
b) Chef
c) Ansible
d) SaltStack
C
Ansible
¿Qué herramienta de extracción de datos se utiliza junto con InfluxDB para recopilar y enviar métricas y datos de eventos desde servidores, sensores y aplicaciones?
a) Telegraf
b) StatsD
c) Prometheus
d) Graphite
A
Telegraf
¿Qué herramienta se utiliza para recolectar estadísticas y métricas y enviar esos datos a servicios como Graphite, InfluxDB o Prometheus?
a) Telegraf
b) Grafana
c) StatsD
d) Kibana
C
StatsD
¿Cuál de las siguientes herramientas se utiliza principalmente para la visualización de datos de sistemas de monitorización y proporciona una interfaz gráfica interactiva para crear dashboards?
a) Graphite
b) Grafana
c) Prometheus
d) Zabbix
B
Grafana
¿Qué herramienta de monitorización en tiempo real puede usarse para visualizar y almacenar datos de series temporales y se integra frecuentemente con Grafana?
a) Nagios
b) Graphite
c) Splunk
d) Prometheus
B
Graphite
¿Qué herramientas se utilizan para monitorear la disponibilidad de sitios web, certificados SSL y controlar el tiempo de actividad (uptime)?
a) New Relic y AppDynamics
b) Pingdom y StatusCake
c) Nagios y Icinga
d) DataDog y Splunk
B
Pingdom y StatusCake
¿Cuál de las siguientes herramientas se utiliza para la gestión de alertas y el procesamiento de datos en tiempo real en el ecosistema de InfluxData?
a) Telegraf
b) Prometheus
c) Kapacitor
d) Grafana
C
Kapacitor
¿Cuál de las siguientes herramientas de CI/CD es conocida por su capacidad para automatizar pruebas, despliegues y entregas, y es desarrollada por Atlassian?
a) Jenkins
b) GitLab CI
c) CircleCI
d) Bamboo
D
Bamboo
¿Qué función tiene GitLab?
a) Está basado en Ruby.
b) Dispone de tests versionados en el código.
c) Permite trabajar en la nube o en local.
d) Todas son correctas.
D
Todas son correctas.
¿Dónde están desplegados AWS CloudWatch y Google Stackdriver?
a) en un servidor local
b) es un servidor local, y se conectan a través del puerto 288
c) en la nube
d) en un disco duro interno
C
en la nube
¿Qué permite hacer Pushover?
a) Detectar anomalías personalizadas con UDF.
b) Realizar informes post mortem
c) Enviar notificaciones móviles.
d) Reintroducir información en InfluxDB.
C
Enviar notificaciones móviles.
Salt Stack está basado en ____.
a) Python
b) C++
c) Ruby
d) Go
A
Python
Atlassian Stride es _____.
a) está originado en GitHub
b) es el antiguo Hipchat
c) es una API web
d) está disponible en GitLab
B
es el antiguo Hipchat
que son las pruebas unitarias de caja blanca y caja negra ?
1) Pruebas Unitarias de Caja Blanca:
Enfoque: Este tipo de prueba se basa en el conocimiento interno del código fuente. Los probadores tienen acceso a la estructura interna del software y a los algoritmos que implementa.
Objetivo: Verificar la lógica interna del código, asegurándose de que todas las rutas posibles son ejecutadas y probadas. Se presta especial atención a las condiciones y bucles.
Ejemplos: Pruebas de cobertura de código, pruebas de flujo de datos y pruebas de bucles.
Ventaja: Permiten identificar y corregir errores específicos en la lógica del código, lo que mejora la robustez del software.
2) Pruebas Unitarias de Caja Negra:
Enfoque: Este tipo de prueba se centra en la funcionalidad del software sin tener en cuenta el código interno. Los probadores no necesitan conocer la estructura interna del software.
Objetivo: Asegurarse de que el software cumple con los requisitos funcionales y se comporta como se espera ante diferentes entradas.
Ejemplos: Pruebas de equivalencia de particiones, análisis de valores límite y pruebas de estado.
Ventaja: Permiten verificar que el software cumple con las especificaciones y funciona correctamente desde el punto de vista del usuario final.
En las pruebas de integración, la estrategia de integración no incremental, también llamada “Big-Bang”, consiste en probar cada componente por separado y posteriormente integrarlos todos de una vez, pero no se comprueban las interfaces entre los distintos componentes de manera temprana, verdadero o falso?
Verdadero
La estrategia de integración no incremental o “Big-Bang” prueba los componentes de manera individual y luego los integra todos juntos, sin probar las interfaces de manera temprana
¿Cuál de las siguientes opciones se utilizan para el control de versiones?
a) Mercurial, CVS y Selenium.
b) GitLab, GitHub y Apache Subversion.
c) SVN, Git y Cucumber.
d) Selenium, Cucumber y GitLab.
B
GitLab, GitHub y Apache Subversion.
NOTA:
- Selenium es una herramienta para pruebas de software.
- Cucumber es una herramienta para pruebas de aceptación.
¿Cuál de las siguientes opciones describe correctamente un sistema de control de versiones distribuido?
a) Todos los cambios se almacenan únicamente en un servidor central.
b) Cada usuario tiene una copia completa del historial del repositorio.
c) Solo se pueden trabajar ramas en servidores centralizados.
d) No permite trabajar sin conexión.
B
Cada usuario tiene una copia completa del historial del repositorio.
¿Cuál de las siguientes herramientas NO está diseñada específicamente para control de versiones?
a) Git
b) Mercurial
c) Docker
d) SVN
C
Docker
¿Qué comando en Git se utiliza para ver los cambios realizados en los archivos antes de confirmar un commit?
a) git status
b) git log
c) git diff
d) git add
C
git diff
¿Qué concepto se refiere a la integración frecuente de los cambios realizados por los desarrolladores en un repositorio compartido?
a) Integración continua (CI)
b) Despliegue continuo (CD)
c) Refactorización
d) Resolución de conflictos
A
Integración continua (CI)