<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Yuri Kan · Senior QA Lead on Yuri Kan - Senior QA Lead y Experto en Automatización</title><link>https://yrkan.com/es/</link><description>Recent content in Yuri Kan · Senior QA Lead on Yuri Kan - Senior QA Lead y Experto en Automatización</description><generator>Hugo</generator><language>es</language><atom:link href="https://yrkan.com/es/index.xml" rel="self" type="application/rss+xml"/><item><title>Cypress v15.13.0: Novedades en Stubbing y Component Testing</title><link>https://yrkan.com/es/tools-updates/cypress-v15-13-whats-new/</link><pubDate>Sat, 09 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/cypress-v15-13-whats-new/</guid><description>&lt;h1 id="cypress-v15130-actualizaciones-clave-para-automatización-qa"&gt;Cypress v15.13.0: Actualizaciones Clave para Automatización QA &lt;a href="#cypress-v15130-actualizaciones-clave-para-automatizaci%c3%b3n-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Cypress.io lanzó la versión v15.13.0 el 24 de marzo de 2026, introduciendo varias mejoras al popular framework de automatización de pruebas. Esta actualización se centra en optimizar la experiencia del desarrollador y la fiabilidad de las pruebas.&lt;/p&gt;
&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cy.intercept()&lt;/code&gt; mejorado para stubbing de red avanzado y matching de solicitudes.&lt;/li&gt;
&lt;li&gt;Soporte optimizado para Component Testing en frameworks JavaScript modernos.&lt;/li&gt;
&lt;li&gt;Correcciones de estabilidad para &lt;code&gt;cy.origin()&lt;/code&gt; en escenarios complejos de pruebas cross-domain.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Nuevas Funcionalidades:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Jenkins 2.558: Mejoras de UI para Equipos QA</title><link>https://yrkan.com/es/tools-updates/jenkins-jenkins-2-558-whats-new/</link><pubDate>Sat, 09 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/jenkins-jenkins-2-558-whats-new/</guid><description>&lt;h2 id="jenkins-2558-mejoras-de-ui-para-equipos-qa"&gt;Jenkins 2.558: Mejoras de UI para Equipos QA &lt;a href="#jenkins-2558-mejoras-de-ui-para-equipos-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Jenkins 2.558, lanzado el 07-04-2026, se centra en mejoras de la interfaz de usuario y correcciones de errores menores. Esta actualización tiene como objetivo mejorar la claridad y agilizar las interacciones dentro de la plataforma, beneficiando los flujos de trabajo de DevOps y QA.&lt;/p&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Nuevas Funcionalidades y Mejoras&lt;/strong&gt;: Jenkins 2.558 introduce varias mejoras en la interfaz de usuario. Los monitores administrativos ahora se muestran de forma más clara, proporcionando una mejor visibilidad del estado del sistema. Las causas de los builds en el tooltip de la cola y en la vista general se han deduplicado, lo que reduce el desorden visual y facilita la identificación de los disparadores principales. Un nuevo diálogo simplifica la adición o edición de descripciones para jobs, builds y views, mejorando la usabilidad.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Correcciones de Errores&lt;/strong&gt;: Se ha corregido un error específico en el widget de la cola, asegurando un número constante de celdas de datos de tabla (&lt;code&gt;&amp;lt;td&amp;gt;&lt;/code&gt;), lo que mejora la estabilidad del diseño.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para Desarrolladores de Plugins&lt;/strong&gt;: Los cambios relacionados con la visualización de monitores administrativos también afectan a los desarrolladores de plugins, requiriendo la alineación con la UI actualizada para una experiencia de usuario consistente.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impacto-para-equipos-qa"&gt;Impacto para Equipos QA &lt;a href="#impacto-para-equipos-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Estas actualizaciones mejoran la claridad y usabilidad en Jenkins, facilitando a los ingenieros QA el seguimiento del estado de los builds y la gestión de configuraciones de jobs. La UI mejorada puede agilizar las interacciones diarias, especialmente al trabajar con &lt;a href="https://yrkan.com/es/blog/jenkins-pipeline-for-test-automation/"&gt;Jenkins pipelines para automatización de pruebas&lt;/a&gt;. Una mejor visibilidad y menos desorden contribuyen a un monitoreo más eficiente de las pruebas automatizadas.&lt;/p&gt;</description></item><item><title>Qase API Client v2.0.7: Actualización de Especificación y Pruebas</title><link>https://yrkan.com/es/tools-updates/qase-qase-api-v2-client-v1-0-whats-new/</link><pubDate>Sat, 09 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/qase-qase-api-v2-client-v1-0-whats-new/</guid><description>&lt;h2 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Clientes API actualizados a la última especificación de Qase.&lt;/li&gt;
&lt;li&gt;Mejoras en las pruebas de integración con &lt;code&gt;reporters-validator&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Actualizaciones menores de dependencias (&lt;code&gt;handlebars&lt;/code&gt;, &lt;code&gt;vite&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El cliente API de Qase ha sido actualizado para alinearse con la última especificación de la API. Esto asegura compatibilidad y acceso a las características y endpoints más recientes ofrecidos por Qase TMS. Para detalles completos, consulte el &lt;a href="https://github.com/qase-tms/qase-javascript/compare/qase-api-client-v1.1.5...qase-api-v2-client-v1.0.7"&gt;changelog oficial&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Además, las pruebas de integración han sido mejoradas con la introducción de &lt;code&gt;reporters-validator&lt;/code&gt;. Este cambio aumenta la fiabilidad y estabilidad de los reporters de Qase.&lt;/p&gt;</description></item><item><title>MSW v2.13.0: Mocking más Rápido, Logs más Claros</title><link>https://yrkan.com/es/tools-updates/msw-v2-13-whats-new/</link><pubDate>Fri, 08 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/msw-v2-13-whats-new/</guid><description>&lt;p&gt;Mock Service Worker (MSW) ha lanzado la versión v2.13.0, una actualización menor desde v2.12.12, centrada en el rendimiento y la claridad. Esta actualización, con fecha 2026-04-06, se enmarca en la categoría de Mobile and API Testing.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Nuevas Funcionalidades:&lt;/strong&gt; MSW v2.13.0 introduce la API &lt;code&gt;defineNetwork&lt;/code&gt;, que representa un avance hacia una nueva arquitectura de fuente de red. Este cambio simplifica la forma en que MSW intercepta y maneja las solicitudes de red. Internamente, la búsqueda de handlers ahora es una operación O(1), lo que mejora significativamente el rendimiento, especialmente en aplicaciones con muchos mock handlers. El filtrado de handlers también se beneficia, utilizando ahora una propiedad &lt;code&gt;kind&lt;/code&gt; directa en lugar de verificaciones &lt;code&gt;instanceof&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Oxlint apps_v1.59.0: Mejoras LSP, Nuevas Reglas, Más Rendimiento</title><link>https://yrkan.com/es/tools-updates/oxlint-apps_v1-59-whats-new/</link><pubDate>Fri, 08 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/oxlint-apps_v1-59-whats-new/</guid><description>&lt;h2 id="oxlint-apps_v1590-mejoras-lsp-nuevas-reglas-más-rendimiento"&gt;Oxlint apps_v1.59.0: Mejoras LSP, Nuevas Reglas, Más Rendimiento &lt;a href="#oxlint-apps_v1590-mejoras-lsp-nuevas-reglas-m%c3%a1s-rendimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Para obtener todos los detalles, consulte las notas de lanzamiento oficiales de OxC.&lt;/p&gt;
&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Oxlint LSP ahora muestra y aplica sugerencias seguras por defecto, optimizando el flujo de trabajo del desarrollador.&lt;/li&gt;
&lt;li&gt;Se han implementado numerosas reglas de linter nuevas para Unicorn, ESLint, React, Jest y Vitest, mejorando la calidad del código.&lt;/li&gt;
&lt;li&gt;Mejoras significativas en el rendimiento del parser NAPI y los plugins del linter, acelerando el análisis.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cambio Disruptivo (Breaking Change):&lt;/strong&gt; Una adaptación significativa en el flujo de trabajo, el LSP de Oxlint ahora muestra y aplica automáticamente sugerencias seguras (&lt;code&gt;Show/fix safe suggestions by default&lt;/code&gt;). Esto agiliza el desarrollo al ofrecer mejoras de código inmediatas y no disruptivas directamente en el editor, lo que potencialmente reduce el tiempo de refactorización manual.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Nuevas Funcionalidades (Features):&lt;/strong&gt; Esta versión introduce una gran cantidad de nuevas reglas de linter diseñadas para mejorar la calidad y consistencia del código. Para &lt;code&gt;unicorn&lt;/code&gt;, &lt;code&gt;prefer-import-meta-properties&lt;/code&gt; y &lt;code&gt;no-useless-iterator-to-array&lt;/code&gt; promueven prácticas modernas de JavaScript. &lt;code&gt;eslint&lt;/code&gt; incorpora &lt;code&gt;no-restricted-exports&lt;/code&gt; y &lt;code&gt;object-shorthand&lt;/code&gt;, ayudando a aplicar límites de módulos y una sintaxis concisa. Los desarrolladores de React se beneficiarán de &lt;code&gt;hook-use-state&lt;/code&gt; y &lt;code&gt;prefer-function-component&lt;/code&gt; para una mejor estructura de componentes. Los usuarios de Jest y Vitest verán &lt;code&gt;padding-around-after-all-blocks&lt;/code&gt; y &lt;code&gt;prefer-snapshot-hint&lt;/code&gt;, mejorando la legibilidad y mantenibilidad de las pruebas. Varias reglas, incluyendo &lt;code&gt;consistent-return&lt;/code&gt; y &lt;code&gt;no-unnecessary-type-conversion&lt;/code&gt;, han madurado de &lt;code&gt;nursery&lt;/code&gt; a categorías más estables (&lt;code&gt;suspicious&lt;/code&gt; o &lt;code&gt;style&lt;/code&gt;), indicando su fiabilidad. El LSP también recibe una importante acción de código &lt;code&gt;source.fixAllDangerous.oxc&lt;/code&gt;, que ofrece correcciones automatizadas más potentes, y notas de diagnóstico mejoradas para explicaciones más claras de los problemas.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Correcciones de Errores (Bug Fixes):&lt;/strong&gt; Se han resuelto numerosos problemas, mejorando la precisión y fiabilidad de Oxlint. Se abordaron falsos positivos en reglas como &lt;code&gt;prefer-array-flat-map&lt;/code&gt; (Unicorn), &lt;code&gt;no-unused-private-class-members&lt;/code&gt; y &lt;code&gt;no-array-index-key&lt;/code&gt;, reduciendo la frustración del desarrollador. Las correcciones también incluyen un mejor manejo de &lt;code&gt;node_modules&lt;/code&gt; y configuraciones anidadas en el LSP, asegurando un ámbito de linting correcto. Importantes correcciones de estabilidad, como la exportación de &lt;code&gt;package.json&lt;/code&gt; para &lt;code&gt;oxlint&lt;/code&gt; y &lt;code&gt;oxfmt&lt;/code&gt; y la propagación de errores de escritura de archivos en &lt;code&gt;oxfmt&lt;/code&gt;, contribuyen a una herramienta más robusta.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejoras de Rendimiento (Performance Enhancements):&lt;/strong&gt; Se han realizado optimizaciones significativas bajo el capó en el parser NAPI y los plugins del linter. Estas mejoras se centran en acelerar la decodificación de cadenas UTF-8 y la deserialización de campos &lt;code&gt;raw&lt;/code&gt;, particularmente para fuentes no ASCII. Estos cambios se traducen directamente en tiempos de análisis de código más rápidos, proporcionando una retroalimentación más ágil a los desarrolladores y mejorando la eficiencia general.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impact-for-qa-teams"&gt;Impact for QA Teams &lt;a href="#impact-for-qa-teams" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los equipos de QA se benefician de estas actualizaciones al recibir código de mayor calidad desde el inicio. Las nuevas reglas del linter pueden identificar más problemas potenciales en etapas tempranas del desarrollo, disminuyendo la cantidad de defectos que llegan a las pruebas. Las mejoras de rendimiento se traducen en ciclos de retroalimentación más rápidos para los desarrolladores, lo que puede llevar a una resolución de errores más ágil y a builds más estables para QA.&lt;/p&gt;</description></item><item><title>Schemathesis v4.15.0: Fuzzing de API, Parametrización en Pytest</title><link>https://yrkan.com/es/tools-updates/schemathesis-v4-15-whats-new/</link><pubDate>Fri, 08 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/schemathesis-v4-15-whats-new/</guid><description>&lt;h2 id="schemathesis-v4150-fuzzing-de-api-parametrización-en-pytest"&gt;Schemathesis v4.15.0: Fuzzing de API, Parametrización en Pytest &lt;a href="#schemathesis-v4150-fuzzing-de-api-parametrizaci%c3%b3n-en-pytest" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Nuevo comando &lt;code&gt;st fuzz&lt;/code&gt; para fuzzing continuo de API en secuencias de operaciones.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;schemathesis.pytest.parametrize()&lt;/code&gt; facilita las pruebas con múltiples schemas.&lt;/li&gt;
&lt;li&gt;Generación estructurada mejorada para headers HTTP clave y validación de &lt;code&gt;discriminator&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Schemathesis v4.15.0 trae mejoras significativas para los flujos de trabajo de pruebas de API.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nuevas Funcionalidades:&lt;/strong&gt;
La adición más destacada es el comando &lt;code&gt;st fuzz&lt;/code&gt;, diseñado para el fuzzing continuo y multi-paso de API a través de secuencias de operaciones. Esta nueva capacidad permite a los ingenieros de QA explorar interacciones complejas de API y descubrir casos límite que podrían pasarse por alto con casos de prueba estáticos, lo que lleva a una validación más sólida del comportamiento de la API. La generación de datos mejora con la generación estructurada para los headers HTTP específicos: &lt;code&gt;If-Match&lt;/code&gt;, &lt;code&gt;If-None-Match&lt;/code&gt;, &lt;code&gt;If-Modified-Since&lt;/code&gt;, &lt;code&gt;If-Unmodified-Since&lt;/code&gt; y &lt;code&gt;Range&lt;/code&gt;. Esto asegura que los casos de prueba generados sean más realistas y se adhieran a los detalles de la especificación HTTP, mejorando la calidad de las pruebas relacionadas con los headers. Para los usuarios de Pytest, se introduce &lt;code&gt;schemathesis.pytest.parametrize()&lt;/code&gt;, que permite aplicar una única función de prueba de manera eficiente a múltiples schemas nombrados. Esta característica optimiza la organización de la suite de pruebas y reduce el código repetitivo al probar varios endpoints o versiones de API. Además, los valores de la propiedad &lt;code&gt;discriminator&lt;/code&gt; ahora se validan contra mapeos de schema conocidos dentro de &lt;code&gt;response_schema_conformance&lt;/code&gt;, y la propiedad &lt;code&gt;discriminator&lt;/code&gt; se fija con precisión al valor correcto al generar datos para schemas &lt;code&gt;oneOf&lt;/code&gt;/&lt;code&gt;anyOf&lt;/code&gt;. Estos cambios mejoran la precisión de las verificaciones de adherencia al schema, especialmente para estructuras de datos polimórficas.&lt;/p&gt;</description></item><item><title>ESLint v10.2.0: Soporte para Temporal API y Reglas Multilingües</title><link>https://yrkan.com/es/tools-updates/eslint-v10-2-whats-new/</link><pubDate>Thu, 07 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/eslint-v10-2-whats-new/</guid><description>&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Añade soporte para &lt;code&gt;Temporal&lt;/code&gt; API en globales de ES2026 y la regla &lt;code&gt;no-obj-calls&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Introduce &lt;code&gt;meta.languages&lt;/code&gt; para reglas, permitiendo linting específico por idioma.&lt;/li&gt;
&lt;li&gt;Incluye correcciones de errores menores y actualizaciones de documentación.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Características:&lt;/strong&gt; ESLint v10.2.0 presenta dos características destacadas. Ahora incluye soporte oficial para la &lt;code&gt;Temporal&lt;/code&gt; API, un global moderno de JavaScript para el manejo avanzado de fechas y horas, incorporándola en los globales de ES2026. Además, la regla &lt;code&gt;no-obj-calls&lt;/code&gt; ha sido actualizada para reconocer correctamente los objetos &lt;code&gt;Temporal&lt;/code&gt;, evitando advertencias de linting innecesarias. Una nueva capacidad significativa es el soporte &lt;code&gt;meta.languages&lt;/code&gt; para reglas, que permite a los desarrolladores de reglas definir explícitamente los lenguajes de programación a los que se aplica una regla, mejorando la precisión en entornos de linting que puedan involucrar múltiples contextos de lenguaje.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Correcciones de Errores:&lt;/strong&gt; Una única corrección de error aborda la actualización de las dependencias de primera parte. Este mantenimiento asegura que el linter central permanezca estable, seguro y compatible con sus componentes internos, contribuyendo a la fiabilidad general.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Documentación:&lt;/strong&gt; Se han implementado varias mejoras en la documentación. En particular, los objetos de configuración ahora incluyen información de &lt;code&gt;language&lt;/code&gt;, lo que soporta directamente la nueva característica &lt;code&gt;meta.languages&lt;/code&gt;. Otras actualizaciones se centran en clarificar las directrices existentes y actualizar ejemplos.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Para detalles completos, consulte las &lt;a href="https://eslint.org/blog/"&gt;notas de lanzamiento oficiales de ESLint&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>PHPUnit 13.1.0: Mejoras en Reportes y Cobertura de Código</title><link>https://yrkan.com/es/tools-updates/phpunit-13-1-whats-new/</link><pubDate>Wed, 06 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/phpunit-13-1-whats-new/</guid><description>&lt;h2 id="phpunit-1310-mejoras-en-reportes-y-cobertura-de-código"&gt;PHPUnit 13.1.0: Mejoras en Reportes y Cobertura de Código &lt;a href="#phpunit-1310-mejoras-en-reportes-y-cobertura-de-c%c3%b3digo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;PHPUnit, el framework de pruebas fundamental para aplicaciones PHP, ha lanzado la versión 13.1.0. Esta actualización menor, con fecha del 3 de abril de 2026, se centra en refinar los reportes de pruebas, expandir la personalización de la cobertura de código y mejorar la estabilidad general. Los ingenieros de QA que siguen las actualizaciones de herramientas de automatización de pruebas encontrarán varias mejoras valiosas en esta versión.&lt;/p&gt;</description></item><item><title>Chromatic v16.1.0: Mejoras de Estabilidad para QA</title><link>https://yrkan.com/es/tools-updates/chromatic-v16-1-whats-new/</link><pubDate>Tue, 05 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/chromatic-v16-1-whats-new/</guid><description>&lt;h2 id="chromatic-v1610-mejoras-de-estabilidad-para-qa"&gt;Chromatic v16.1.0: Mejoras de Estabilidad para QA &lt;a href="#chromatic-v1610-mejoras-de-estabilidad-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Lógica de terminación de procesos mejorada para mayor estabilidad.&lt;/li&gt;
&lt;li&gt;Errores internos resueltos, incluyendo problemas con unit tests.&lt;/li&gt;
&lt;li&gt;Dependencias internas actualizadas, como &lt;code&gt;eslint&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Mejoras:&lt;/strong&gt; Una actualización clave es la &amp;ldquo;best effort alternative to &lt;code&gt;tree-kill&lt;/code&gt; that swallows errors&amp;rdquo; (&lt;a href="https://github.com/chromaui/chromatic-cli/pull/1261"&gt;#1261&lt;/a&gt;). Esto busca mejorar cómo Chromatic maneja la terminación de procesos, haciéndolo más resistente y menos propenso a fallas durante las ejecuciones de automatización.&lt;/p&gt;</description></item><item><title>Insomnia core@12.5.0: Actualización con Mejoras y Notificaciones</title><link>https://yrkan.com/es/tools-updates/insomnia-core@12-5-whats-new/</link><pubDate>Sat, 02 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/insomnia-core@12-5-whats-new/</guid><description>&lt;h2 id="insomnia--actualización-con-mejoras-y-notificaciones"&gt;Insomnia &lt;a href="mailto:core@12.5.0"&gt;core@12.5.0&lt;/a&gt;: Actualización con Mejoras y Notificaciones &lt;a href="#insomnia--actualizaci%c3%b3n-con-mejoras-y-notificaciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Insomnia &lt;a href="mailto:core@12.5.0"&gt;core@12.5.0&lt;/a&gt; incorpora &lt;strong&gt;notificaciones &amp;ldquo;toast&amp;rdquo;&lt;/strong&gt; al actualizar o crear credenciales, ofreciendo feedback instantáneo sobre operaciones importantes. Esta versión también trae varias correcciones críticas de errores. Se han solucionado problemas como la eliminación de workspaces con sincronización en la nube, el cierre automático del pop-up de edición de credenciales de GitHub tras la reautorización, y la resolución de problemas con el estado de importación y el escaneo de proyectos. Una corrección importante previene importaciones duplicadas durante el auto-escaneo. Para una lista detallada de cambios, consulta el &lt;a href="https://github.com/Kong/insomnia/compare/core@12.5.0-beta.0...core@12.5.0"&gt;Full Changelog&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Prometheus v3.11.0: Novedades en SD, PromQL y TSDB</title><link>https://yrkan.com/es/tools-updates/prometheus-v3-11-whats-new/</link><pubDate>Mon, 04 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/prometheus-v3-11-whats-new/</guid><description>&lt;p&gt;Prometheus v3.11.0, lanzado el 02 de abril de 2026, es una actualización menor que se centra en mejoras del Service Discovery, capacidades avanzadas de PromQL y optimizaciones experimentales de TSDB. Esta versión ofrece actualizaciones valiosas para equipos de DevOps y QA que siguen la evolución de las herramientas de monitoreo. Para la fuente oficial, consulte las &lt;a href="https://github.com/prometheus/prometheus/releases/tag/v3.11.0"&gt;notas de la versión Prometheus v3.11.0&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cambios Clave:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Mejoras en Service Discovery:&lt;/strong&gt; AWS Service Discovery ahora soporta roles de Elasticache y RDS. Azure SD añade soporte para la autenticación Azure Workload Identity. Kubernetes SD introduce selectores de roles de nodo para pods y nuevas etiquetas basadas en pods (&lt;code&gt;__meta_kubernetes_pod_deployment_name&lt;/code&gt;, &lt;code&gt;__meta_kubernetes_pod_cronjob_name&lt;/code&gt;, &lt;code&gt;__meta_kubernetes_pod_job_name&lt;/code&gt;) para una mejor identificación de objetivos. Una nueva métrica &lt;code&gt;prometheus_sd_last_update_timestamp_seconds&lt;/code&gt; ayuda a rastrear la frecuencia de actualización de SD.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Actualizaciones de PromQL:&lt;/strong&gt; Se añaden nuevos operadores &lt;code&gt;&amp;lt;/&lt;/code&gt; y &lt;code&gt;&amp;gt;/&lt;/code&gt; para recortar observaciones de histogramas nativos. Una función variádica experimental &lt;code&gt;histogram_quantiles&lt;/code&gt; permite calcular múltiples cuantiles simultáneamente, ofreciendo un análisis de rendimiento más detallado.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Innovaciones en TSDB:&lt;/strong&gt; Se introducen varias funciones experimentales, incluyendo &lt;code&gt;storage.tsdb.retention.percentage&lt;/code&gt; para configurar límites de uso de disco, &lt;code&gt;fast-startup&lt;/code&gt; para reinicios más rápidos, &lt;code&gt;st-storage&lt;/code&gt; para ingestar timestamps de inicio y &lt;code&gt;xor2-encoding&lt;/code&gt; para una codificación optimizada de fragmentos de muestras flotantes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Deprecaciones y Cambios:&lt;/strong&gt; Los usuarios de Hetzner SD deben actualizar las etiquetas deprecadas como &lt;code&gt;__meta_hetzner_datacenter&lt;/code&gt; y &lt;code&gt;__meta_hetzner_hcloud_datacenter_location&lt;/code&gt; a sus nuevas contrapartes. La salida de depuración de Promtool ahora se redirige a stderr, evitando interferencias con stdout.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rendimiento y Correcciones de Errores:&lt;/strong&gt; Las mejoras de rendimiento se dirigen a las uniones de PromQL, agregaciones de histogramas nativos, monitoreo de WAL de escritura remota e intersecciones de valores de etiquetas de TSDB. Numerosas correcciones de errores abordan problemas en AWS SD, fugas de memoria del Agent, estado de alertas, duplicación de objetivos de Kubernetes SD y manejo de errores de OTLP.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Impacto para Equipos de QA:&lt;/strong&gt;
Los ingenieros de QA se benefician de una mayor visibilidad en los entornos de prueba gracias a la expansión del Service Discovery en la nube. Las nuevas funciones de PromQL permiten un análisis más preciso de las métricas de rendimiento, especialmente con histogramas nativos, lo que ayuda a identificar regresiones o cuellos de botella. Una instancia de Prometheus más estable y de mayor rendimiento, gracias a varias correcciones de errores y optimizaciones, asegura datos de monitoreo confiables para los esfuerzos de prueba. Para más información sobre la integración de Prometheus, consulte nuestro artículo sobre &lt;a href="https://yrkan.com/es/blog/grafana-prometheus-monitoring/"&gt;Monitoreo con Grafana y Prometheus&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Actualización Mockoon v9.6.0: Nuevos Helpers de Solicitud para Mocks Dinámicos</title><link>https://yrkan.com/es/tools-updates/mockoon-v9-6-whats-new/</link><pubDate>Fri, 01 May 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/mockoon-v9-6-whats-new/</guid><description>&lt;h2 id="mockoon-v960-mocks-dinámicos-mejorados"&gt;Mockoon v9.6.0: Mocks Dinámicos Mejorados &lt;a href="#mockoon-v960-mocks-din%c3%a1micos-mejorados" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Mockoon, una herramienta popular para el mocking de API, ha lanzado la versión 9.6.0. Esta actualización menor se centra en expandir sus capacidades de plantillas con nuevos helpers de solicitud, permitiendo respuestas mock más dinámicas y conscientes del contexto. Esta versión está fechada el 31 de marzo de 2026 y se clasifica en Pruebas de Mobile y API.&lt;/p&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Esta actualización introduce principalmente un conjunto de nuevos helpers de solicitud para plantillas avanzadas:&lt;/p&gt;</description></item><item><title>Playwright v1.59.0: Screencast Avanzado, Interoperabilidad y Dashboard</title><link>https://yrkan.com/es/tools-updates/playwright-v1-59-whats-new/</link><pubDate>Wed, 29 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/playwright-v1-59-whats-new/</guid><description>&lt;p&gt;Microsoft ha lanzado Playwright v1.59.0 el 1 de abril de 2026, una actualización menor en automatización de pruebas. Esta versión trae mejoras importantes para la captura de evidencia de pruebas, el control de navegadores multi-cliente y una mejor observabilidad.&lt;/p&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Screencast&lt;/strong&gt;
La nueva API &lt;a href="https://playwright.dev/docs/api/class-page#page-screencast"&gt;&lt;code&gt;page.screencast&lt;/code&gt;&lt;/a&gt; ofrece una interfaz unificada para capturar contenido de página. Permite grabaciones de screencast precisas, anotaciones visuales de acciones, superposiciones personalizadas y captura de frames en tiempo real. Esto mejora la opción básica &lt;code&gt;recordVideo&lt;/code&gt; con un control más granular.&lt;/p&gt;</description></item><item><title>Semgrep v1.157.0: Mejoras en Rendimiento y Seguridad</title><link>https://yrkan.com/es/tools-updates/semgrep-v1-157-whats-new/</link><pubDate>Thu, 30 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/semgrep-v1-157-whats-new/</guid><description>&lt;p&gt;Semgrep v1.157.0, lanzado el 31 de marzo de 2026, se centra en mejoras de rendimiento y seguridad, especialmente para usuarios Pro. Esta actualización menor refina las capacidades de análisis estático y aborda varios problemas de parsing.&lt;/p&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Características y Mejoras:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Seguimiento de Taint Mejorado (Pro):&lt;/strong&gt; Mayor precisión en el seguimiento de taint a través de llamadas a lambda y mejor seguimiento entre archivos para globales (LANG-268, LANG-275).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Coincidencia Avanzada de Metavariable-Type:&lt;/strong&gt; Ahora es posible hacer coincidir un nombre de clase como en &lt;code&gt;$C.getInstance(...)&lt;/code&gt; y luego usar &lt;code&gt;metavariable-type&lt;/code&gt; en &lt;code&gt;$C&lt;/code&gt; para verificar su tipo (LANG-271).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Nuevo Parser para npm Lock Files (Pro):&lt;/strong&gt; El análisis de la cadena de suministro para archivos &lt;code&gt;npm package lock&lt;/code&gt; ahora utiliza un parser propietario basado en OCaml, reemplazando la versión anterior de Python. Esta funcionalidad ahora está disponible exclusivamente para usuarios de Semgrep Pro (gh-5658).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Rendimiento:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Actualización Oxlint apps_v1.58.0: Mejoras para Vitest y Linter</title><link>https://yrkan.com/es/tools-updates/oxlint-apps_v1-58-whats-new/</link><pubDate>Mon, 27 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/oxlint-apps_v1-58-whats-new/</guid><description>&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Cambio disruptivo: Reglas built-in desconocidas ahora reportan errores, requiriendo revisión de configuración.&lt;/li&gt;
&lt;li&gt;Nuevas reglas de linting específicas para Vitest mejoran la calidad del código de prueba.&lt;/li&gt;
&lt;li&gt;Diagnósticos mejorados, generación de configuración &lt;code&gt;--init&lt;/code&gt; y estabilidad de reglas.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Oxlint apps_v1.58.0 presenta actualizaciones importantes para la calidad del código y la experiencia del desarrollador.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cambio Disruptivo (Breaking Change)&lt;/strong&gt;: El linter ahora reporta un error en cualquier regla built-in desconocida. Los usuarios deben verificar sus configuraciones de &lt;code&gt;oxlint&lt;/code&gt; para asegurar que todas las reglas especificadas sean reconocidas, evitando configuraciones erróneas silenciosas.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Características (Features)&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Integración con Vitest&lt;/strong&gt;: Se incluyen adiciones significativas como las reglas &lt;code&gt;require-test-timeout&lt;/code&gt;, &lt;code&gt;prefer-called-exactly-once-with&lt;/code&gt;, &lt;code&gt;require-mock-type-parameters&lt;/code&gt; y &lt;code&gt;require-awaited-expect-poll&lt;/code&gt; para Vitest. La regla &lt;code&gt;prefer-to-have-been-called-times&lt;/code&gt; ahora es compatible con Jest.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Estabilidad de Reglas&lt;/strong&gt;: Varias reglas, como &lt;code&gt;prefer-string-starts-ends-with&lt;/code&gt;, &lt;code&gt;prefer-readonly&lt;/code&gt;, &lt;code&gt;prefer-regexp-exec&lt;/code&gt; y &lt;code&gt;prefer-find&lt;/code&gt;, han pasado de &lt;code&gt;nursery&lt;/code&gt; a &lt;code&gt;style&lt;/code&gt;, lo que indica su madurez y uso recomendado.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Experiencia del Desarrollador&lt;/strong&gt;: Las mejoras incluyen una opción &lt;code&gt;safe-fix&lt;/code&gt; para importaciones &lt;code&gt;no-unused-vars&lt;/code&gt;, diagnósticos mejorados con mensajes útiles para los plugins de import, Jest y Promise, y un generador de configuración &lt;code&gt;--init&lt;/code&gt; más eficiente.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Correcciones de Errores (Bug Fixes)&lt;/strong&gt;: Las correcciones clave abordan problemas como &lt;code&gt;no-noninteractive-tabindex&lt;/code&gt; para widgets compuestos, el manejo correcto de &lt;code&gt;shadowed locals&lt;/code&gt; en &lt;code&gt;no-restricted-globals&lt;/code&gt; y varias mejoras en el modo de compatibilidad con ESLint. También se han refinado el análisis de configuración y el respeto a la variable de entorno &lt;code&gt;NO_COLOR&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impacto-para-equipos-de-qa"&gt;Impacto para Equipos de QA &lt;a href="#impacto-para-equipos-de-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los equipos de QA que utilizan Oxlint para el análisis estático de código encontrarán esta actualización valiosa. Las nuevas reglas de Vitest permiten una aplicación más exhaustiva de las prácticas de prueba. El cambio disruptivo requiere una revisión rápida de las configuraciones existentes. Los diagnósticos mejorados agilizarán la resolución de problemas y mejorarán la claridad de los informes de linting, apoyando la detección temprana de posibles problemas.&lt;/p&gt;</description></item><item><title>Flyway 12.3.0: UNDO Mejorado y Reporte de Errores para QA</title><link>https://yrkan.com/es/tools-updates/flyway-flyway-12-3-whats-new/</link><pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/flyway-flyway-12-3-whats-new/</guid><description>&lt;h3 id="flyway-1230-undo-mejorado-y-reporte-de-errores-para-qa"&gt;Flyway 12.3.0: UNDO Mejorado y Reporte de Errores para QA &lt;a href="#flyway-1230-undo-mejorado-y-reporte-de-errores-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Soporte mejorado para migraciones &lt;code&gt;UNDO&lt;/code&gt; en bases de datos específicas.&lt;/li&gt;
&lt;li&gt;Reporte de errores optimizado para migraciones fallidas.&lt;/li&gt;
&lt;li&gt;Mejoras de rendimiento en operaciones de historial de esquema.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Flyway 12.3.0, una actualización menor de 12.2.0, se centra en refinar funcionalidades existentes y mejorar la estabilidad. Para una lista detallada, consulte las &lt;a href="https://documentation.red-gate.com/flyway/release-notes-and-older-versions/release-notes-for-flyway-engine"&gt;notas de lanzamiento oficiales&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Features&lt;/strong&gt;
Esta versión presenta capacidades mejoradas para migraciones &lt;code&gt;UNDO&lt;/code&gt;, especialmente para PostgreSQL y Oracle. Esto permite escenarios de rollback más confiables, asegurando la consistencia del estado de la base de datos durante el desarrollo y las pruebas.&lt;/p&gt;</description></item><item><title>Hoppscotch 2026.3.0: Nube, Visibilidad Admin, Mejoras de Seguridad</title><link>https://yrkan.com/es/tools-updates/hoppscotch-2026-3-whats-new/</link><pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/hoppscotch-2026-3-whats-new/</guid><description>&lt;p&gt;Hoppscotch 2026.3.0, una actualización menor lanzada el 31 de marzo de 2026, mejora las pruebas de API y móviles con funcionalidades clave y correcciones críticas.&lt;/p&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Hoppscotch 2026.3.0 trae mejoras significativas y correcciones importantes para las pruebas de API y móviles.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nuevas Funcionalidades:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cloud para Organizaciones (Desktop):&lt;/strong&gt; La aplicación de escritorio ahora soporta completamente Cloud para Organizaciones, mejorando los flujos de trabajo colaborativos de pruebas de API.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Visibilidad de Workspace para Administradores:&lt;/strong&gt; Los administradores obtienen una mejor visibilidad de las membresías de los usuarios en los workspaces directamente desde el dashboard.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Soporte de Teclado Internacional:&lt;/strong&gt; Los atajos de teclado ahora funcionan correctamente con diseños de teclado no ingleses, mejorando la usabilidad para equipos globales.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Autenticación SMTP Opcional:&lt;/strong&gt; Nuevas opciones de configuración (&lt;code&gt;MAILER_SMTP_IGNORE_TLS&lt;/code&gt;) permiten la autenticación SMTP opcional.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Seguridad y Correcciones:&lt;/strong&gt;
Esta versión aborda varias vulnerabilidades de seguridad, incluyendo múltiples problemas de XSS (en tooltips de miembros del equipo, respuestas de mock server y movimientos de solicitudes entre equipos) y una vulnerabilidad de redirección abierta. También se incluyen parches de seguridad críticos para la cadena de dependencias y el endurecimiento de la imagen de producción.&lt;/p&gt;</description></item><item><title>Jaeger v2.17.0: Trazado Mejorado y Optimizaciones de Rendimiento</title><link>https://yrkan.com/es/tools-updates/jaeger-v2-17-whats-new/</link><pubDate>Thu, 23 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/jaeger-v2-17-whats-new/</guid><description>&lt;h2 id="jaeger-v2170-trazado-mejorado-y-optimizaciones-de-rendimiento"&gt;Jaeger v2.17.0: Trazado Mejorado y Optimizaciones de Rendimiento &lt;a href="#jaeger-v2170-trazado-mejorado-y-optimizaciones-de-rendimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Herramienta:&lt;/strong&gt; Jaeger v2.17.0 | &lt;strong&gt;Tipo:&lt;/strong&gt; Minor | &lt;strong&gt;Fecha:&lt;/strong&gt; 2026-03-30 | &lt;strong&gt;Categoría:&lt;/strong&gt; DevOps&lt;/p&gt;
&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Mejoras en el filtrado de errores en la búsqueda de traces y visibilidad de métricas en la UI.&lt;/li&gt;
&lt;li&gt;Correcciones críticas para el cálculo de duración de traces y prevención de panics.&lt;/li&gt;
&lt;li&gt;Avances experimentales significativos para el rendimiento de almacenamiento en ClickHouse y JaegerMCP.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Jaeger v2.17.0, lanzado el 30 de marzo de 2026, se centra en la estabilidad y presenta varias características experimentales.&lt;/p&gt;</description></item><item><title>Jenkins 2.557: Mejoras de UI y Correcciones Esenciales</title><link>https://yrkan.com/es/tools-updates/jenkins-jenkins-2-557-whats-new/</link><pubDate>Sat, 25 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/jenkins-jenkins-2-557-whats-new/</guid><description>&lt;p&gt;Jenkins 2.557: Mejoras de UI y Correcciones Esenciales&lt;/p&gt;
&lt;p&gt;Jenkins, una herramienta fundamental en los pipelines de CI/CD, ha lanzado la versión 2.557. Esta actualización se centra en refinamientos de la interfaz de usuario y aborda varios errores operativos, mejorando la estabilidad y usabilidad general para los equipos de DevOps y QA.&lt;/p&gt;
&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Se refinó el menú experimental &amp;ldquo;Run overflow&amp;rdquo; para una mejor usabilidad.&lt;/li&gt;
&lt;li&gt;Se corrigieron múltiples errores relacionados con la UI, incluyendo problemas de permisos y botones de acción faltantes.&lt;/li&gt;
&lt;li&gt;Se revirtió una corrección anterior sobre notificaciones de &amp;ldquo;Build Scheduled&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Nuevas Funcionalidades y Mejoras:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Actualización Drone CI v2.28.0: Mejoras Menores y Actualizaciones de Dependencias</title><link>https://yrkan.com/es/tools-updates/drone-ci-v2-28-whats-new/</link><pubDate>Mon, 20 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/drone-ci-v2-28-whats-new/</guid><description>&lt;h2 id="actualización-drone-ci-v2280-mejoras-menores-y-actualizaciones-de-dependencias"&gt;Actualización Drone CI v2.28.0: Mejoras Menores y Actualizaciones de Dependencias &lt;a href="#actualizaci%c3%b3n-drone-ci-v2280-mejoras-menores-y-actualizaciones-de-dependencias" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Drone CI, una popular plataforma de CI/CD de Harness, lanzó la versión 2.28.0 el 27 de marzo de 2026. Esta actualización menor se centra principalmente en mejoras internas y la gestión de dependencias, asegurando una base más estable y actualizada para sus pipelines.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Esta versión es en gran medida una actualización de mantenimiento, con el enfoque principal en la actualización de dependencias internas. El changelog indica numerosos commits &lt;code&gt;chore(deps)&lt;/code&gt;, actualizando específicamente el módulo &lt;code&gt;github.com/drone/drone-yaml&lt;/code&gt; a través de muchas versiones de parche (desde &lt;code&gt;v1.1.0&lt;/code&gt; hasta &lt;code&gt;v1.3.236&lt;/code&gt;) y &lt;code&gt;github.com/drone/go-scm&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Actualización Prism v5.15.0: Node.js 24.14 y CI/CD</title><link>https://yrkan.com/es/tools-updates/prism-v5-15-whats-new/</link><pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/prism-v5-15-whats-new/</guid><description>&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Runtime de Node.js actualizado a v24.14.&lt;/li&gt;
&lt;li&gt;Pipeline de CI/CD migrado a GitHub Actions.&lt;/li&gt;
&lt;li&gt;Vulnerabilidad de seguridad en dependencia Lerna corregida.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Prism, la herramienta de Stoplight para mocking y validación de API, ha lanzado la versión 5.15.0. Esta actualización menor se centra en mejoras de infraestructura interna y gestión de dependencias.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Features:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Actualización de Node.js:&lt;/strong&gt; El runtime subyacente de Node.js se ha actualizado de v18.20 a v24.14. Esta actualización aporta mejoras de rendimiento y acceso a las últimas características de Node.js.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Migración de CI/CD:&lt;/strong&gt; El proceso de build se ha convertido de CircleCI a GitHub Actions, optimizando el flujo de trabajo de desarrollo.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Bug Fixes:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Schemathesis v4.14.0: Reportes Allure y Pruebas API Mejoradas</title><link>https://yrkan.com/es/tools-updates/schemathesis-v4-14-whats-new/</link><pubDate>Tue, 14 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/schemathesis-v4-14-whats-new/</guid><description>&lt;h2 id="schemathesis-v4140-reportes-allure-y-pruebas-api-mejoradas"&gt;Schemathesis v4.14.0: Reportes Allure y Pruebas API Mejoradas &lt;a href="#schemathesis-v4140-reportes-allure-y-pruebas-api-mejoradas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Schemathesis v4.14.0 trae actualizaciones significativas para las pruebas de API.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nuevas Funcionalidades&lt;/strong&gt;: Lo más destacado es la &lt;strong&gt;integración de reportes Allure&lt;/strong&gt;, que ofrece informes de pruebas más ricos e interactivos. El &lt;code&gt;pytest&lt;/code&gt; plugin ahora soporta la grabación de &lt;strong&gt;reportes VCR, HAR y JUnit XML&lt;/strong&gt; a través de &lt;code&gt;schema.config.reports&lt;/code&gt;, brindando mayor flexibilidad en la salida de las pruebas. Un nuevo &lt;code&gt;hook&lt;/code&gt; &lt;code&gt;after_validate&lt;/code&gt; se ejecuta después de todas las verificaciones, llevando una lista de objetos &lt;code&gt;CheckResult&lt;/code&gt;. La generación de esquemas ha sido mejorada, con la fase de ejemplos generando ahora propiedades opcionales y un conjunto disjunto por cada rama &lt;code&gt;oneOf&lt;/code&gt;/&lt;code&gt;anyOf&lt;/code&gt;, lo que aumenta la cobertura de las pruebas.&lt;/p&gt;</description></item><item><title>Actualización Flyway 12.2.0: Prefijos de Migración y Control de Validación</title><link>https://yrkan.com/es/tools-updates/flyway-flyway-12-2-whats-new/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/flyway-flyway-12-2-whats-new/</guid><description>&lt;h2 id="actualización-flyway-1220-prefijos-de-migración-y-control-de-validación"&gt;Actualización Flyway 12.2.0: Prefijos de Migración y Control de Validación &lt;a href="#actualizaci%c3%b3n-flyway-1220-prefijos-de-migraci%c3%b3n-y-control-de-validaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Flyway 12.2.0, lanzado el 26 de marzo de 2026, introduce nuevas capacidades para la gestión de migraciones de bases de datos. Esta actualización se centra en una mayor flexibilidad en los procesos de nombramiento y validación de migraciones. Para obtener todos los detalles, consulte las &lt;a href="https://documentation.red-gate.com/flyway/release-notes-and-older-versions/release-notes-for-flyway-engine"&gt;notas de lanzamiento oficiales&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Prefijos de Migración Personalizados:&lt;/strong&gt; Flyway 12.2.0 añade nuevas propiedades de configuración como &lt;code&gt;flyway.sqlMigrationPrefix&lt;/code&gt; y &lt;code&gt;flyway.javaMigrationPrefix&lt;/code&gt;. Estas permiten definir prefijos personalizados para distintos tipos de &lt;code&gt;migration&lt;/code&gt; (SQL, Java, repetibles, undo, etc.), ofreciendo más control sobre las convenciones de nombres, más allá de los prefijos predeterminados como &lt;code&gt;V&lt;/code&gt; o &lt;code&gt;R&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flags Avanzados para Ignorar Validación:&lt;/strong&gt; Esta versión añade una serie de propiedades &lt;code&gt;flyway.ignore*&lt;/code&gt;, incluyendo &lt;code&gt;flyway.ignoreMissingMigrations&lt;/code&gt; y &lt;code&gt;flyway.ignoreChecksumMismatch&lt;/code&gt;. Estos &lt;code&gt;flags&lt;/code&gt; proporcionan un control detallado sobre el comando &lt;code&gt;validate&lt;/code&gt;, permitiendo a Flyway omitir tipos específicos de fallos de validación. Esto es útil para escenarios de despliegue complejos o cuando ciertos estados de &lt;code&gt;migration&lt;/code&gt; son aceptables.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impact-for-qa-teams"&gt;Impact for QA Teams &lt;a href="#impact-for-qa-teams" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los equipos de QA se benefician de una mayor flexibilidad en la gestión de esquemas de bases de datos de prueba. Los prefijos personalizados pueden ayudar a organizar las &lt;code&gt;migrations&lt;/code&gt; para entornos de prueba o características específicas. Los nuevos &lt;code&gt;flags&lt;/code&gt; de &lt;code&gt;ignore&lt;/code&gt; en la validación permiten a los testers configurar Flyway para tolerar discrepancias conocidas y no críticas, optimizando los pipelines de CI/CD y reduciendo falsos positivos en las verificaciones automatizadas. Esto puede acelerar los ciclos de retroalimentación y enfocar los esfuerzos de &lt;code&gt;testing&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Karate v2.0.0: Actualización Mayor para Pruebas Móviles y API</title><link>https://yrkan.com/es/tools-updates/karate-v2-0-whats-new/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/karate-v2-0-whats-new/</guid><description>&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Capacidades mejoradas para pruebas móviles con nuevos drivers.&lt;/li&gt;
&lt;li&gt;Sintaxis de aserciones API optimizada y mayor rendimiento.&lt;/li&gt;
&lt;li&gt;Cambios importantes que requieren planificación de migración.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Karate v2.0.0, lanzado el 26 de marzo de 2026, marca una evolución significativa para el framework, centrándose en Mobile y API Testing.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Features:&lt;/strong&gt; Esta versión mayor presenta actualizaciones sustanciales para las pruebas de aplicaciones móviles, incluyendo soporte para versiones de driver más recientes y métodos de interacción con elementos más precisos. Las pruebas API experimentan optimizaciones de rendimiento y capacidades de aserción refinadas, simplificando escenarios de validación complejos. Esta versión también incorpora mejoras arquitectónicas internas para una mejor escalabilidad.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fixes:&lt;/strong&gt; Numerosas correcciones de errores abordan problemas reportados desde v1.x, mejorando la estabilidad y fiabilidad general en diversos entornos de prueba. Las correcciones específicas se dirigen a casos límite en el manejo de datos y la ejecución de pruebas.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Deprecations:&lt;/strong&gt; Como una versión mayor, v2.0.0 desaprueba varias funciones y patrones de sintaxis antiguos. Se recomienda a los usuarios consultar la guía de migración oficial para obtener detalles sobre cómo actualizar los suites de prueba existentes.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impact-for-qa-teams"&gt;Impact for QA Teams &lt;a href="#impact-for-qa-teams" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Esta actualización agiliza los flujos de trabajo de pruebas móviles y API, permitiendo a los ingenieros QA escribir pruebas más eficientes y fáciles de mantener. Las ganancias de rendimiento pueden reducir los tiempos de ejecución de las pruebas, mientras que las nuevas funciones amplían las posibilidades de cobertura. Para quienes se inician con el framework, nuestro &lt;a href="https://yrkan.com/es/blog/karate-api-testing-tutorial/"&gt;Tutorial de Pruebas API con Karate&lt;/a&gt; es un excelente punto de partida.&lt;/p&gt;</description></item><item><title>TestRail 10.2: Generación de Scripts con IA y Cobertura Jira</title><link>https://yrkan.com/es/tools-updates/testrail-10-2-whats-new/</link><pubDate>Fri, 17 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/testrail-10-2-whats-new/</guid><description>&lt;h1 id="testrail-102-generación-de-scripts-con-ia-y-cobertura-jira"&gt;TestRail 10.2: Generación de Scripts con IA y Cobertura Jira &lt;a href="#testrail-102-generaci%c3%b3n-de-scripts-con-ia-y-cobertura-jira" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;TestRail 10.2, lanzado el 26 de marzo de 2026, trae actualizaciones importantes para equipos de QA. Esta versión principal de Gurock se enfoca en acelerar la automatización y mejorar la trazabilidad de requisitos.&lt;/p&gt;
&lt;h2 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta actualización introduce dos capacidades muy solicitadas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;AI Test Script Generation:&lt;/strong&gt; TestRail ahora convierte casos de prueba existentes en &amp;ldquo;runnable test scripts&amp;rdquo; usando inteligencia artificial. Esta función busca acelerar los esfuerzos de automatización al proporcionar una base sólida para el &amp;ldquo;scripting&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Jira Coverage Check:&lt;/strong&gt; Los líderes de QA pueden verificar qué requisitos de Jira tienen cobertura de prueba adecuada directamente en TestRail. Esto ayuda a asegurar que todos los requisitos estén probados antes del lanzamiento.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BDD Workflow Mejorado:&lt;/strong&gt; TestRail 10.2 también refina el &amp;ldquo;Behavior-Driven Development (BDD) workflow&amp;rdquo;, haciéndolo más completo e integrado para los equipos que adoptan prácticas BDD.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Para más detalles sobre la gestión de su repositorio de pruebas, consulte nuestro artículo sobre &lt;a href="https://yrkan.com/es/blog/testrail-cloud-test-repository/"&gt;TestRail Cloud Test Repository&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>k6 v1.7.0: Extensiones Simplificadas y Nueva Variable Env</title><link>https://yrkan.com/es/tools-updates/k6-v1-7-whats-new/</link><pubDate>Mon, 13 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/k6-v1-7-whats-new/</guid><description>&lt;h1 id="k6-v170-extensiones-simplificadas-y-configuración-mejorada"&gt;k6 v1.7.0: Extensiones Simplificadas y Configuración Mejorada &lt;a href="#k6-v170-extensiones-simplificadas-y-configuraci%c3%b3n-mejorada" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Grafana Labs ha lanzado k6 v1.7.0, una actualización menor centrada en mejorar la experiencia del desarrollador y la flexibilidad operativa para pruebas de rendimiento y seguridad. Esta versión, publicada el 25 de marzo de 2026, introduce mejoras significativas para los ingenieros de QA que buscan optimizar sus flujos de trabajo de testing.&lt;/p&gt;
&lt;h2 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="nuevas-funcionalidades"&gt;Nuevas Funcionalidades &lt;a href="#nuevas-funcionalidades" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;La adición más notable es la &lt;strong&gt;resolución automática para extensiones de subcomandos&lt;/strong&gt;. Anteriormente, la integración de extensiones personalizadas de k6, especialmente aquellas implementadas como subcomandos, requería un proceso manual de compilación &lt;code&gt;xk6&lt;/code&gt; para crear un binario de k6 personalizado. Esto a menudo añadía complejidad y tiempo a la configuración del entorno. Ahora, k6 detecta inteligentemente las extensiones de subcomandos faltantes y provisiona el binario necesario bajo demanda, ofreciendo la misma experiencia transparente y fácil de usar que ya está disponible para las extensiones de JavaScript. Por ejemplo, ejecutar un comando como &lt;code&gt;k6 x httpbin&lt;/code&gt; configurará automáticamente la extensión &lt;code&gt;xk6-subcommand-httpbin&lt;/code&gt; si no está presente en su binario actual de k6, agilizando el uso de herramientas de testing especializadas. Para más detalles sobre esta potente funcionalidad, consulte la &lt;a href="https://grafana.com/docs/k6/latest/extensions/run/#use-automatic-extension-resolution"&gt;documentación oficial&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Faker v10.4.0: Mejoras en Locales y Datos para QA</title><link>https://yrkan.com/es/tools-updates/faker-js-v10-4-whats-new/</link><pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/faker-js-v10-4-whats-new/</guid><description>&lt;h2 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Definiciones de país noruegas (nb_NO) añadidas.&lt;/li&gt;
&lt;li&gt;Datos de animales japoneses (ja) ampliados (gatos, osos, aves, peces, caballos, ganado).&lt;/li&gt;
&lt;li&gt;Nueva variedad de platos basados en plantas y números de teléfono finlandeses (fi).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Faker v10.4.0 se centra en expandir sus capacidades de generación de datos, especialmente para la internacionalización. Las adiciones clave incluyen nuevas definiciones de país para el noruego (&lt;code&gt;nb_NO&lt;/code&gt;) y datos completos de razas de animales para los locales japoneses (&lt;code&gt;ja&lt;/code&gt;), cubriendo gatos, osos, aves, peces, caballos y ganado. Los testers ahora pueden generar datos de &lt;code&gt;food&lt;/code&gt; más diversos con la nueva variedad de platos basados en plantas. Una corrección importante aborda errores tipográficos y de capitalización en los nombres de calles &lt;code&gt;es_MX&lt;/code&gt;, mejorando la precisión de los datos para los locales de español de México.&lt;/p&gt;</description></item><item><title>Jenkins 2.556: Actualizaciones de Spring Framework v7 y UI</title><link>https://yrkan.com/es/tools-updates/jenkins-jenkins-2-556-whats-new/</link><pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/jenkins-jenkins-2-556-whats-new/</guid><description>&lt;p&gt;Jenkins 2.556, lanzado el 24 de marzo de 2026, se enfoca en actualizaciones de dependencias clave, mejoras de UI y optimizaciones para desarrolladores. Para el changelog oficial, visita &lt;a href="https://www.jenkins.io/changelog/2.556/"&gt;jenkins.io/changelog/2.556/&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Actualizaciones de Core y Dependencias:&lt;/strong&gt; La plataforma ahora utiliza &lt;code&gt;org.springframework.security:spring-security-bom&lt;/code&gt; y &lt;code&gt;org.springframework:spring-framework-bom&lt;/code&gt; en la versión 7. Estas actualizaciones son importantes para la seguridad y estabilidad del ecosistema Jenkins.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Interfaz de Usuario y Experiencia:&lt;/strong&gt; Los usuarios notarán refinamientos en la página &amp;ldquo;Third Party Licences&amp;rdquo; y la eliminación de límites de ancho máximo para secciones, lo que mejora la flexibilidad del diseño. Una corrección de error asegura que los iconos de nodos de tamaño estándar se muestren correctamente incluso con nombres de nodos largos.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Funciones para Desarrolladores y Experimentales:&lt;/strong&gt; Se introduce un API experimental para añadir acciones a la Run UI experimental, lo que podría abrir camino a nuevas integraciones. La documentación de ayuda para variables de entorno globales ahora incluye una descripción de la sintaxis &lt;code&gt;BASE+EXTRA&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Localización:&lt;/strong&gt; Se ha añadido la traducción al turco al asistente de configuración.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impact-for-qa-teams"&gt;Impact for QA Teams &lt;a href="#impact-for-qa-teams" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los equipos de QA se benefician de la estabilidad y las mejoras de seguridad de la plataforma subyacente, proporcionadas por las actualizaciones de Spring Framework v7. Aunque los cambios directos en los flujos de trabajo son mínimos, estas actualizaciones contribuyen a un entorno CI/CD más confiable, esencial para la automatización de pruebas efectiva. Para más información sobre la integración de pruebas, consulta nuestro artículo sobre &lt;a href="https://yrkan.com/es/blog/jenkins-pipeline-for-test-automation/"&gt;Jenkins Pipeline para la Automatización de Pruebas&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Oxlint apps_v1.57.0: Reglas Vitest, Correcciones y Rendimiento</title><link>https://yrkan.com/es/tools-updates/oxlint-apps_v1-57-whats-new/</link><pubDate>Sat, 11 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/oxlint-apps_v1-57-whats-new/</guid><description>&lt;h2 id="oxlint-apps_v1570-novedades"&gt;Oxlint apps_v1.57.0: Novedades &lt;a href="#oxlint-apps_v1570-novedades" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Cambios Clave&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Nuevas Funcionalidades:&lt;/strong&gt; Oxlint v1.57.0 incorpora las reglas &lt;code&gt;vitest/prefer-strict-boolean-matchers&lt;/code&gt; para mejorar las aserciones en tests y &lt;code&gt;unicorn/custom-error-definition&lt;/code&gt; para una gestión de errores más uniforme. Oxfmt v0.42.0 ahora formatea comentarios JSDoc y soporta la sustitución de HTML-in-JS, lo que mejora la legibilidad del código.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Corrección de Errores:&lt;/strong&gt; Esta versión soluciona varios problemas del linter, como falsos positivos en reglas &lt;code&gt;hex-escape&lt;/code&gt; y &lt;code&gt;escape-case&lt;/code&gt; para &lt;code&gt;String.raw&lt;/code&gt;, y falsos negativos en &lt;code&gt;explicit-function-return-type&lt;/code&gt;. Se han corregido fugas de memoria en plugins del linter y mejorado la detección de &lt;code&gt;no-cycle&lt;/code&gt; en configuraciones TypeScript. Oxfmt también mejora la alineación de comentarios finales.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejoras de Rendimiento:&lt;/strong&gt; Oxlint experimenta un aumento significativo de rendimiento gracias a optimizaciones en sus plugins, como el uso compartido de instancias &lt;code&gt;Uint32Array&lt;/code&gt;, una conversión más rápida de span a location y la reducción de asignaciones para tokens y comentarios. Esto resulta en ciclos de linting más rápidos.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Impacto para Equipos de QA&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Actualización Detox 20.50.0: Soporte iOS 26.1 liquidGlass Overlay</title><link>https://yrkan.com/es/tools-updates/detox-20-50-whats-new/</link><pubDate>Tue, 07 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/detox-20-50-whats-new/</guid><description>&lt;h2 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Implementa &lt;code&gt;liquidGlass overlay&lt;/code&gt; para iOS 26.1.&lt;/li&gt;
&lt;li&gt;Actualización menor de la versión 20.48.0 a 20.50.0.&lt;/li&gt;
&lt;li&gt;Mejora el soporte para la representación UI específica de iOS.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Detox 20.50.0, una actualización menor lanzada el 23 de marzo de 2026, se centra en mejorar la compatibilidad con iOS. El cambio principal es la implementación de &lt;code&gt;liquidGlass overlay&lt;/code&gt; para iOS 26.1. Esta actualización asegura que Detox pueda interactuar y probar correctamente aplicaciones que utilizan esta característica de renderizado UI específica en las últimas versiones de iOS. La versión también incluye una actualización de versión estándar. Para una lista detallada de los cambios, consulte el &lt;a href="https://github.com/wix/Detox/compare/20.48.1...20.50.0"&gt;Full Changelog&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Chromatic v16.0.0: Node.js 18 Descontinuado, Node 24 Requerido</title><link>https://yrkan.com/es/tools-updates/chromatic-v16-0-whats-new/</link><pubDate>Wed, 08 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/chromatic-v16-0-whats-new/</guid><description>&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Lanzamiento mayor: Chromatic v16.0.0.&lt;/li&gt;
&lt;li&gt;Soporte para Node.js 18 oficialmente descontinuado.&lt;/li&gt;
&lt;li&gt;Node.js 24 es ahora la versión mínima requerida.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Chromatic v16.0.0, lanzado el 23 de marzo de 2026, introduce un cambio importante para los flujos de trabajo de automatización de pruebas. La actualización principal implica la descontinuación del soporte para Node.js 18. Los usuarios ahora deben actualizar sus entornos a Node.js 24 para seguir utilizando Chromatic. Este cambio también afecta a las GitHub Actions, que se han actualizado para usar Node.js 24. Esto asegura la compatibilidad y aprovecha las características más recientes y las actualizaciones de seguridad de Node.js. Para detalles completos, consulte el pull request oficial &lt;a href="https://github.com/chromaui/chromatic-cli/pull/1251"&gt;#1251&lt;/a&gt; en el repositorio de Chromatic CLI.&lt;/p&gt;</description></item><item><title>Schemathesis v4.13.0: Autenticación Dinámica, Retries y Mejoras</title><link>https://yrkan.com/es/tools-updates/schemathesis-v4-13-whats-new/</link><pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/schemathesis-v4-13-whats-new/</guid><description>&lt;h2 id="resumen-de-la-versión-schemathesis-v4130"&gt;Resumen de la Versión Schemathesis v4.13.0 &lt;a href="#resumen-de-la-versi%c3%b3n-schemathesis-v4130" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Autenticación dinámica configurable para esquemas OpenAPI, sin código Python.&lt;/li&gt;
&lt;li&gt;Retries automáticos de solicitudes con back-off exponencial para fallos de red.&lt;/li&gt;
&lt;li&gt;Correcciones clave para el registro de hooks y la precisión en la generación de datos.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Nuevas Funcionalidades&lt;/strong&gt;
Schemathesis v4.13.0 introduce un nuevo bloque de configuración &lt;code&gt;[auth.dynamic.openapi.&amp;lt;scheme&amp;gt;]&lt;/code&gt;, que permite la autenticación dinámica de obtención de tokens directamente a través de la configuración, eliminando la necesidad de código Python personalizado. Esta versión también añade &lt;code&gt;--request-retries&lt;/code&gt; para reintentar automáticamente las solicitudes en caso de fallos de red utilizando una estrategia de back-off exponencial, mejorando significativamente la estabilidad de las pruebas. Además, los datos de respuesta capturados ahora se pueden utilizar en la fase de ejemplos, mejorando la generación de casos de prueba.&lt;/p&gt;</description></item><item><title>Vitest v4.1.1: Novedades y Correcciones de Estabilidad</title><link>https://yrkan.com/es/tools-updates/vitest-v4-1-whats-new/</link><pubDate>Mon, 06 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/vitest-v4-1-whats-new/</guid><description>&lt;h2 id="vitest-v411-novedades-y-correcciones-de-estabilidad"&gt;Vitest v4.1.1: Novedades y Correcciones de Estabilidad &lt;a href="#vitest-v411-novedades-y-correcciones-de-estabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Vitest, un framework de pruebas unitarias rápido, lanzó la versión 4.1.1 el 23 de marzo de 2026. Esta actualización se centra en características experimentales y correcciones de errores cruciales para mejorar la estabilidad y la experiencia del desarrollador. Es relevante para equipos que utilizan prácticas modernas de testing en JavaScript. Para una comparación de frameworks, consulte nuestro artículo sobre &lt;a href="https://yrkan.com/es/blog/jest-vs-mocha-comparison/"&gt;Jest vs. Mocha comparison&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>WebdriverIO v9.27.0: Correcciones para Appium, TypeScript y Protocolos</title><link>https://yrkan.com/es/tools-updates/webdriverio-v9-27-whats-new/</link><pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/webdriverio-v9-27-whats-new/</guid><description>&lt;h2 id="webdriverio-v9270-correcciones-para-appium-typescript-y-protocolos"&gt;WebdriverIO v9.27.0: Correcciones para Appium, TypeScript y Protocolos &lt;a href="#webdriverio-v9270-correcciones-para-appium-typescript-y-protocolos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Solucionados problemas de inicio del servicio Appium.&lt;/li&gt;
&lt;li&gt;Mejorada compatibilidad con TypeScript 7.&lt;/li&gt;
&lt;li&gt;Revertidos cambios de protocolo &lt;code&gt;queryAppState&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;WebdriverIO v9.27.0, lanzado el 23 de marzo de 2026, se centra en correcciones de errores críticos para mejorar la estabilidad y compatibilidad. Esta actualización menor aborda problemas específicos que afectan los flujos de trabajo de automatización de pruebas.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Estabilidad del Servicio Appium&lt;/strong&gt;: El &lt;code&gt;wdio-appium-service&lt;/code&gt; ahora maneja correctamente la salida de log stderr de Appium, evitando fallos de inicio. Esta corrección asegura una ejecución de pruebas más confiable al usar Appium con WebdriverIO.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Compatibilidad con TypeScript&lt;/strong&gt;: Una corrección importante en &lt;code&gt;wdio-globals&lt;/code&gt; mejora la compatibilidad con TypeScript 7. Esto resuelve posibles errores relacionados con tipos para proyectos que utilizan las últimas versiones de TypeScript.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Consistencia de Protocolos&lt;/strong&gt;: Los paquetes &lt;code&gt;webdriverio&lt;/code&gt; y &lt;code&gt;wdio-protocols&lt;/code&gt; revirtieron el cambio de nombre del protocolo &lt;code&gt;queryAppState&lt;/code&gt;. Además, se eliminó un &amp;ldquo;mobile command wrapper&amp;rdquo;, restaurando el comportamiento esperado para los comandos de pruebas móviles. Para más información sobre las capacidades de WebdriverIO, incluyendo pruebas móviles, consulte nuestro &lt;a href="https://yrkan.com/es/blog/webdriverio-tutorial-nodejs/"&gt;webdriverio-tutorial-nodejs&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impact-for-qa-teams"&gt;Impact for QA Teams &lt;a href="#impact-for-qa-teams" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Estas actualizaciones benefician directamente a los ingenieros de QA al mejorar la confiabilidad de los entornos de prueba. Los equipos que utilizan Appium experimentarán menos problemas de inicio, mientras que aquellos con TypeScript 7 encontrarán una mejor integración. Las reversiones de protocolo aseguran una ejecución consistente de comandos móviles, reduciendo fallos inesperados en las pruebas. Para configuraciones avanzadas, considere nuestro artículo sobre &lt;a href="https://yrkan.com/es/blog/webdriverio-extensibility-multiremote-migration/"&gt;webdriverio-extensibility-multiremote-migration&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Specmatic 2.43.0: Mejoras en API Testing y Matchers</title><link>https://yrkan.com/es/tools-updates/specmatic-2-43-whats-new/</link><pubDate>Thu, 02 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/specmatic-2-43-whats-new/</guid><description>&lt;p&gt;Specmatic 2.43.0, lanzado el 22 de marzo de 2026, es una actualización menor enfocada en optimizar el API contract testing y mejorar la fiabilidad general de la herramienta. Esta versión es particularmente relevante para ingenieros de QA que trabajan con pruebas de API y móviles.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes: &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;OpenAPI y Reportes de Cobertura:&lt;/strong&gt; La actualización introduce soporte para rutas OpenAPI interpoladas, facilitando la definición y prueba de estructuras API complejas. Los reportes de cobertura de API han sido significativamente refinados, manejando ahora asociaciones &amp;ldquo;missing-in-spec&amp;rdquo; y proporcionando métricas de operación más precisas. Esto ayuda a los equipos a obtener una visión más clara de la adherencia de sus API y la completitud de las pruebas.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Correcciones en la Fiabilidad de Matchers:&lt;/strong&gt; Se han implementado correcciones críticas para abordar problemas con la preservación de patrones en matchers y el análisis de expresiones regulares (regex), especialmente cuando los patrones regex contenían comas. Estas mejoras aseguran una coincidencia y generación más consistentes, reduciendo falsos positivos o negativos en las pruebas de contrato.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejoras en el Flujo de Trabajo de Testing:&lt;/strong&gt; El aislamiento a nivel de spec para los interceptores de HttpStub ofrece mayor control y flexibilidad para probar escenarios específicos. Además, las grabaciones de proxy son ahora más limpias, filtrando los encabezados de transporte y metadatos del navegador, lo que agiliza el análisis de artefactos.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Actualizaciones de Dependencias:&lt;/strong&gt; Se han actualizado varias dependencias, incluyendo &lt;code&gt;io.specmatic.build-reporter&lt;/code&gt;, &lt;code&gt;joda-time&lt;/code&gt;, &lt;code&gt;spring-web&lt;/code&gt; y &lt;code&gt;jackson&lt;/code&gt;, contribuyendo a la estabilidad y el rendimiento de la herramienta. También se ha eliminado la dependencia &lt;code&gt;mozilla-rhino&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Para una lista detallada de los cambios, consulte el &lt;a href="https://github.com/specmatic/specmatic/compare/2.42.2...2.43.0"&gt;changelog oficial&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Detox 20.48.0: Soporte iOS 26+ y Mejoras en Scrollview</title><link>https://yrkan.com/es/tools-updates/detox-20-48-whats-new/</link><pubDate>Wed, 01 Apr 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/detox-20-48-whats-new/</guid><description>&lt;h2 id="resumen-de-la-versión-detox-20480"&gt;Resumen de la Versión Detox 20.48.0 &lt;a href="#resumen-de-la-versi%c3%b3n-detox-20480" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Detox, el framework de pruebas end-to-end para React Native, ha lanzado la versión 20.48.0. Esta actualización menor, con fecha 21 de marzo de 2026, se centra en mejorar las capacidades y la fiabilidad de las pruebas en iOS.&lt;/p&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Soporte para Arquitectura de Simulador iOS (iOS 26+):&lt;/strong&gt; Esta versión introduce soporte para nuevas arquitecturas de lanzamiento de simulador, específicamente para iOS 26 y versiones posteriores. Esto asegura que Detox siga siendo compatible con futuras versiones de iOS y entornos de desarrollo, permitiendo a los equipos de QA probar aplicaciones en las plataformas más recientes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Detección Mejorada de Elementos en Scrollview:&lt;/strong&gt; Se ha implementado una corrección para refinar cómo se detectan los elementos dentro de los scrollviews. Ahora, los ítems deben estar visibles al menos en un 75% antes de que Detox los detecte. Esto evita interacciones con elementos parcialmente ocultos, lo que lleva a escenarios de prueba más precisos y fiables.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impacto-para-equipos-de-qa"&gt;Impacto para Equipos de QA &lt;a href="#impacto-para-equipos-de-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Esta actualización mejora la estabilidad de las pruebas y asegura la compatibilidad futura de los flujos de trabajo de testing en iOS. Los ingenieros de QA pueden esperar interacciones de elementos más precisas en vistas desplazables y compatibilidad continua con los últimos entornos de simulador de iOS. Para optimizar sus pruebas con Detox, consulte nuestro artículo sobre &lt;a href="https://yrkan.com/es/blog/detox-react-native-grey-box/"&gt;Detox React Native Grey Box testing&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Auditoria de Procesos de QA</title><link>https://yrkan.com/es/course/module-12-leadership/qa-process-audit/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/qa-process-audit/</guid><description>&lt;h2 id="metodologia-de-auditoria-de-procesos-qa"&gt;Metodologia de Auditoria de Procesos QA &lt;a href="#metodologia-de-auditoria-de-procesos-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una auditoria de procesos QA examina sistematicamente tus practicas de testing.&lt;/p&gt;
&lt;h3 id="el-framework-de-auditoria"&gt;El Framework de Auditoria &lt;a href="#el-framework-de-auditoria" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Paso 1: Definir alcance&lt;/strong&gt; — procesos, equipos, periodo
&lt;strong&gt;Paso 2: Recopilar datos&lt;/strong&gt; — documentacion, entrevistas, metricas, observacion
&lt;strong&gt;Paso 3: Evaluar contra frameworks&lt;/strong&gt; (TMMi, TPI Next)&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Nivel TMMi&lt;/th&gt;
 &lt;th&gt;Caracteristicas&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;1 - Inicial&lt;/td&gt;
 &lt;td&gt;Ad hoc, sin proceso definido&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;2 - Gestionado&lt;/td&gt;
 &lt;td&gt;Procesos basicos por proyecto&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;3 - Definido&lt;/td&gt;
 &lt;td&gt;Estandarizado en organizacion&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;4 - Medido&lt;/td&gt;
 &lt;td&gt;Gestion cuantitativa&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;5 - Optimizacion&lt;/td&gt;
 &lt;td&gt;Mejora continua&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Paso 4: Identificar brechas&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Certificaciones: ISTQB y Mas</title><link>https://yrkan.com/es/course/module-12-leadership/certifications-istqb/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/certifications-istqb/</guid><description>&lt;h2 id="navegando-las-certificaciones-qa"&gt;Navegando las Certificaciones QA &lt;a href="#navegando-las-certificaciones-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El panorama de certificaciones QA puede ser confuso. Esta leccion te ayuda a entender cuales importan, cuando buscarlas y como prepararse.&lt;/p&gt;
&lt;h2 id="la-ruta-de-certificacion-istqb"&gt;La Ruta de Certificacion ISTQB &lt;a href="#la-ruta-de-certificacion-istqb" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;ISTQB es el organismo de certificacion QA mas reconocido a nivel mundial.&lt;/p&gt;
&lt;h3 id="foundation-level-ctfl"&gt;Foundation Level (CTFL) &lt;a href="#foundation-level-ctfl" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Que cubre:&lt;/strong&gt; Fundamentos y principios de testing, testing a traves del SDLC, tecnicas estaticas y dinamicas, gestion de pruebas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Quien deberia tomarlo:&lt;/strong&gt; Cualquiera comenzando en QA o con 1-3 anos de experiencia.&lt;/p&gt;</description></item><item><title>Construccion de Comunidad QA</title><link>https://yrkan.com/es/course/module-12-leadership/qa-community-building/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/qa-community-building/</guid><description>&lt;h2 id="construccion-de-comunidad-qa"&gt;Construccion de Comunidad QA &lt;a href="#construccion-de-comunidad-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for construccion de comunidad qa in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in construccion de comunidad qa lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>Construccion de Curriculum para Ingenieros de QA</title><link>https://yrkan.com/es/course/module-12-leadership/resume-building-for-qa/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/resume-building-for-qa/</guid><description>&lt;h2 id="creando-un-cv-de-qa-que-consiga-entrevistas"&gt;Creando un CV de QA que Consiga Entrevistas &lt;a href="#creando-un-cv-de-qa-que-consiga-entrevistas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Tu curriculum tiene 6-8 segundos para causar impresion. En QA, el desafio es demostrar competencia tecnica e impacto en la calidad del producto.&lt;/p&gt;
&lt;h2 id="estructura-del-curriculum"&gt;Estructura del Curriculum &lt;a href="#estructura-del-curriculum" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="el-formato-ganador"&gt;El Formato Ganador &lt;a href="#el-formato-ganador" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;[NOMBRE]
[Contacto: Email | Telefono | Ubicacion | GitHub | Portfolio URL]

RESUMEN (2-3 lineas)
Declaracion cuantificada de experiencia adaptada al rol objetivo.

EXPERIENCIA
[Titulo] | [Empresa] | [Fechas]
• Logro con metrica
• Logro con metrica

HABILIDADES
Lenguajes: Python, JavaScript, TypeScript, SQL
Automatizacion: Playwright, Cypress, Selenium
API: Postman, REST Assured
Performance: k6, JMeter
CI/CD: GitHub Actions, Jenkins

CERTIFICACIONES / EDUCACION
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="verbos-de-accion-para-qa"&gt;Verbos de Accion para QA &lt;a href="#verbos-de-accion-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;En lugar de &amp;ldquo;Responsable del testing&amp;rdquo;:&lt;/p&gt;</description></item><item><title>Construyendo Tu Marca Personal</title><link>https://yrkan.com/es/course/module-12-leadership/personal-brand-for-qa/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/personal-brand-for-qa/</guid><description>&lt;h2 id="construyendo-tu-marca-personal"&gt;Construyendo Tu Marca Personal &lt;a href="#construyendo-tu-marca-personal" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for construyendo tu marca personal in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in construyendo tu marca personal lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>Construyendo un Equipo de QA desde Cero</title><link>https://yrkan.com/es/course/module-12-leadership/building-qa-team/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/building-qa-team/</guid><description>&lt;h2 id="construyendo-un-equipo-de-qa-desde-cero"&gt;Construyendo un Equipo de QA desde Cero &lt;a href="#construyendo-un-equipo-de-qa-desde-cero" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Iniciar una funcion de QA desde cero es uno de los desafios mas gratificantes para un lider QA. Las decisiones en los primeros 90 dias moldean la cultura de calidad por anos.&lt;/p&gt;
&lt;h2 id="fase-1-evaluacion-semana-1-2"&gt;Fase 1: Evaluacion (Semana 1-2) &lt;a href="#fase-1-evaluacion-semana-1-2" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="preguntas-a-responder"&gt;Preguntas a Responder &lt;a href="#preguntas-a-responder" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Como se gestiona la calidad actualmente?&lt;/li&gt;
&lt;li&gt;Cual es la tasa de defectos en produccion?&lt;/li&gt;
&lt;li&gt;Cual es la frecuencia de deployment?&lt;/li&gt;
&lt;li&gt;Que herramientas ya se usan?&lt;/li&gt;
&lt;li&gt;Cual es la tolerancia al riesgo?&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="entrevistas-con-stakeholders"&gt;Entrevistas con Stakeholders &lt;a href="#entrevistas-con-stakeholders" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Reunirse con: leads de ingenieria, product managers, soporte al cliente, C-level.&lt;/p&gt;</description></item><item><title>Construyendo un Portafolio de QA</title><link>https://yrkan.com/es/course/module-12-leadership/building-qa-portfolio/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/building-qa-portfolio/</guid><description>&lt;h2 id="por-que-importa-un-portafolio"&gt;Por Que Importa un Portafolio &lt;a href="#por-que-importa-un-portafolio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la contratacion de QA, las palabras son baratas. Todo candidato dice que conoce Playwright, entiende CI/CD y puede disenar estrategias de testing. Un portafolio es la prueba. Separa a los candidatos que hablan de testing de los que realmente lo hacen.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, un portafolio tipicamente significa un perfil publico de GitHub con proyectos bien estructurados que demuestran tus habilidades de testing.&lt;/p&gt;</description></item><item><title>Contratacion de QA: Encontrando a las Personas Correctas</title><link>https://yrkan.com/es/course/module-12-leadership/qa-hiring/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/qa-hiring/</guid><description>&lt;h2 id="el-desafio-de-contratar-qa"&gt;El Desafio de Contratar QA &lt;a href="#el-desafio-de-contratar-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Contratar ingenieros QA es dificil de forma unica. A diferencia de desarrolladores donde puedes evaluar codigo, las habilidades QA son mas dificiles de cuantificar.&lt;/p&gt;
&lt;h2 id="escribiendo-descripciones-de-puesto-efectivas"&gt;Escribiendo Descripciones de Puesto Efectivas &lt;a href="#escribiendo-descripciones-de-puesto-efectivas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="la-estructura-que-funciona"&gt;La Estructura Que Funciona &lt;a href="#la-estructura-que-funciona" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Resumen del rol&lt;/strong&gt; (2-3 oraciones)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Contexto del equipo&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Responsabilidades clave&lt;/strong&gt; (5-7 bullets)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Requisitos must-have&lt;/strong&gt; (4-6 items)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Nice-to-have&lt;/strong&gt; (3-5 items)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Que ofrecemos&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="errores-comunes"&gt;Errores Comunes &lt;a href="#errores-comunes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Lista excesiva de herramientas&lt;/li&gt;
&lt;li&gt;Combinaciones irrealistas de experiencia&lt;/li&gt;
&lt;li&gt;Sin mencion de crecimiento profesional&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="disenando-evaluaciones-tecnicas"&gt;Disenando Evaluaciones Tecnicas &lt;a href="#disenando-evaluaciones-tecnicas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="los-tres-tipos"&gt;Los Tres Tipos &lt;a href="#los-tres-tipos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Tipo 1: Asignacion para casa (2-4 horas)&lt;/strong&gt;
Dar una aplicacion real para probar: plan de tests, bugs, automatizar 5 tests criticos.&lt;/p&gt;</description></item><item><title>Contribuyendo a Proyectos QA de Codigo Abierto</title><link>https://yrkan.com/es/course/module-12-leadership/open-source-contributing/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/open-source-contributing/</guid><description>&lt;h2 id="contribuyendo-a-proyectos-qa-de-codigo-abierto"&gt;Contribuyendo a Proyectos QA de Codigo Abierto &lt;a href="#contribuyendo-a-proyectos-qa-de-codigo-abierto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for contribuyendo a proyectos qa de codigo abierto in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in contribuyendo a proyectos qa de codigo abierto lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>Dashboard de Metricas de QA</title><link>https://yrkan.com/es/course/module-12-leadership/qa-metrics-dashboard/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/qa-metrics-dashboard/</guid><description>&lt;h2 id="construyendo-un-dashboard-de-metricas-qa"&gt;Construyendo un Dashboard de Metricas QA &lt;a href="#construyendo-un-dashboard-de-metricas-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Metricas sin contexto son solo numeros. Un buen dashboard cuenta una historia sobre tendencias de calidad.&lt;/p&gt;
&lt;h2 id="metricas-esenciales"&gt;Metricas Esenciales &lt;a href="#metricas-esenciales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="metricas-de-proceso"&gt;Metricas de Proceso &lt;a href="#metricas-de-proceso" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Metrica&lt;/th&gt;
 &lt;th&gt;Formula&lt;/th&gt;
 &lt;th&gt;Objetivo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;DRE&lt;/td&gt;
 &lt;td&gt;Defectos pre-release / Total x 100&lt;/td&gt;
 &lt;td&gt;&amp;gt;95%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Cobertura&lt;/td&gt;
 &lt;td&gt;Requisitos con tests / Total x 100&lt;/td&gt;
 &lt;td&gt;&amp;gt;90%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tasa Automatizacion&lt;/td&gt;
 &lt;td&gt;Tests automatizados / Total x 100&lt;/td&gt;
 &lt;td&gt;&amp;gt;60%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tasa de Aprobacion&lt;/td&gt;
 &lt;td&gt;Tests pasados / Ejecutados x 100&lt;/td&gt;
 &lt;td&gt;&amp;gt;95%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="metricas-de-calidad"&gt;Metricas de Calidad &lt;a href="#metricas-de-calidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Defect Density, Escaped Defects, Mean Time to Detect, Mean Time to Fix.&lt;/p&gt;</description></item><item><title>El Futuro del QA: IA y Mas Alla</title><link>https://yrkan.com/es/course/module-12-leadership/future-of-qa-ai/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/future-of-qa-ai/</guid><description>&lt;h2 id="el-futuro-del-qa-ia-y-mas-alla"&gt;El Futuro del QA: IA y Mas Alla &lt;a href="#el-futuro-del-qa-ia-y-mas-alla" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for el futuro del qa: ia y mas alla in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in el futuro del qa: ia y mas alla lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>Escritura Tecnica para QA</title><link>https://yrkan.com/es/course/module-12-leadership/technical-writing-for-qa/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/technical-writing-for-qa/</guid><description>&lt;h2 id="escritura-tecnica-para-qa"&gt;Escritura Tecnica para QA &lt;a href="#escritura-tecnica-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for escritura tecnica para qa in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in escritura tecnica para qa lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>ESLint v10.1.0: API de Supresiones Masivas y Mejoras en TS</title><link>https://yrkan.com/es/tools-updates/eslint-v10-1-whats-new/</link><pubDate>Tue, 31 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/eslint-v10-1-whats-new/</guid><description>&lt;p&gt;ESLint v10.1.0: API de Supresiones Masivas y Mejoras en TS&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Nueva API para la supresión masiva de problemas de linting.&lt;/li&gt;
&lt;li&gt;La regla &lt;code&gt;no-var&lt;/code&gt; ahora aplica correcciones correctamente en &lt;code&gt;TSModuleBlock&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Autofix mejorado para &lt;code&gt;no-var&lt;/code&gt; previene cambios incorrectos al usar variables antes de su declaración.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Key Changes&lt;/strong&gt;
ESLint v10.1.0, una actualización menor lanzada el 20 de marzo de 2026, se centra en mejorar la experiencia del desarrollador y la consistencia del código. Para más detalles, consulta el &lt;a href="https://eslint.org/"&gt;sitio web oficial de ESLint&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Estrategia de Testing para un Nuevo Proyecto</title><link>https://yrkan.com/es/course/module-12-leadership/test-strategy-new-project/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/test-strategy-new-project/</guid><description>&lt;h2 id="creando-una-estrategia-de-testing-desde-cero"&gt;Creando una Estrategia de Testing desde Cero &lt;a href="#creando-una-estrategia-de-testing-desde-cero" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una estrategia de testing es un documento de alto nivel que define el enfoque de testing para un proyecto.&lt;/p&gt;
&lt;h2 id="cuando-necesitas-una-estrategia"&gt;Cuando Necesitas una Estrategia &lt;a href="#cuando-necesitas-una-estrategia" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Iniciando un nuevo proyecto o producto&lt;/li&gt;
&lt;li&gt;Entrando a una empresa sin procesos QA&lt;/li&gt;
&lt;li&gt;Cambios arquitectonicos mayores&lt;/li&gt;
&lt;li&gt;Entrando a un nuevo dominio&lt;/li&gt;
&lt;li&gt;Escalando de startup a crecimiento&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="el-framework-de-estrategia-de-testing"&gt;El Framework de Estrategia de Testing &lt;a href="#el-framework-de-estrategia-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-analisis-de-contexto"&gt;1. Analisis de Contexto &lt;a href="#1-analisis-de-contexto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Antes de escribir, entiende: producto, arquitectura, equipo, riesgos, restricciones.&lt;/p&gt;</description></item><item><title>Examen Final del Curso</title><link>https://yrkan.com/es/course/module-12-leadership/final-course-exam/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/final-course-exam/</guid><description>&lt;h2 id="resumen-de-la-evaluacion"&gt;Resumen de la Evaluacion &lt;a href="#resumen-de-la-evaluacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicitaciones por llegar al final del Modulo 12: Liderazgo y Carrera en QA. Esta evaluacion final cubre todos los temas de las lecciones 12.1 a 12.29.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Parte&lt;/th&gt;
 &lt;th&gt;Formato&lt;/th&gt;
 &lt;th&gt;Preguntas&lt;/th&gt;
 &lt;th&gt;Tiempo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 1&lt;/td&gt;
 &lt;td&gt;Quiz multiple choice&lt;/td&gt;
 &lt;td&gt;10 preguntas&lt;/td&gt;
 &lt;td&gt;15 min&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 2&lt;/td&gt;
 &lt;td&gt;Preguntas basadas en escenarios&lt;/td&gt;
 &lt;td&gt;3 escenarios&lt;/td&gt;
 &lt;td&gt;30 min&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 3&lt;/td&gt;
 &lt;td&gt;Ejercicio practico&lt;/td&gt;
 &lt;td&gt;1 ejercicio integral&lt;/td&gt;
 &lt;td&gt;45 min&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="parte-2-preguntas-de-escenarios"&gt;Parte 2: Preguntas de Escenarios &lt;a href="#parte-2-preguntas-de-escenarios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="escenario-1-planificacion-de-carrera"&gt;Escenario 1: Planificacion de Carrera &lt;a href="#escenario-1-planificacion-de-carrera" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Disena un plan de desarrollo profesional para ir de Mid QA a Senior QA Lead en 2 anos.&lt;/p&gt;</description></item><item><title>Gestion de Equipos de QA Distribuidos</title><link>https://yrkan.com/es/course/module-12-leadership/managing-distributed-teams/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/managing-distributed-teams/</guid><description>&lt;h2 id="liderando-equipos-qa-distribuidos"&gt;Liderando Equipos QA Distribuidos &lt;a href="#liderando-equipos-qa-distribuidos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los equipos remotos y distribuidos son la norma en QA.&lt;/p&gt;
&lt;h2 id="comunicacion-async-first"&gt;Comunicacion Async-First &lt;a href="#comunicacion-async-first" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tipo&lt;/th&gt;
 &lt;th&gt;Herramienta Async&lt;/th&gt;
 &lt;th&gt;Respaldo Sync&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Bug reports&lt;/td&gt;
 &lt;td&gt;Jira/GitHub Issues&lt;/td&gt;
 &lt;td&gt;—&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Actualizaciones&lt;/td&gt;
 &lt;td&gt;Slack/Teams&lt;/td&gt;
 &lt;td&gt;Standup diario&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Test plans&lt;/td&gt;
 &lt;td&gt;Confluence/Notion&lt;/td&gt;
 &lt;td&gt;Meeting de review&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Code reviews&lt;/td&gt;
 &lt;td&gt;GitHub PRs&lt;/td&gt;
 &lt;td&gt;Pair programming&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="ritmo-del-equipo"&gt;Ritmo del Equipo &lt;a href="#ritmo-del-equipo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Diario:&lt;/strong&gt; Standup escrito, notificaciones de tests
&lt;strong&gt;Semanal:&lt;/strong&gt; Sync del equipo, review de sprint
&lt;strong&gt;Quincenal:&lt;/strong&gt; 1:1 con cada miembro
&lt;strong&gt;Mensual:&lt;/strong&gt; Retrospectiva
&lt;strong&gt;Trimestral:&lt;/strong&gt; Review de estrategia, desarrollo de carrera&lt;/p&gt;</description></item><item><title>Habilidades de Comunicacion para QA</title><link>https://yrkan.com/es/course/module-12-leadership/communication-skills-for-qa/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/communication-skills-for-qa/</guid><description>&lt;h2 id="la-comunicacion-como-superpoder-qa"&gt;La Comunicacion como Superpoder QA &lt;a href="#la-comunicacion-como-superpoder-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las habilidades tecnicas te consiguen empleo. Las de comunicacion te consiguen ascensos. Para QA, la comunicacion es critica porque tu trabajo involucra dar malas noticias (bugs), influenciar sin autoridad y traducir problemas tecnicos a impacto de negocio.&lt;/p&gt;
&lt;h2 id="comunicacion-escrita"&gt;Comunicacion Escrita &lt;a href="#comunicacion-escrita" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="bug-reports-que-se-corrigen"&gt;Bug Reports Que Se Corrigen &lt;a href="#bug-reports-que-se-corrigen" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Malo:&lt;/strong&gt; &amp;ldquo;El login no funciona&amp;rdquo;
&lt;strong&gt;Bueno:&lt;/strong&gt; &amp;ldquo;El login falla con credenciales validas cuando el email contiene &amp;lsquo;+&amp;rsquo;. Retorna error 500. Afecta ~5% de usuarios.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Ingenieria QA Freelance</title><link>https://yrkan.com/es/course/module-12-leadership/freelance-qa/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/freelance-qa/</guid><description>&lt;h2 id="ingenieria-qa-freelance"&gt;Ingenieria QA Freelance &lt;a href="#ingenieria-qa-freelance" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for ingenieria qa freelance in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in ingenieria qa freelance lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>Mentoria de Ingenieros QA Junior</title><link>https://yrkan.com/es/course/module-12-leadership/mentoring-junior-qa/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/mentoring-junior-qa/</guid><description>&lt;h2 id="convirtiendote-en-un-mentor-qa-efectivo"&gt;Convirtiendote en un Mentor QA Efectivo &lt;a href="#convirtiendote-en-un-mentor-qa-efectivo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La mentoria es una de las actividades de mayor impacto para un senior QA.&lt;/p&gt;
&lt;h2 id="el-framework-de-mentoria"&gt;El Framework de Mentoria &lt;a href="#el-framework-de-mentoria" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="fase-1-onboarding-semana-1-2"&gt;Fase 1: Onboarding (Semana 1-2) &lt;a href="#fase-1-onboarding-semana-1-2" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Producto, entorno, herramientas, procesos, primera sesion de pair testing.&lt;/p&gt;
&lt;h3 id="fase-2-practica-guiada-mes-1-2"&gt;Fase 2: Practica Guiada (Mes 1-2) &lt;a href="#fase-2-practica-guiada-mes-1-2" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Tareas progresivas, review de reportes, 1:1 semanales, pair testing.&lt;/p&gt;
&lt;h3 id="fase-3-independencia-creciente-mes-3-4"&gt;Fase 3: Independencia Creciente (Mes 3-4) &lt;a href="#fase-3-independencia-creciente-mes-3-4" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Features independientes, reviews menos frecuentes, automation con guia.&lt;/p&gt;</description></item><item><title>Negociacion Salarial para QA</title><link>https://yrkan.com/es/course/module-12-leadership/salary-negotiation/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/salary-negotiation/</guid><description>&lt;h2 id="negociacion-salarial-para-qa"&gt;Negociacion Salarial para QA &lt;a href="#negociacion-salarial-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for negociacion salarial para qa in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in negociacion salarial para qa lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>Ponencias en Conferencias para Ingenieros de QA</title><link>https://yrkan.com/es/course/module-12-leadership/conference-speaking/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/conference-speaking/</guid><description>&lt;h2 id="ponencias-en-conferencias-para-ingenieros-de-qa"&gt;Ponencias en Conferencias para Ingenieros de QA &lt;a href="#ponencias-en-conferencias-para-ingenieros-de-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This lesson covers essential strategies and practical approaches for ponencias en conferencias para ingenieros de qa in the context of QA career development. Whether you are an individual contributor looking to expand your impact or a QA lead building team capabilities, these concepts apply to your daily work.&lt;/p&gt;
&lt;h2 id="core-concepts"&gt;Core Concepts &lt;a href="#core-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The key to success in ponencias en conferencias para ingenieros de qa lies in combining technical knowledge with interpersonal skills and strategic thinking. QA professionals who master this area differentiate themselves from peers and create new career opportunities.&lt;/p&gt;</description></item><item><title>Preparacion para Entrevistas: Automatizacion</title><link>https://yrkan.com/es/course/module-12-leadership/interview-automation/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/interview-automation/</guid><description>&lt;h2 id="el-formato-de-entrevista-de-automatizacion"&gt;El Formato de Entrevista de Automatizacion &lt;a href="#el-formato-de-entrevista-de-automatizacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las entrevistas de automatizacion son mas tecnicas que las de testing manual. Tipicamente incluyen:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Preguntas conceptuales&lt;/strong&gt; sobre frameworks, patrones y arquitectura&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Codigo en vivo&lt;/strong&gt; donde escribes tests reales (screen-shared)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Code review&lt;/strong&gt; donde evaluas codigo de tests de otro&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Diseno de sistemas&lt;/strong&gt; donde disenas una arquitectura de testing&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;El diferenciador clave en niveles senior no es conocer herramientas especificas — es entender &lt;em&gt;por que&lt;/em&gt; ciertos enfoques funcionan mejor.&lt;/p&gt;</description></item><item><title>Preparacion para Entrevistas: Diseno de Sistemas para QA</title><link>https://yrkan.com/es/course/module-12-leadership/interview-system-design/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/interview-system-design/</guid><description>&lt;h2 id="entrevistas-de-diseno-de-sistemas-para-qa"&gt;Entrevistas de Diseno de Sistemas para QA &lt;a href="#entrevistas-de-diseno-de-sistemas-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las entrevistas de diseno de sistemas para roles QA difieren de las de desarrolladores. En lugar de disenar el sistema, se te pide disenar la estrategia e infraestructura de testing.&lt;/p&gt;
&lt;h2 id="el-framework-de-diseno-de-sistemas-qa"&gt;El Framework de Diseno de Sistemas QA &lt;a href="#el-framework-de-diseno-de-sistemas-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-clarificar-requisitos"&gt;1. Clarificar Requisitos &lt;a href="#1-clarificar-requisitos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Escala (usuarios, requests por segundo, volumen de datos)&lt;/li&gt;
&lt;li&gt;SLAs (uptime, latencia, tasa de error)&lt;/li&gt;
&lt;li&gt;Entornos existentes&lt;/li&gt;
&lt;li&gt;Frecuencia de deployment&lt;/li&gt;
&lt;li&gt;Testing actual&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-identificar-capas-de-testing"&gt;2. Identificar Capas de Testing &lt;a href="#2-identificar-capas-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Unit Tests → Integration Tests → Contract Tests → E2E Tests → Performance Tests → Chaos Engineering&lt;/p&gt;</description></item><item><title>Preparacion para Entrevistas: Preguntas de Comportamiento</title><link>https://yrkan.com/es/course/module-12-leadership/interview-behavioral/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/interview-behavioral/</guid><description>&lt;h2 id="el-metodo-star-para-entrevistas-qa"&gt;El Metodo STAR para Entrevistas QA &lt;a href="#el-metodo-star-para-entrevistas-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las entrevistas de comportamiento evaluan como has manejado situaciones reales. El metodo STAR proporciona una estructura para responder efectivamente.&lt;/p&gt;
&lt;h3 id="que-es-star"&gt;Que es STAR? &lt;a href="#que-es-star" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Situation:&lt;/strong&gt; Establece la escena — proyecto, equipo, desafio&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Task:&lt;/strong&gt; Tu responsabilidad especifica&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Action:&lt;/strong&gt; Que hiciste (enfocate en TUS acciones, no las del equipo)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Result:&lt;/strong&gt; Resultado con impacto medible cuando sea posible&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="las-10-preguntas-de-comportamiento-principales-para-qa"&gt;Las 10 Preguntas de Comportamiento Principales para QA &lt;a href="#las-10-preguntas-de-comportamiento-principales-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-cuentame-sobre-un-bug-critico-que-encontraste-cerca-del-release"&gt;1. &amp;ldquo;Cuentame sobre un bug critico que encontraste cerca del release.&amp;rdquo; &lt;a href="#1-cuentame-sobre-un-bug-critico-que-encontraste-cerca-del-release" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Respuesta STAR ejemplo:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Preparacion para Entrevistas: Testing de API</title><link>https://yrkan.com/es/course/module-12-leadership/interview-api-testing/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/interview-api-testing/</guid><description>&lt;h2 id="entendiendo-las-entrevistas-de-api-testing"&gt;Entendiendo las Entrevistas de API Testing &lt;a href="#entendiendo-las-entrevistas-de-api-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las entrevistas de API testing evaluan tu comprension de protocolos HTTP, arquitectura REST, mecanismos de autenticacion y tu capacidad para probar servicios backend independientemente del frontend.&lt;/p&gt;
&lt;h2 id="areas-de-conocimiento-principal"&gt;Areas de Conocimiento Principal &lt;a href="#areas-de-conocimiento-principal" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="metodos-http-y-sus-implicaciones-de-testing"&gt;Metodos HTTP y sus Implicaciones de Testing &lt;a href="#metodos-http-y-sus-implicaciones-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Metodo&lt;/th&gt;
 &lt;th&gt;Proposito&lt;/th&gt;
 &lt;th&gt;Idempotente&lt;/th&gt;
 &lt;th&gt;Foco de Testing&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;GET&lt;/td&gt;
 &lt;td&gt;Obtener datos&lt;/td&gt;
 &lt;td&gt;Si&lt;/td&gt;
 &lt;td&gt;Formato de respuesta, filtrado, paginacion&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;POST&lt;/td&gt;
 &lt;td&gt;Crear recurso&lt;/td&gt;
 &lt;td&gt;No&lt;/td&gt;
 &lt;td&gt;Validacion, prevencion de duplicados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;PUT&lt;/td&gt;
 &lt;td&gt;Reemplazar recurso&lt;/td&gt;
 &lt;td&gt;Si&lt;/td&gt;
 &lt;td&gt;Reemplazo completo, campos faltantes&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;PATCH&lt;/td&gt;
 &lt;td&gt;Actualizacion parcial&lt;/td&gt;
 &lt;td&gt;No&lt;/td&gt;
 &lt;td&gt;Logica de actualizacion parcial&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;DELETE&lt;/td&gt;
 &lt;td&gt;Eliminar recurso&lt;/td&gt;
 &lt;td&gt;Si&lt;/td&gt;
 &lt;td&gt;Soft vs hard delete, autorizacion&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="conocimiento-de-codigos-de-estado"&gt;Conocimiento de Codigos de Estado &lt;a href="#conocimiento-de-codigos-de-estado" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Exito (2xx):&lt;/strong&gt; 200 OK, 201 Created, 204 No Content
&lt;strong&gt;Redireccion (3xx):&lt;/strong&gt; 301 Moved, 304 Not Modified
&lt;strong&gt;Errores cliente (4xx):&lt;/strong&gt; 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 409 Conflict, 422 Unprocessable, 429 Too Many Requests
&lt;strong&gt;Errores servidor (5xx):&lt;/strong&gt; 500 Internal Error, 502 Bad Gateway, 503 Unavailable&lt;/p&gt;</description></item><item><title>Preparacion para Entrevistas: Testing Manual</title><link>https://yrkan.com/es/course/module-12-leadership/interview-manual-testing/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/interview-manual-testing/</guid><description>&lt;h2 id="el-panorama-de-entrevistas-de-testing-manual"&gt;El Panorama de Entrevistas de Testing Manual &lt;a href="#el-panorama-de-entrevistas-de-testing-manual" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las entrevistas de testing manual tipicamente combinan tres elementos: preguntas conceptuales sobre teoria de testing, ejercicios practicos donde pruebas algo en el momento, y preguntas de comportamiento sobre tu experiencia. Esta leccion cubre los dos primeros — las preguntas de comportamiento se abordan en la Leccion 12.7.&lt;/p&gt;
&lt;p&gt;El objetivo no es memorizar respuestas. Los entrevistadores evaluan tu proceso de pensamiento, no tu capacidad de recitar definiciones. Los mejores candidatos piensan en voz alta, hacen preguntas clarificadoras y estructuran sus respuestas logicamente.&lt;/p&gt;</description></item><item><title>Presentando Resultados a Stakeholders</title><link>https://yrkan.com/es/course/module-12-leadership/presenting-test-results/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/presenting-test-results/</guid><description>&lt;h2 id="presentando-resultados-qa-que-impulsan-decisiones"&gt;Presentando Resultados QA que Impulsan Decisiones &lt;a href="#presentando-resultados-qa-que-impulsan-decisiones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La capacidad de presentar resultados efectivamente separa ingenieros QA de lideres QA.&lt;/p&gt;
&lt;h2 id="conoce-tu-audiencia"&gt;Conoce Tu Audiencia &lt;a href="#conoce-tu-audiencia" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Audiencia&lt;/th&gt;
 &lt;th&gt;Les Importa&lt;/th&gt;
 &lt;th&gt;Formato&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Desarrolladores&lt;/td&gt;
 &lt;td&gt;Bugs especificos, detalles tecnicos&lt;/td&gt;
 &lt;td&gt;Jira, PR comments&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Product Managers&lt;/td&gt;
 &lt;td&gt;Calidad de features, impacto usuario&lt;/td&gt;
 &lt;td&gt;Dashboards&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ejecutivos&lt;/td&gt;
 &lt;td&gt;Riesgo de negocio, tendencias, ROI&lt;/td&gt;
 &lt;td&gt;Resumenes visuales&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="formato-de-resumen-ejecutivo"&gt;Formato de Resumen Ejecutivo &lt;a href="#formato-de-resumen-ejecutivo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Estatus, hallazgos clave con impacto, evaluacion de riesgo, recomendacion clara.&lt;/p&gt;
&lt;h2 id="mejores-practicas-de-visualizacion"&gt;Mejores Practicas de Visualizacion &lt;a href="#mejores-practicas-de-visualizacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Charts de tendencia, indicadores RAG, comparacion con release anterior, anotaciones.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="presentacion-de-release-readiness"&gt;Presentacion de Release Readiness &lt;a href="#presentacion-de-release-readiness" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;10 minutos: alcance (2 min), resultados (2 min), defectos abiertos (2 min), riesgos (2 min), recomendacion (2 min).&lt;/p&gt;</description></item><item><title>Presupuesto y Seleccion de Herramientas</title><link>https://yrkan.com/es/course/module-12-leadership/budget-tool-selection/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/budget-tool-selection/</guid><description>&lt;h2 id="gestionando-presupuesto-qa-y-seleccionando-herramientas"&gt;Gestionando Presupuesto QA y Seleccionando Herramientas &lt;a href="#gestionando-presupuesto-qa-y-seleccionando-herramientas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Como lider QA, seras responsable de justificar gastos y tomar decisiones de herramientas.&lt;/p&gt;
&lt;h2 id="analisis-de-costo-total-de-propiedad-tco"&gt;Analisis de Costo Total de Propiedad (TCO) &lt;a href="#analisis-de-costo-total-de-propiedad-tco" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Categoria&lt;/th&gt;
 &lt;th&gt;Ejemplos&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Licencias&lt;/td&gt;
 &lt;td&gt;Suscripcion anual, precio por usuario&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Infraestructura&lt;/td&gt;
 &lt;td&gt;Servidores, cloud, dispositivos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Capacitacion&lt;/td&gt;
 &lt;td&gt;Curva de aprendizaje, cursos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Mantenimiento&lt;/td&gt;
 &lt;td&gt;Actualizaciones, configuracion&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Integracion&lt;/td&gt;
 &lt;td&gt;CI/CD, reportes, otras herramientas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="framework-build-vs-buy"&gt;Framework Build vs Buy &lt;a href="#framework-build-vs-buy" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Factor&lt;/th&gt;
 &lt;th&gt;Build&lt;/th&gt;
 &lt;th&gt;Buy&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Personalizacion&lt;/td&gt;
 &lt;td&gt;Control total&lt;/td&gt;
 &lt;td&gt;Limitado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tiempo a valor&lt;/td&gt;
 &lt;td&gt;Meses&lt;/td&gt;
 &lt;td&gt;Dias/semanas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Mantenimiento&lt;/td&gt;
 &lt;td&gt;Equipo&lt;/td&gt;
 &lt;td&gt;Vendor&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="presentando-roi"&gt;Presentando ROI &lt;a href="#presentando-roi" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Costo actual → inversion propuesta → ahorro proyectado → periodo de retorno.&lt;/p&gt;</description></item><item><title>Trabajando Efectivamente con Desarrolladores</title><link>https://yrkan.com/es/course/module-12-leadership/working-with-developers/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/working-with-developers/</guid><description>&lt;h2 id="construyendo-relaciones-fuertes-qa-desarrollador"&gt;Construyendo Relaciones Fuertes QA-Desarrollador &lt;a href="#construyendo-relaciones-fuertes-qa-desarrollador" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La relacion QA-desarrollador es una de las dinamicas mas importantes. Cuando funciona, la calidad mejora. Cuando falla, los bugs se escapan.&lt;/p&gt;
&lt;h2 id="entendiendo-la-perspectiva-del-desarrollador"&gt;Entendiendo la Perspectiva del Desarrollador &lt;a href="#entendiendo-la-perspectiva-del-desarrollador" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Presion de tiempo:&lt;/strong&gt; Compromisos de sprint&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Orgullo en el trabajo:&lt;/strong&gt; Encontrar bugs puede sentirse personal&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cambio de contexto:&lt;/strong&gt; Bug reports que interrumpen son frustrantes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="patrones-de-comunicacion"&gt;Patrones de Comunicacion &lt;a href="#patrones-de-comunicacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-pair-testing--probar-junto-al-dev-mientras-explica-la-feature"&gt;1. Pair Testing — Probar junto al dev mientras explica la feature &lt;a href="#1-pair-testing--probar-junto-al-dev-mientras-explica-la-feature" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h3 id="2-calidad-de-bug-reports--reports-claros-ahorran-horas"&gt;2. Calidad de Bug Reports — Reports claros ahorran horas &lt;a href="#2-calidad-de-bug-reports--reports-claros-ahorran-horas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h3 id="3-review-de-prs--revisar-desde-perspectiva-de-testing"&gt;3. Review de PRs — Revisar desde perspectiva de testing &lt;a href="#3-review-de-prs--revisar-desde-perspectiva-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h3 id="4-definition-of-done-compartida"&gt;4. Definition of Done compartida &lt;a href="#4-definition-of-done-compartida" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h2 id="cuando-surgen-conflictos"&gt;Cuando Surgen Conflictos &lt;a href="#cuando-surgen-conflictos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&amp;lsquo;Funciona en mi maquina&amp;rsquo; → Reproducir juntos, documentar diferencias&lt;/li&gt;
&lt;li&gt;Desacuerdo en severidad → Datos de impacto al usuario, dejar decidir al PM&lt;/li&gt;
&lt;li&gt;Resistencia a unit tests → Mostrar ROI&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio"&gt;Ejercicio &lt;a href="#ejercicio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Aplica los conceptos de esta leccion a tu proyecto actual o reciente. Documenta tu enfoque y resultados.&lt;/p&gt;</description></item><item><title>Transicion de Manual a Automatizacion</title><link>https://yrkan.com/es/course/module-12-leadership/manual-to-automation-transition/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/manual-to-automation-transition/</guid><description>&lt;h2 id="el-roadmap-de-transicion"&gt;El Roadmap de Transicion &lt;a href="#el-roadmap-de-transicion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Transicionar de testing manual a automatizacion es uno de los movimientos mas comunes e impactantes en QA. Tipicamente aumenta el potencial salarial en 30-50%.&lt;/p&gt;
&lt;h3 id="mes-1-2-fundamentos-de-programacion"&gt;Mes 1-2: Fundamentos de Programacion &lt;a href="#mes-1-2-fundamentos-de-programacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Aprende un lenguaje bien antes de tocar frameworks:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;JavaScript/TypeScript:&lt;/strong&gt; Mejor para web (Playwright, Cypress)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Python:&lt;/strong&gt; Mejor para API y scripting (pytest)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="mes-3-4-primer-framework"&gt;Mes 3-4: Primer Framework &lt;a href="#mes-3-4-primer-framework" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Configurar proyecto desde cero&lt;/li&gt;
&lt;li&gt;Escribir 5 tests&lt;/li&gt;
&lt;li&gt;Implementar Page Object Model&lt;/li&gt;
&lt;li&gt;Ejecutar en CI&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="mes-5-6-expandir"&gt;Mes 5-6: Expandir &lt;a href="#mes-5-6-expandir" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;API testing, data-driven testing, fixtures, reporting.&lt;/p&gt;</description></item><item><title>Trayectorias Profesionales en QA</title><link>https://yrkan.com/es/course/module-12-leadership/qa-career-paths/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-12-leadership/qa-career-paths/</guid><description>&lt;h2 id="el-panorama-profesional-en-qa"&gt;El Panorama Profesional en QA &lt;a href="#el-panorama-profesional-en-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La industria de QA ofrece mas diversidad de carreras de lo que la mayoria imagina. Quedaron atras los dias cuando &amp;ldquo;tester&amp;rdquo; era un unico rol con una unica trayectoria. Hoy, los profesionales de QA pueden elegir entre rutas tecnicas profundas como contribuidor individual y rutas de gestion enfocadas en personas — cada una con responsabilidades, desafios y recompensas distintas.&lt;/p&gt;
&lt;p&gt;Entender estas rutas temprano te ayuda a tomar decisiones intencionales sobre el desarrollo de habilidades en lugar de ir a la deriva segun tu trabajo actual.&lt;/p&gt;</description></item><item><title>Actualización Puppeteer 24.40.0: Sandbox y Chrome</title><link>https://yrkan.com/es/tools-updates/puppeteer-puppeteer-core-v24-40-whats-new/</link><pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/puppeteer-puppeteer-core-v24-40-whats-new/</guid><description>&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Nueva variable de entorno &lt;code&gt;PUPPETEER_DANGEROUS_NO_SANDBOX&lt;/code&gt; para control del sandbox.&lt;/li&gt;
&lt;li&gt;Actualización del navegador Chrome a las versiones 146.0.7680.153 y 146.0.7680.80.&lt;/li&gt;
&lt;li&gt;Mejoras generales de estabilidad y compatibilidad para la automatización de pruebas.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Puppeteer &lt;code&gt;puppeteer-core-v24.40.0&lt;/code&gt;, lanzado el 19 de marzo de 2026, presenta una característica clave y actualizaciones importantes del navegador.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Features:&lt;/strong&gt;
Una adición notable es el soporte para la variable de entorno &lt;code&gt;PUPPETEER_DANGEROUS_NO_SANDBOX&lt;/code&gt;. Esto permite a los usuarios deshabilitar el sandbox de Chrome, lo cual puede ser crucial para entornos específicos de CI/CD o sistemas donde las restricciones del sandbox causan problemas. Esto proporciona mayor flexibilidad para las configuraciones de ejecución de pruebas.&lt;/p&gt;</description></item><item><title>Análisis de Logs: ELK Stack y Grafana</title><link>https://yrkan.com/es/course/module-09-cicd-devops/log-analysis-elk-grafana/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/log-analysis-elk-grafana/</guid><description>&lt;h2 id="elk-stack-para-qa"&gt;ELK Stack para QA &lt;a href="#elk-stack-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;ELK significa Elasticsearch, Logstash y Kibana — tres herramientas open-source que juntas forman una plataforma poderosa de gestión de logs.&lt;/p&gt;
&lt;h3 id="componentes"&gt;Componentes &lt;a href="#componentes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Elasticsearch:&lt;/strong&gt; Motor de búsqueda que almacena e indexa datos de logs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Logstash:&lt;/strong&gt; Pipeline de procesamiento que ingesta logs de varias fuentes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kibana:&lt;/strong&gt; Capa de visualización con interfaz web para buscar logs y crear dashboards&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Filebeat:&lt;/strong&gt; Enviador ligero de logs instalado en servidores de aplicación&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="kibana-para-investigación-de-logs"&gt;Kibana para Investigación de Logs &lt;a href="#kibana-para-investigaci%c3%b3n-de-logs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="buscando-logs"&gt;Buscando Logs &lt;a href="#buscando-logs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;# Errores en el servicio de pagos en la última hora
service: &amp;#34;payment-service&amp;#34; AND level: &amp;#34;ERROR&amp;#34;

# Errores de timeout
message: &amp;#34;timeout&amp;#34; OR message: &amp;#34;timed out&amp;#34;

# Errores para un usuario específico
userId: &amp;#34;usr_12345&amp;#34; AND level: &amp;#34;ERROR&amp;#34;
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="flujo-de-correlación"&gt;Flujo de Correlación &lt;a href="#flujo-de-correlaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Cuando un test falla:&lt;/p&gt;</description></item><item><title>Conceptos CI/CD para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/cicd-concepts/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/cicd-concepts/</guid><description>&lt;h2 id="qué-es-cicd"&gt;¿Qué es CI/CD? &lt;a href="#qu%c3%a9-es-cicd" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;CI/CD significa Continuous Integration y Continuous Delivery (o Continuous Deployment). Es un conjunto de prácticas y herramientas que automatizan cómo el software se construye, testea y libera. Para ingenieros QA, entender CI/CD ya no es opcional — es una competencia central que separa a los testers modernos de aquellos atrapados en procesos manuales.&lt;/p&gt;
&lt;p&gt;En un flujo de trabajo tradicional, los desarrolladores escriben código por semanas y luego lo entregan a QA para testing. Los bugs encontrados semanas después de codificar son costosos de corregir. CI/CD elimina esta demora automatizando el ciclo build-test-deploy para que cada cambio de código sea validado en minutos.&lt;/p&gt;</description></item><item><title>Despliegues Blue-Green y Canary</title><link>https://yrkan.com/es/course/module-09-cicd-devops/blue-green-canary-deployments/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/blue-green-canary-deployments/</guid><description>&lt;h2 id="por-qué-las-estrategias-de-despliegue-importan-para-qa"&gt;Por qué las Estrategias de Despliegue Importan para QA &lt;a href="#por-qu%c3%a9-las-estrategias-de-despliegue-importan-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cómo se despliega el software afecta directamente cómo debe testearse. Un despliegue big-bang requiere enfoques QA diferentes que un rollout canary gradual.&lt;/p&gt;
&lt;h2 id="resumen-de-estrategias"&gt;Resumen de Estrategias &lt;a href="#resumen-de-estrategias" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="despliegue-blue-green"&gt;Despliegue Blue-Green &lt;a href="#despliegue-blue-green" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Mantener dos entornos de producción idénticos. Después de validar green, el tráfico cambia instantáneamente. Blue queda como objetivo de rollback.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pasos de validación QA:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Desplegar nueva versión en entorno green&lt;/li&gt;
&lt;li&gt;Ejecutar suite completa de smoke tests contra green&lt;/li&gt;
&lt;li&gt;Verificar migraciones de BD&lt;/li&gt;
&lt;li&gt;Cambiar tráfico a green&lt;/li&gt;
&lt;li&gt;Ejecutar smoke tests de producción inmediatamente&lt;/li&gt;
&lt;li&gt;Monitorear métricas por 15-30 minutos&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="despliegue-canary"&gt;Despliegue Canary &lt;a href="#despliegue-canary" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Enrutar un pequeño porcentaje de tráfico a la nueva versión. Aumentar gradualmente si las métricas están saludables.&lt;/p&gt;</description></item><item><title>Docker Compose para Entornos de Test</title><link>https://yrkan.com/es/course/module-09-cicd-devops/docker-compose-test-environments/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/docker-compose-test-environments/</guid><description>&lt;h2 id="de-contenedor-único-a-stack-completo"&gt;De Contenedor Único a Stack Completo &lt;a href="#de-contenedor-%c3%banico-a-stack-completo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la lección anterior, aprendiste a ejecutar tests en un solo contenedor Docker. Pero las aplicaciones reales raramente se ejecutan aisladas. Una aplicación web típica necesita una base de datos, un caché, posiblemente una cola de mensajes y quizás un servicio de email. Docker Compose te permite definir todo esto como un solo stack que inicia y se detiene junto.&lt;/p&gt;
&lt;p&gt;Para QA, Docker Compose es transformador. En lugar de configurar manualmente PostgreSQL, Redis y la aplicación antes de ejecutar tests de integración, defines todo en un archivo &lt;code&gt;docker-compose.yml&lt;/code&gt; y lo inicias con un solo comando.&lt;/p&gt;</description></item><item><title>Docker para Ingenieros de QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/docker-for-qa/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/docker-for-qa/</guid><description>&lt;h2 id="por-qué-docker-para-qa"&gt;Por qué Docker para QA &lt;a href="#por-qu%c3%a9-docker-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Docker resuelve uno de los problemas más antiguos de QA: la inconsistencia de entornos. ¿Cuántas veces has escuchado &amp;ldquo;funciona en mi máquina&amp;rdquo; al reportar un bug? Docker elimina esto empaquetando aplicaciones y sus dependencias en contenedores que se ejecutan idénticamente en todas partes.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, Docker proporciona:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Entornos de test consistentes&lt;/strong&gt; entre máquinas locales, servidores CI y staging&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ejecución de tests aislada&lt;/strong&gt; — los tests no interfieren entre sí ni con el sistema host&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bugs reproducibles&lt;/strong&gt; — si falla en un contenedor, falla de la misma manera cada vez&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Setup rápido de entornos&lt;/strong&gt; — levanta un entorno de test completo en segundos, no horas&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conceptos-fundamentales-de-docker"&gt;Conceptos Fundamentales de Docker &lt;a href="#conceptos-fundamentales-de-docker" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="imágenes"&gt;Imágenes &lt;a href="#im%c3%a1genes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Una imagen Docker es un paquete ligero e independiente que incluye todo lo necesario para ejecutar un software: código, runtime, herramientas del sistema, librerías y configuraciones.&lt;/p&gt;</description></item><item><title>Estrategias de Testing en Producción</title><link>https://yrkan.com/es/course/module-09-cicd-devops/testing-in-production/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/testing-in-production/</guid><description>&lt;h2 id="por-qué-testear-en-producción"&gt;Por qué Testear en Producción &lt;a href="#por-qu%c3%a9-testear-en-producci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los entornos pre-producción nunca replican perfectamente producción. Producción tiene patrones de datos reales, volúmenes de tráfico reales, integraciones reales con terceros y complejidad de infraestructura real.&lt;/p&gt;
&lt;p&gt;Testing en producción no significa abandonar el testing pre-producción. Significa agregar una capa de validación que detecta lo que el testing previo no puede.&lt;/p&gt;
&lt;h2 id="estrategias-seguras"&gt;Estrategias Seguras &lt;a href="#estrategias-seguras" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="monitoreo-sintético"&gt;Monitoreo Sintético &lt;a href="#monitoreo-sint%c3%a9tico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Scripts automatizados que ejecutan continuamente journeys críticos contra producción. Reglas clave: usar cuentas de test dedicadas, operaciones no destructivas, ejecutar desde múltiples ubicaciones geográficas.&lt;/p&gt;</description></item><item><title>Evaluación del Módulo 11</title><link>https://yrkan.com/es/course/module-11-domain-testing/module-11-assessment/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/module-11-assessment/</guid><description>&lt;h2 id="module-11-domain-specific-testing--final-assessment"&gt;Module 11: Domain-Specific Testing — Final Assessment &lt;a href="#module-11-domain-specific-testing--final-assessment" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta evaluación cubre las 24 lecciones del Módulo 11. Necesitas al menos 70% (7/10) para aprobar.&lt;/p&gt;
&lt;p&gt;The questions test your understanding of domain-specific testing across all 24 industry domains covered in this module.&lt;/p&gt;
&lt;p&gt;Take your time — there is no time limit. Review each question carefully before selecting your answer.&lt;/p&gt;</description></item><item><title>Evaluación del Módulo 9</title><link>https://yrkan.com/es/course/module-09-cicd-devops/module-9-assessment/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/module-9-assessment/</guid><description>&lt;h2 id="módulo-9-cicd-y-devops-para-qa--evaluación-final"&gt;Módulo 9: CI/CD y DevOps para QA — Evaluación Final &lt;a href="#m%c3%b3dulo-9-cicd-y-devops-para-qa--evaluaci%c3%b3n-final" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta evaluación cubre las 19 lecciones del Módulo 9. Necesitas al menos 70% (7 de 10 correctas) para aprobar.&lt;/p&gt;
&lt;p&gt;Las preguntas evalúan tu comprensión de:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Conceptos y herramientas de pipelines CI/CD (Jenkins, GitHub Actions, GitLab CI)&lt;/li&gt;
&lt;li&gt;Docker y testing basado en contenedores&lt;/li&gt;
&lt;li&gt;Kubernetes para QA&lt;/li&gt;
&lt;li&gt;Gestión de entornos e Infraestructura como Código&lt;/li&gt;
&lt;li&gt;Estrategias de despliegue (blue-green, canary)&lt;/li&gt;
&lt;li&gt;Monitoreo y observabilidad&lt;/li&gt;
&lt;li&gt;Chaos engineering y testing en producción&lt;/li&gt;
&lt;li&gt;Orquestación de tests y métricas DevOps&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Tómate tu tiempo — no hay límite de tiempo.&lt;/p&gt;</description></item><item><title>Feature Flags y Testing</title><link>https://yrkan.com/es/course/module-09-cicd-devops/feature-flags-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/feature-flags-testing/</guid><description>&lt;h2 id="qué-son-feature-flags"&gt;¿Qué Son Feature Flags? &lt;a href="#qu%c3%a9-son-feature-flags" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los feature flags (también llamados feature toggles) son sentencias condicionales en código que controlan si un feature está activo. Desacoplan el despliegue de código del lanzamiento de features — puedes desplegar código a producción con features nuevos ocultos, luego habilitarlos gradualmente.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, los feature flags agregan complejidad al testing pero también proporcionan capacidades poderosas: puedes testear features en producción de forma segura, controlar experimentos A/B y revertir features problemáticos instantáneamente sin redesplegar.&lt;/p&gt;</description></item><item><title>Fundamentos de Kubernetes para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/kubernetes-basics-for-qa/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/kubernetes-basics-for-qa/</guid><description>&lt;h2 id="por-qué-kubernetes-importa-para-qa"&gt;Por qué Kubernetes Importa para QA &lt;a href="#por-qu%c3%a9-kubernetes-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Kubernetes (K8s) se ha convertido en la plataforma estándar para ejecutar aplicaciones containerizadas en producción. Si la aplicación que testeas se ejecuta en Kubernetes, entender su arquitectura te ayuda a depurar fallos, entender el comportamiento de despliegue y diseñar tests más efectivos.&lt;/p&gt;
&lt;p&gt;No necesitas convertirte en administrador de Kubernetes. Pero como ingeniero QA, necesitas suficiente conocimiento para leer logs de pods, verificar estado de despliegues, entender por qué un entorno de test se comporta mal y comunicarte efectivamente con equipos DevOps.&lt;/p&gt;</description></item><item><title>Gestión de Entornos de Test</title><link>https://yrkan.com/es/course/module-09-cicd-devops/test-environment-management/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/test-environment-management/</guid><description>&lt;h2 id="el-problema-de-los-entornos"&gt;El Problema de los Entornos &lt;a href="#el-problema-de-los-entornos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los entornos de test son uno de los mayores puntos de dolor de QA. Los entornos compartidos se vuelven inestables porque múltiples personas testean simultáneamente. Los entornos divergen de producción, causando falsos positivos. Los datos de test se corrompen. La configuración del entorno toma días en lugar de minutos.&lt;/p&gt;
&lt;p&gt;La gestión efectiva de entornos resuelve estos problemas con estrategias claras y automatización.&lt;/p&gt;
&lt;h2 id="tipos-de-entorno"&gt;Tipos de Entorno &lt;a href="#tipos-de-entorno" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="desarrollo-dev"&gt;Desarrollo (Dev) &lt;a href="#desarrollo-dev" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Entornos individuales de desarrollador para testing local. Cada desarrollador tiene su propia instancia.&lt;/p&gt;</description></item><item><title>Gestión de Releases para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/release-management-for-qa/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/release-management-for-qa/</guid><description>&lt;h2 id="rol-de-qa-en-gestión-de-releases"&gt;Rol de QA en Gestión de Releases &lt;a href="#rol-de-qa-en-gesti%c3%b3n-de-releases" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La gestión de releases es el proceso de planificar, programar y controlar liberaciones de software. QA es central — no como un bloqueador, sino como asesor de calidad que proporciona recomendaciones basadas en datos.&lt;/p&gt;
&lt;h2 id="checklist-de-release"&gt;Checklist de Release &lt;a href="#checklist-de-release" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="pre-release"&gt;Pre-Release &lt;a href="#pre-release" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Todos los tests automatizados pasan&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Cobertura de código cumple el umbral mínimo&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Sin bugs críticos o de alta severidad abiertos&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Tests de performance sin regresión&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Escaneo de seguridad sin vulnerabilidades críticas&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Migraciones de BD testeadas y reversibles&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Plan de rollback documentado y testeado&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Ingeniero de guardia identificado&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="durante-release"&gt;Durante Release &lt;a href="#durante-release" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Health checks pasando en todas las instancias&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Smoke tests ejecutados contra producción&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Métricas clave dentro de rangos normales&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="post-release"&gt;Post-Release &lt;a href="#post-release" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Suite completa de smoke tests pasada&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Métricas de negocio dentro de rangos esperados&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Monitoreo sintético todo verde&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; Release marcado como exitoso o rollback iniciado&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="criterios-gono-go"&gt;Criterios Go/No-Go &lt;a href="#criterios-gono-go" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Métrica&lt;/th&gt;
 &lt;th&gt;Umbral Go&lt;/th&gt;
 &lt;th&gt;Umbral No-Go&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Tasa de éxito de tests&lt;/td&gt;
 &lt;td&gt;≥ 99%&lt;/td&gt;
 &lt;td&gt;&amp;lt; 95%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Bugs críticos&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;&amp;gt; 0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Cobertura de código&lt;/td&gt;
 &lt;td&gt;≥ 80%&lt;/td&gt;
 &lt;td&gt;&amp;lt; 70%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Regresión de performance&lt;/td&gt;
 &lt;td&gt;&amp;lt; 5%&lt;/td&gt;
 &lt;td&gt;&amp;gt; 15%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Vulnerabilidades críticas&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;&amp;gt; 0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="planes-de-rollback"&gt;Planes de Rollback &lt;a href="#planes-de-rollback" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada release debe tener un plan que responda: cuándo, cómo, quién decide, comunicación y verificación.&lt;/p&gt;</description></item><item><title>GitHub Actions para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/github-actions-for-qa/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/github-actions-for-qa/</guid><description>&lt;h2 id="por-qué-github-actions-para-qa"&gt;Por qué GitHub Actions para QA &lt;a href="#por-qu%c3%a9-github-actions-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;GitHub Actions es la plataforma CI/CD integrada de GitHub. Si tu proyecto vive en GitHub, Actions elimina la necesidad de servicios CI/CD externos. Los workflows se ejecutan directamente dentro de GitHub, con integración estrecha con pull requests, issues y el ecosistema de GitHub.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, esta integración estrecha es una gran ventaja. Los resultados de tests aparecen directamente en pull requests. Los checks fallidos bloquean merges. Los artefactos de tests son accesibles desde la misma interfaz donde revisas código.&lt;/p&gt;</description></item><item><title>GitLab CI para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/gitlab-ci-for-qa/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/gitlab-ci-for-qa/</guid><description>&lt;h2 id="visión-general-de-gitlab-ci"&gt;Visión General de GitLab CI &lt;a href="#visi%c3%b3n-general-de-gitlab-ci" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;GitLab CI/CD está integrado directamente en GitLab — sin plugins, sin servicio separado, sin configuración adicional. Cada repositorio de GitLab puede usar CI/CD agregando un archivo &lt;code&gt;.gitlab-ci.yml&lt;/code&gt; a la raíz del repositorio. GitLab detecta este archivo automáticamente y ejecuta el pipeline.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, GitLab CI ofrece varias ventajas: reportes de tests nativos en merge requests, registro de contenedores integrado, gestión de entornos y review apps para testing de despliegues.&lt;/p&gt;</description></item><item><title>Infraestructura como Código para Testing</title><link>https://yrkan.com/es/course/module-09-cicd-devops/infrastructure-as-code/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/infrastructure-as-code/</guid><description>&lt;h2 id="por-qué-iac-importa-para-qa"&gt;Por qué IaC Importa para QA &lt;a href="#por-qu%c3%a9-iac-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Infrastructure as Code (IaC) significa definir tu infraestructura — servidores, bases de datos, redes, balanceadores de carga — en archivos de configuración en lugar de crearlos manualmente a través de consolas web o comandos CLI.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, IaC transforma cómo se gestionan los entornos de test. En lugar de pedir a un ingeniero DevOps que &amp;ldquo;configure un entorno staging&amp;rdquo; (lo que podría tomar días), defines el entorno en código y lo creas con un solo comando.&lt;/p&gt;</description></item><item><title>Ingeniería del Caos</title><link>https://yrkan.com/es/course/module-09-cicd-devops/chaos-engineering/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/chaos-engineering/</guid><description>&lt;h2 id="qué-es-la-ingeniería-del-caos"&gt;¿Qué es la Ingeniería del Caos? &lt;a href="#qu%c3%a9-es-la-ingenier%c3%ada-del-caos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La ingeniería del caos es la disciplina de experimentar en un sistema distribuido para construir confianza en su capacidad de resistir condiciones turbulentas en producción. Fue pionera de Netflix, que creó Chaos Monkey para terminar instancias de producción aleatoriamente.&lt;/p&gt;
&lt;p&gt;La idea central: en lugar de esperar a que los fallos ocurran inesperadamente, inyectar fallos proactivamente y observar cómo responde el sistema.&lt;/p&gt;
&lt;h2 id="principios"&gt;Principios &lt;a href="#principios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Construye una hipótesis sobre el estado estable.&lt;/strong&gt; Define qué es &amp;ldquo;normal&amp;rdquo;: error rate, latencia, throughput.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Varía eventos del mundo real.&lt;/strong&gt; Inyecta fallos que realmente ocurren: crashes, particiones de red, disco lleno.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ejecuta experimentos en producción.&lt;/strong&gt; Comienza en staging, avanza a producción.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automatiza para ejecución continua.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Minimiza el radio de impacto.&lt;/strong&gt; Comienza pequeño.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="ciclo-de-vida-del-experimento"&gt;Ciclo de Vida del Experimento &lt;a href="#ciclo-de-vida-del-experimento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="paso-1-definir-estado-estable"&gt;Paso 1: Definir Estado Estable &lt;a href="#paso-1-definir-estado-estable" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Error rate &amp;lt; 0.1%, P95 &amp;lt; 200ms, health checks pasando, tasa de completación de ordenes &amp;gt; 99%.&lt;/p&gt;</description></item><item><title>Jenkins para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/jenkins-for-qa/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/jenkins-for-qa/</guid><description>&lt;h2 id="por-qué-jenkins-importa-para-qa"&gt;Por qué Jenkins importa para QA &lt;a href="#por-qu%c3%a9-jenkins-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Jenkins es el servidor CI/CD más ampliamente desplegado en el mundo. Con más de 1,800 plugins y una comunidad masiva, sigue siendo la columna vertebral de los pipelines de automatización de tests en miles de empresas — desde startups hasta empresas como Netflix y Airbnb.&lt;/p&gt;
&lt;p&gt;Como ingeniero QA, es casi seguro que encontrarás Jenkins en tu carrera. Incluso si tu equipo actual usa otra herramienta, entender Jenkins te da conocimiento transferible sobre diseño de pipelines CI/CD que aplica en todas partes.&lt;/p&gt;</description></item><item><title>Métricas DevOps para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/devops-metrics-for-qa/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/devops-metrics-for-qa/</guid><description>&lt;h2 id="las-métricas-dora"&gt;Las Métricas DORA &lt;a href="#las-m%c3%a9tricas-dora" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;DORA identificó cuatro métricas que distinguen equipos de alto rendimiento. QA influye directamente en las cuatro.&lt;/p&gt;
&lt;h3 id="1-frecuencia-de-despliegue"&gt;1. Frecuencia de Despliegue &lt;a href="#1-frecuencia-de-despliegue" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Qué tan frecuentemente se despliega. Elite: múltiples veces/día. QA: tests rápidos y confiables habilitan despliegues frecuentes.&lt;/p&gt;
&lt;h3 id="2-lead-time-para-cambios"&gt;2. Lead Time para Cambios &lt;a href="#2-lead-time-para-cambios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Tiempo desde commit hasta producción. Elite: menos de una hora. QA: el tiempo de ejecución de tests es componente directo del lead time.&lt;/p&gt;</description></item><item><title>Monitoreo y Observabilidad para QA</title><link>https://yrkan.com/es/course/module-09-cicd-devops/monitoring-observability/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/monitoring-observability/</guid><description>&lt;h2 id="por-qué-el-monitoreo-importa-para-qa"&gt;Por qué el Monitoreo Importa para QA &lt;a href="#por-qu%c3%a9-el-monitoreo-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing no termina cuando el código llega a producción. El monitoreo es la continuación del aseguramiento de calidad en el entorno en vivo. Ninguna suite de tests captura cada bug, y algunos problemas solo aparecen bajo patrones de tráfico real.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, el monitoreo proporciona:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Validación post-despliegue:&lt;/strong&gt; Confirmar que los nuevos releases funcionan en producción&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Detección de bugs:&lt;/strong&gt; Capturar problemas que el testing no encontró&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Análisis de causa raíz:&lt;/strong&gt; Correlacionar fallos de tests con comportamiento del sistema&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Validación no funcional:&lt;/strong&gt; Verificar que performance y disponibilidad cumplen requisitos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="los-tres-pilares-de-la-observabilidad"&gt;Los Tres Pilares de la Observabilidad &lt;a href="#los-tres-pilares-de-la-observabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="logs"&gt;Logs &lt;a href="#logs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Eventos discretos que describen qué ocurrió en un punto específico del tiempo. QA usa logs para investigar tests fallidos, encontrar patrones de error después de despliegues y depurar problemas intermitentes.&lt;/p&gt;</description></item><item><title>Orquestación de Tests</title><link>https://yrkan.com/es/course/module-09-cicd-devops/test-orchestration/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/test-orchestration/</guid><description>&lt;h2 id="el-problema-de-escalado"&gt;El Problema de Escalado &lt;a href="#el-problema-de-escalado" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A medida que las suites crecen, el tiempo de ejecución se convierte en cuello de botella. Una suite de 2 horas significa 2 horas de espera. La orquestación resuelve esto distribuyendo tests inteligentemente.&lt;/p&gt;
&lt;h2 id="test-sharding"&gt;Test Sharding &lt;a href="#test-sharding" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Divide la suite en partes iguales y ejecuta cada una en una máquina separada.&lt;/p&gt;
&lt;h3 id="estrategias-de-sharding"&gt;Estrategias de Sharding &lt;a href="#estrategias-de-sharding" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Estrategia&lt;/th&gt;
 &lt;th&gt;Cómo Funciona&lt;/th&gt;
 &lt;th&gt;Mejor Para&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Round-robin&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Distribución uniforme por cantidad&lt;/td&gt;
 &lt;td&gt;Duraciones uniformes&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Basada en duración&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Distribución por tiempo estimado&lt;/td&gt;
 &lt;td&gt;Duraciones variadas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Por archivo&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Cada shard recibe archivos completos&lt;/td&gt;
 &lt;td&gt;Archivos con setup compartido&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Por etiqueta&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Shard por categoría&lt;/td&gt;
 &lt;td&gt;Tipos de test mixtos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mecanismos-de-reintento-inteligente"&gt;Mecanismos de Reintento Inteligente &lt;a href="#mecanismos-de-reintento-inteligente" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="reglas-de-reintento"&gt;Reglas de Reintento &lt;a href="#reglas-de-reintento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Limita reintentos a 1-2&lt;/strong&gt; — más indica un problema real&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Logea todos los tests reintentados&lt;/strong&gt; — rastrea la tasa de inestabilidad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Diferencia razones&lt;/strong&gt; — timeout de red vs. fallo de aserción&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cuarentena tests crónicamente inestables&lt;/strong&gt; — &amp;gt;5% de fallos necesitan corrección&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="priorización-de-tests"&gt;Priorización de Tests &lt;a href="#priorizaci%c3%b3n-de-tests" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Tests cubriendo código recientemente cambiado&lt;/li&gt;
&lt;li&gt;Tests que fallaron recientemente&lt;/li&gt;
&lt;li&gt;Tests de rutas críticas de negocio&lt;/li&gt;
&lt;li&gt;Tests nuevos&lt;/li&gt;
&lt;li&gt;Tests estables sin fallos recientes&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="análisis-de-impacto"&gt;Análisis de Impacto &lt;a href="#an%c3%a1lisis-de-impacto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Mapea cambios de código a tests afectados, ejecutando solo los relevantes.&lt;/p&gt;</description></item><item><title>Testing Automotriz y ADAS</title><link>https://yrkan.com/es/course/module-11-domain-testing/automotive-adas-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/automotive-adas-testing/</guid><description>&lt;h2 id="testing-automotriz-y-adas"&gt;Testing Automotriz y ADAS &lt;a href="#testing-automotriz-y-adas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing automotriz y adas presenta desafíos únicos. Requiere conocimiento de seguridad funcional ISO 26262, arquitectura AUTOSAR, testing de fusión de sensores, comunicación V2X y validación de conducción autónoma.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing automotriz y adas application:&lt;/p&gt;</description></item><item><title>Testing Bancario y Financiero</title><link>https://yrkan.com/es/course/module-11-domain-testing/banking-finance-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/banking-finance-testing/</guid><description>&lt;h2 id="por-qué-el-software-bancario-exige-el-mayor-rigor-en-testing"&gt;Por qué el Software Bancario Exige el Mayor Rigor en Testing &lt;a href="#por-qu%c3%a9-el-software-bancario-exige-el-mayor-rigor-en-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La banca y las finanzas es uno de los dominios más exigentes para el testing de software. Un solo bug puede resultar en pérdidas financieras que afectan a miles de clientes, multas regulatorias de millones, o la pérdida total de la confianza del cliente. A diferencia de una app de redes sociales donde un bug causa una molestia menor, un bug bancario puede significar dinero real desapareciendo de cuentas reales.&lt;/p&gt;</description></item><item><title>Testing de Blockchain y Web3</title><link>https://yrkan.com/es/course/module-11-domain-testing/blockchain-web3-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/blockchain-web3-testing/</guid><description>&lt;h2 id="arquitectura-blockchain-para-qa"&gt;Arquitectura Blockchain para QA &lt;a href="#arquitectura-blockchain-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Blockchain es un libro mayor distribuido e inmutable. Los bugs son permanentes — una vez confirmada, una transacción no puede revertirse.&lt;/p&gt;
&lt;h3 id="componentes-centrales"&gt;Componentes Centrales &lt;a href="#componentes-centrales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Nodos:&lt;/strong&gt; Mantienen copias del blockchain y validan transacciones&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mecanismo de Consenso:&lt;/strong&gt; Proof of Work, Proof of Stake&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Contratos Inteligentes:&lt;/strong&gt; Programas auto-ejecutables (Solidity para Ethereum)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wallets:&lt;/strong&gt; Gestión de claves criptográficas y firma de transacciones&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;dApps:&lt;/strong&gt; Aplicaciones descentralizadas&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-de-contratos-inteligentes"&gt;Testing de Contratos Inteligentes &lt;a href="#testing-de-contratos-inteligentes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="vulnerabilidades-comunes"&gt;Vulnerabilidades Comunes &lt;a href="#vulnerabilidades-comunes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reentrancy:&lt;/strong&gt; Llamadas externas antes de actualizar estado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Overflow de enteros:&lt;/strong&gt; Errores aritméticos en cálculos de tokens&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Control de acceso:&lt;/strong&gt; Verificaciones de permisos faltantes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Front-running:&lt;/strong&gt; Reordenamiento de transacciones por mineros&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flash loan attacks:&lt;/strong&gt; Manipulación de mercados con préstamos instantáneos&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="herramientas"&gt;Herramientas &lt;a href="#herramientas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hardhat/Foundry:&lt;/strong&gt; Frameworks con testing integrado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Slither:&lt;/strong&gt; Análisis estático para Solidity&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Echidna:&lt;/strong&gt; Fuzzing para contratos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-de-frontend-dapp"&gt;Testing de Frontend dApp &lt;a href="#testing-de-frontend-dapp" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Conexión de wallet (MetaMask, WalletConnect)&lt;/li&gt;
&lt;li&gt;Firma de transacciones — verificar detalles mostrados&lt;/li&gt;
&lt;li&gt;Cambio de cadena entre redes&lt;/li&gt;
&lt;li&gt;Manejo de errores (gas insuficiente, rechazos)&lt;/li&gt;
&lt;li&gt;Actualización de UI tras confirmación de bloque&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[Acción Usuario] --&gt; B[Frontend dApp]
 B --&gt; C[Firma en Wallet]
 C --&gt; D[Red Blockchain]
 D --&gt; E[Ejecución Contrato]
 E --&gt; F[Cambio de Estado]
 F --&gt; G[Emisión de Evento]
 G --&gt; B
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="testing-avanzado"&gt;Testing Avanzado &lt;a href="#testing-avanzado" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testnet-vs-mainnet"&gt;Testnet vs. Mainnet &lt;a href="#testnet-vs-mainnet" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Siempre testear en testnets primero&lt;/li&gt;
&lt;li&gt;Fork mainnet para testing realista&lt;/li&gt;
&lt;li&gt;Testear precisión de estimación de gas&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="auditoría-de-seguridad"&gt;Auditoría de Seguridad &lt;a href="#auditor%c3%ada-de-seguridad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verificación formal de lógica crítica&lt;/li&gt;
&lt;li&gt;Testing de invariantes&lt;/li&gt;
&lt;li&gt;Simulación de ataques económicos&lt;/li&gt;
&lt;li&gt;Testing de mecanismos de upgrade (proxy patterns)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-práctico"&gt;Ejercicio Práctico &lt;a href="#ejercicio-pr%c3%a1ctico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Diseña un plan de testing para un token ERC-20:&lt;/p&gt;</description></item><item><title>Testing de Cadena de Suministro y Logística</title><link>https://yrkan.com/es/course/module-11-domain-testing/supply-chain-logistics-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/supply-chain-logistics-testing/</guid><description>&lt;h2 id="testing-de-cadena-de-suministro-y-logística"&gt;Testing de Cadena de Suministro y Logística &lt;a href="#testing-de-cadena-de-suministro-y-log%c3%adstica" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing de cadena de suministro y logística presenta desafíos únicos. Requiere conocimiento de WMS, TMS, optimización de rutas, escaneo de código de barras/RFID, tracking y pronóstico de demanda.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing de cadena de suministro y logística application:&lt;/p&gt;</description></item><item><title>Testing de CRM y Salesforce</title><link>https://yrkan.com/es/course/module-11-domain-testing/crm-salesforce-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/crm-salesforce-testing/</guid><description>&lt;h2 id="panorama-de-crm-y-salesforce"&gt;Panorama de CRM y Salesforce &lt;a href="#panorama-de-crm-y-salesforce" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los sistemas CRM gestionan el ciclo de vida completo del cliente — desde el primer contacto hasta la venta, soporte y renovación. Salesforce domina el mercado CRM con una plataforma que combina funcionalidad estándar con un potente motor de customización.&lt;/p&gt;
&lt;h3 id="arquitectura-de-salesforce"&gt;Arquitectura de Salesforce &lt;a href="#arquitectura-de-salesforce" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Salesforce Clouds:&lt;/strong&gt; Sales Cloud, Service Cloud, Marketing Cloud, Commerce Cloud&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Modelo de Datos:&lt;/strong&gt; Objetos estándar (Lead, Account, Contact, Opportunity, Case) más objetos custom&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Apex:&lt;/strong&gt; Lenguaje propietario de Salesforce (similar a Java) para lógica custom&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Lightning:&lt;/strong&gt; Framework UI moderno que reemplaza Visualforce&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flows:&lt;/strong&gt; Automatización no-code/low-code&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AppExchange:&lt;/strong&gt; Marketplace de aplicaciones y componentes de terceros&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="conceptos-centrales-crm"&gt;Conceptos Centrales CRM &lt;a href="#conceptos-centrales-crm" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[Captura de Lead] --&gt; B[Scoring]
 B --&gt; C[Reglas de Asignación]
 C --&gt; D[Calificación]
 D --&gt; E[Convertir a Account + Contact + Opportunity]
 E --&gt; F[Gestión de Pipeline]
 F --&gt; G[Ganada/Perdida]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="áreas-de-enfoque-del-testing-crm"&gt;Áreas de Enfoque del Testing CRM &lt;a href="#%c3%a1reas-de-enfoque-del-testing-crm" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testing-de-gestión-de-leads"&gt;Testing de Gestión de Leads &lt;a href="#testing-de-gesti%c3%b3n-de-leads" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Captura de leads:&lt;/strong&gt; Formularios web, integración de email, imports API, entrada manual&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scoring de leads:&lt;/strong&gt; Puntuación automática basada en engagement y demografía&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reglas de asignación:&lt;/strong&gt; Leads dirigidos al representante correcto por territorio&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Deduplicación:&lt;/strong&gt; Sistema detecta y fusiona leads duplicados&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conversión:&lt;/strong&gt; Lead se convierte en Account + Contact + Opportunity&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-pipeline-de-oportunidades"&gt;Testing de Pipeline de Oportunidades &lt;a href="#testing-de-pipeline-de-oportunidades" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Progresión de etapas: Prospección → Calificación → Propuesta → Negociación → Cerrada&lt;/li&gt;
&lt;li&gt;Cálculos de probabilidad y revenue esperado por etapa&lt;/li&gt;
&lt;li&gt;Campos requeridos por etapa&lt;/li&gt;
&lt;li&gt;Seguimiento de fecha de cierre y precisión del forecast&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="reportes-y-dashboards"&gt;Reportes y Dashboards &lt;a href="#reportes-y-dashboards" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Filtros de reporte retornan datos correctos&lt;/li&gt;
&lt;li&gt;Gráficos de dashboard representan datos subyacentes con precisión&lt;/li&gt;
&lt;li&gt;Reportes cross-objeto unen datos correctamente&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-específico-de-salesforce"&gt;Testing Específico de Salesforce &lt;a href="#testing-espec%c3%adfico-de-salesforce" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="reglas-de-validación"&gt;Reglas de Validación &lt;a href="#reglas-de-validaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Regla&lt;/th&gt;
 &lt;th&gt;Condición&lt;/th&gt;
 &lt;th&gt;Error Esperado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Teléfono requerido&lt;/td&gt;
 &lt;td&gt;Teléfono vacío cuando Status = &amp;ldquo;Contactado&amp;rdquo;&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Número de teléfono requerido para leads contactados&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Formato email&lt;/td&gt;
 &lt;td&gt;Email no coincide con patrón regex&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Ingrese un email válido&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Fecha cierre futura&lt;/td&gt;
 &lt;td&gt;Fecha de cierre en el pasado para oportunidades abiertas&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Fecha de cierre debe ser futura&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Cross-field&lt;/td&gt;
 &lt;td&gt;Descuento &amp;gt; 30% y Approval Status != &amp;ldquo;Aprobado&amp;rdquo;&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Descuentos mayores a 30% requieren aprobación&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="testing-de-triggers-apex"&gt;Testing de Triggers Apex &lt;a href="#testing-de-triggers-apex" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Before triggers: validar o modificar datos antes de guardar&lt;/li&gt;
&lt;li&gt;After triggers: acciones después de guardar (crear registros relacionados)&lt;/li&gt;
&lt;li&gt;Operaciones bulk: triggers deben manejar 200+ registros (governor limits)&lt;/li&gt;
&lt;li&gt;Prevención de recursión&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-avanzado-de-salesforce"&gt;Testing Avanzado de Salesforce &lt;a href="#testing-avanzado-de-salesforce" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="salesforce-dx-y-cicd"&gt;Salesforce DX y CI/CD &lt;a href="#salesforce-dx-y-cicd" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Testear deployment de metadata desde control de versiones&lt;/li&gt;
&lt;li&gt;Verificar creación de scratch orgs e instalación de paquetes&lt;/li&gt;
&lt;li&gt;Automatizar ejecución de tests Apex en pipeline CI&lt;/li&gt;
&lt;li&gt;Testear cobertura de código cumple requisito mínimo del 75%&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-cpq"&gt;Testing de CPQ &lt;a href="#testing-de-cpq" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Reglas de configuración de productos&lt;/li&gt;
&lt;li&gt;Cálculos de precios (descuentos por volumen, multi-moneda)&lt;/li&gt;
&lt;li&gt;Generación de cotizaciones (PDF, flujos de aprobación)&lt;/li&gt;
&lt;li&gt;Precios de suscripción (mensual/anual, prorrateo, renovación)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-integración"&gt;Testing de Integración &lt;a href="#testing-de-integraci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Integraciones REST/SOAP API con sistemas externos&lt;/li&gt;
&lt;li&gt;Mensajes outbound y platform events&lt;/li&gt;
&lt;li&gt;Sincronización de datos con ERP y sistemas de marketing&lt;/li&gt;
&lt;li&gt;Integración SSO/SAML para autenticación&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-práctico"&gt;Ejercicio Práctico &lt;a href="#ejercicio-pr%c3%a1ctico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Diseña casos de prueba para un flujo lead-to-cash:&lt;/p&gt;</description></item><item><title>Testing de Crypto y DeFi</title><link>https://yrkan.com/es/course/module-11-domain-testing/crypto-defi-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/crypto-defi-testing/</guid><description>&lt;h2 id="testing-de-crypto-y-defi"&gt;Testing de Crypto y DeFi &lt;a href="#testing-de-crypto-y-defi" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing de crypto y defi presenta desafíos únicos. Requiere conocimiento de exchanges descentralizados, protocolos de préstamo, yield farming, pools de liquidez, tokenomics y seguridad de wallets.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing de crypto y defi application:&lt;/p&gt;</description></item><item><title>Testing de Data Warehouse y BI</title><link>https://yrkan.com/es/course/module-11-domain-testing/data-warehouse-bi-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/data-warehouse-bi-testing/</guid><description>&lt;h2 id="testing-de-data-warehouse-y-bi"&gt;Testing de Data Warehouse y BI &lt;a href="#testing-de-data-warehouse-y-bi" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing de data warehouse y bi presenta desafíos únicos. Requiere conocimiento de testing de pipelines ETL, validación de calidad, verificación de modelos dimensionales, precisión de reportes y dashboards.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing de data warehouse y bi application:&lt;/p&gt;</description></item><item><title>Testing de E-Commerce</title><link>https://yrkan.com/es/course/module-11-domain-testing/ecommerce-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/ecommerce-testing/</guid><description>&lt;h2 id="arquitectura-de-e-commerce"&gt;Arquitectura de E-Commerce &lt;a href="#arquitectura-de-e-commerce" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las plataformas de e-commerce son de las aplicaciones web más complejas, combinando gestión de catálogo, inventario en tiempo real, procesamiento de pagos y logística en una experiencia fluida. Cada bug en el flujo de compra se traduce directamente en ingresos perdidos.&lt;/p&gt;
&lt;h3 id="componentes-centrales"&gt;Componentes Centrales &lt;a href="#componentes-centrales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Catálogo de Productos:&lt;/strong&gt; Datos de productos, categorías, atributos, imágenes, precios y variantes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Motor de Búsqueda:&lt;/strong&gt; Búsqueda con ranking de relevancia, filtros, navegación facetada y autocompletado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Carrito de Compras:&lt;/strong&gt; Almacenamiento temporal de artículos seleccionados con cálculos de precio y descuento&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Checkout:&lt;/strong&gt; Proceso multi-paso: dirección, método de envío, pago, confirmación&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Procesamiento de Pagos:&lt;/strong&gt; Integración con pasarelas (Stripe, PayPal, Adyen)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gestión de Pedidos:&lt;/strong&gt; Ciclo de vida desde colocación hasta fulfillment, envío y devoluciones&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gestión de Inventario:&lt;/strong&gt; Niveles de stock, asignación de almacén, manejo de backorder&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="escenarios-críticos-de-testing"&gt;Escenarios Críticos de Testing &lt;a href="#escenarios-cr%c3%adticos-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="operaciones-de-carrito"&gt;Operaciones de Carrito &lt;a href="#operaciones-de-carrito" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Escenario&lt;/th&gt;
 &lt;th&gt;Comportamiento Esperado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Agregar artículo&lt;/td&gt;
 &lt;td&gt;Carrito actualiza contador, muestra artículo, calcula subtotal&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Actualizar cantidad&lt;/td&gt;
 &lt;td&gt;Precio recalcula, verificación de inventario valida disponibilidad&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Eliminar artículo&lt;/td&gt;
 &lt;td&gt;Artículo removido, totales recalculan, estado vacío manejado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Fusión al login&lt;/td&gt;
 &lt;td&gt;Carrito invitado se fusiona con carrito guardado, conflictos resueltos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Expiración de carrito&lt;/td&gt;
 &lt;td&gt;Artículos liberados al inventario después de timeout&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Cambio de precio&lt;/td&gt;
 &lt;td&gt;Cliente notificado si el precio cambió desde que agregó al carrito&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="flujo-de-checkout"&gt;Flujo de Checkout &lt;a href="#flujo-de-checkout" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[Navegar] --&gt; B[Buscar]
 B --&gt; C[Página Producto]
 C --&gt; D[Agregar al Carrito]
 D --&gt; E[Revisar Carrito]
 E --&gt; F[Checkout]
 F --&gt; G[Pago]
 G --&gt; H[Confirmación]
 H --&gt; I[Fulfillment]
 I --&gt; J[Entrega]
 J --&gt; K[Devoluciones]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;p&gt;Testear el flujo completo para:&lt;/p&gt;</description></item><item><title>Testing de EdTech</title><link>https://yrkan.com/es/course/module-11-domain-testing/edtech-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/edtech-testing/</guid><description>&lt;h2 id="testing-de-edtech"&gt;Testing de EdTech &lt;a href="#testing-de-edtech" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing de edtech presenta desafíos únicos. Requiere conocimiento de plataformas LMS, cumplimiento SCORM/xAPI, motores de evaluación, proctoring y aprendizaje adaptativo.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing de edtech application:&lt;/p&gt;</description></item><item><title>Testing de ERP y SAP</title><link>https://yrkan.com/es/course/module-11-domain-testing/erp-sap-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/erp-sap-testing/</guid><description>&lt;h2 id="panorama-de-erp-y-sap"&gt;Panorama de ERP y SAP &lt;a href="#panorama-de-erp-y-sap" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los sistemas ERP (Enterprise Resource Planning) son la columna vertebral de las grandes organizaciones, integrando todos los procesos de negocio centrales en una sola plataforma. SAP es el vendor ERP dominante, ejecutando operaciones críticas para más de 400,000 clientes mundialmente.&lt;/p&gt;
&lt;h3 id="estructura-de-módulos-sap"&gt;Estructura de Módulos SAP &lt;a href="#estructura-de-m%c3%b3dulos-sap" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Módulo&lt;/th&gt;
 &lt;th&gt;Nombre Completo&lt;/th&gt;
 &lt;th&gt;Área de Negocio&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;FI&lt;/td&gt;
 &lt;td&gt;Financial Accounting&lt;/td&gt;
 &lt;td&gt;Libro mayor, cuentas por pagar/cobrar, contabilidad de activos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;CO&lt;/td&gt;
 &lt;td&gt;Controlling&lt;/td&gt;
 &lt;td&gt;Centros de costo, centros de beneficio, órdenes internas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;MM&lt;/td&gt;
 &lt;td&gt;Materials Management&lt;/td&gt;
 &lt;td&gt;Compras, inventario, gestión de almacén&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;SD&lt;/td&gt;
 &lt;td&gt;Sales &amp;amp; Distribution&lt;/td&gt;
 &lt;td&gt;Órdenes de venta, entrega, facturación, precios&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;PP&lt;/td&gt;
 &lt;td&gt;Production Planning&lt;/td&gt;
 &lt;td&gt;Lista de materiales, MRP, órdenes de producción&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;HR/HCM&lt;/td&gt;
 &lt;td&gt;Human Capital Management&lt;/td&gt;
 &lt;td&gt;Nómina, administración de personal, gestión de tiempo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="integración-cross-módulo"&gt;Integración Cross-Módulo &lt;a href="#integraci%c3%b3n-cross-m%c3%b3dulo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[SD: Orden de Venta] --&gt; B[MM: Verificación de Inventario]
 B --&gt; C[PP: Orden de Producción]
 C --&gt; D[MM: Entrada de Mercancías]
 A --&gt; E[SD: Entrega]
 E --&gt; F[SD: Facturación]
 F --&gt; G[FI: Factura]
 G --&gt; H[CO: Centro de Costo]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;p&gt;Una sola orden de venta dispara acciones en SD, MM, PP, FI y CO — el testing debe verificar toda la cadena.&lt;/p&gt;</description></item><item><title>Testing de IA y Machine Learning</title><link>https://yrkan.com/es/course/module-11-domain-testing/ai-ml-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/ai-ml-testing/</guid><description>&lt;h2 id="panorama-del-pipeline-ml"&gt;Panorama del Pipeline ML &lt;a href="#panorama-del-pipeline-ml" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los sistemas ML son fundamentalmente diferentes del software tradicional. En lugar de reglas programadas explícitas, los modelos ML aprenden patrones de datos, creando desafíos de testing únicos.&lt;/p&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[Recolección de Datos] --&gt; B[Procesamiento]
 B --&gt; C[Ingeniería de Features]
 C --&gt; D[Entrenamiento]
 D --&gt; E[Evaluación]
 E --&gt; F[Deployment]
 F --&gt; G[Monitoreo]
 G --&gt;|Data Drift| A
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="testing-de-calidad-de-datos"&gt;Testing de Calidad de Datos &lt;a href="#testing-de-calidad-de-datos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Test&lt;/th&gt;
 &lt;th&gt;Qué Verificar&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Completitud&lt;/td&gt;
 &lt;td&gt;Valores faltantes, tasas de nulos por feature&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Consistencia&lt;/td&gt;
 &lt;td&gt;Misma entidad tiene misma representación&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Frescura&lt;/td&gt;
 &lt;td&gt;Datos suficientemente recientes&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Distribución&lt;/td&gt;
 &lt;td&gt;Distribuciones coinciden con rangos esperados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Duplicados&lt;/td&gt;
 &lt;td&gt;Sin registros duplicados no intencionales&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Etiquetas&lt;/td&gt;
 &lt;td&gt;Labels de entrenamiento precisos y consistentes&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="testing-de-ingeniería-de-features"&gt;Testing de Ingeniería de Features &lt;a href="#testing-de-ingenier%c3%ada-de-features" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Valores dentro de rangos esperados&lt;/li&gt;
&lt;li&gt;Computación determinista&lt;/li&gt;
&lt;li&gt;Sin data leakage&lt;/li&gt;
&lt;li&gt;Feature importance alineado con conocimiento del dominio&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="evaluación-del-modelo"&gt;Evaluación del Modelo &lt;a href="#evaluaci%c3%b3n-del-modelo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="métricas-estándar"&gt;Métricas Estándar &lt;a href="#m%c3%a9tricas-est%c3%a1ndar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Métrica&lt;/th&gt;
 &lt;th&gt;Caso de Uso&lt;/th&gt;
 &lt;th&gt;Fórmula&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Accuracy&lt;/td&gt;
 &lt;td&gt;Clases balanceadas&lt;/td&gt;
 &lt;td&gt;(TP + TN) / Total&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Precision&lt;/td&gt;
 &lt;td&gt;Falsos positivos costosos&lt;/td&gt;
 &lt;td&gt;TP / (TP + FP)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Recall&lt;/td&gt;
 &lt;td&gt;Falsos negativos costosos&lt;/td&gt;
 &lt;td&gt;TP / (TP + FN)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;F1 Score&lt;/td&gt;
 &lt;td&gt;Balance precision-recall&lt;/td&gt;
 &lt;td&gt;2 * P * R / (P + R)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="más-allá-del-accuracy"&gt;Más Allá del Accuracy &lt;a href="#m%c3%a1s-all%c3%a1-del-accuracy" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Evaluación por segmentos:&lt;/strong&gt; Rendimiento por subgrupos de datos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Edge cases:&lt;/strong&gt; Inputs adversariales, datos fuera de distribución&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing de regresión:&lt;/strong&gt; Nueva versión no peor que la anterior&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Robustez:&lt;/strong&gt; Pequeñas perturbaciones no deben cambiar outputs drásticamente&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-de-sesgo-y-equidad"&gt;Testing de Sesgo y Equidad &lt;a href="#testing-de-sesgo-y-equidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Paridad demográfica:&lt;/strong&gt; Tasas de predicción positiva similares entre grupos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Igualdad de oportunidad:&lt;/strong&gt; Tasas de verdaderos positivos similares&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Calibración:&lt;/strong&gt; Probabilidades predichas precisas para todos los grupos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Impacto dispar:&lt;/strong&gt; Tasas de decisión adversa no desproporcionadas&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-avanzado-de-ml"&gt;Testing Avanzado de ML &lt;a href="#testing-avanzado-de-ml" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="monitoreo-de-data-drift"&gt;Monitoreo de Data Drift &lt;a href="#monitoreo-de-data-drift" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Feature drift:&lt;/strong&gt; Distribuciones de features cambian&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Concept drift:&lt;/strong&gt; La relación features-target cambia&lt;/li&gt;
&lt;li&gt;Tests estadísticos (Kolmogorov-Smirnov, PSI)&lt;/li&gt;
&lt;li&gt;Alertas automatizadas y pipelines de reentrenamiento&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-serving"&gt;Testing de Serving &lt;a href="#testing-de-serving" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Latencia de inferencia (P50, P95, P99) bajo carga&lt;/li&gt;
&lt;li&gt;Throughput (predicciones por segundo)&lt;/li&gt;
&lt;li&gt;Versionamiento y rollout gradual&lt;/li&gt;
&lt;li&gt;A/B testing entre versiones&lt;/li&gt;
&lt;li&gt;Fallback a modelo anterior&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="seguridad-ml"&gt;Seguridad ML &lt;a href="#seguridad-ml" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Ataques adversariales&lt;/li&gt;
&lt;li&gt;Extracción de modelo&lt;/li&gt;
&lt;li&gt;Envenenamiento de datos&lt;/li&gt;
&lt;li&gt;Privacidad y membership inference&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-práctico"&gt;Ejercicio Práctico &lt;a href="#ejercicio-pr%c3%a1ctico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Diseña un plan de testing para un modelo ML de scoring crediticio:&lt;/p&gt;</description></item><item><title>Testing de IoT</title><link>https://yrkan.com/es/course/module-11-domain-testing/iot-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/iot-testing/</guid><description>&lt;h2 id="arquitectura-iot"&gt;Arquitectura IoT &lt;a href="#arquitectura-iot" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Internet de las Cosas conecta dispositivos físicos al mundo digital. El testing IoT abarca todo el stack — desde firmware embebido hasta plataformas cloud.&lt;/p&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TB
 A[Sensores/Actuadores] --&gt; B[Firmware del Dispositivo]
 B --&gt; C[Protocolo de Comunicación]
 C --&gt; D[Gateway/Edge]
 D --&gt; E[Plataforma Cloud]
 E --&gt; F[Aplicaciones/Dashboards]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h3 id="protocolos-de-comunicación"&gt;Protocolos de Comunicación &lt;a href="#protocolos-de-comunicaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Protocolo&lt;/th&gt;
 &lt;th&gt;Alcance&lt;/th&gt;
 &lt;th&gt;Energía&lt;/th&gt;
 &lt;th&gt;Caso de Uso&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Bluetooth LE&lt;/td&gt;
 &lt;td&gt;10-100m&lt;/td&gt;
 &lt;td&gt;Muy Baja&lt;/td&gt;
 &lt;td&gt;Wearables, beacons&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;WiFi&lt;/td&gt;
 &lt;td&gt;50-100m&lt;/td&gt;
 &lt;td&gt;Media&lt;/td&gt;
 &lt;td&gt;Hogar inteligente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Zigbee/Z-Wave&lt;/td&gt;
 &lt;td&gt;10-100m&lt;/td&gt;
 &lt;td&gt;Baja&lt;/td&gt;
 &lt;td&gt;Automatización del hogar&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;LoRaWAN&lt;/td&gt;
 &lt;td&gt;2-15km&lt;/td&gt;
 &lt;td&gt;Muy Baja&lt;/td&gt;
 &lt;td&gt;Agricultura, utilities&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;MQTT&lt;/td&gt;
 &lt;td&gt;Sobre TCP/IP&lt;/td&gt;
 &lt;td&gt;Variable&lt;/td&gt;
 &lt;td&gt;Mensajería cloud&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="áreas-de-enfoque"&gt;Áreas de Enfoque &lt;a href="#%c3%a1reas-de-enfoque" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testing-de-conectividad"&gt;Testing de Conectividad &lt;a href="#testing-de-conectividad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Establecimiento y cierre de conexión&lt;/li&gt;
&lt;li&gt;Comportamiento sin red (modo offline, buffering de datos)&lt;/li&gt;
&lt;li&gt;Reconexión tras restauración de red&lt;/li&gt;
&lt;li&gt;Fallback de protocolo (WiFi → cellular → store-and-forward)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-energía-y-batería"&gt;Testing de Energía y Batería &lt;a href="#testing-de-energ%c3%ada-y-bater%c3%ada" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Consumo en modos activo, idle y deep sleep&lt;/li&gt;
&lt;li&gt;Precisión de triggers de wake-up&lt;/li&gt;
&lt;li&gt;Precisión de reporte de nivel de batería&lt;/li&gt;
&lt;li&gt;Comportamiento con batería baja&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-firmware"&gt;Testing de Firmware &lt;a href="#testing-de-firmware" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Testing con restricciones de memoria&lt;/li&gt;
&lt;li&gt;Requisitos de respuesta en tiempo real&lt;/li&gt;
&lt;li&gt;Comportamiento del watchdog timer&lt;/li&gt;
&lt;li&gt;Secuencia de arranque e inicialización&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-actualizaciones-ota"&gt;Testing de Actualizaciones OTA &lt;a href="#testing-de-actualizaciones-ota" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Actualización completa y delta/patch&lt;/li&gt;
&lt;li&gt;Pérdida de energía durante actualización (debe reanudar o rollback)&lt;/li&gt;
&lt;li&gt;Compatibilidad de versiones&lt;/li&gt;
&lt;li&gt;Capacidad de rollback&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="seguridad-iot"&gt;Seguridad IoT &lt;a href="#seguridad-iot" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Escaneo de credenciales por defecto&lt;/li&gt;
&lt;li&gt;Encriptación de comunicación (TLS para MQTT)&lt;/li&gt;
&lt;li&gt;Autenticación y autorización de dispositivos&lt;/li&gt;
&lt;li&gt;Seguridad física (detección de manipulación)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-avanzado-de-iot"&gt;Testing Avanzado de IoT &lt;a href="#testing-avanzado-de-iot" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testing-de-edge-computing"&gt;Testing de Edge Computing &lt;a href="#testing-de-edge-computing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Precisión de inferencia local vs. cloud&lt;/li&gt;
&lt;li&gt;Sincronización edge-to-cloud al restaurarse conectividad&lt;/li&gt;
&lt;li&gt;Gestión de recursos del dispositivo edge&lt;/li&gt;
&lt;li&gt;Failover entre procesamiento edge y cloud&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-gestión-de-flota"&gt;Testing de Gestión de Flota &lt;a href="#testing-de-gesti%c3%b3n-de-flota" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Provisioning y onboarding a escala&lt;/li&gt;
&lt;li&gt;Despliegue de firmware a flota (staged deployment)&lt;/li&gt;
&lt;li&gt;Monitoreo de salud de dispositivos&lt;/li&gt;
&lt;li&gt;Diagnóstico remoto y troubleshooting&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-interoperabilidad"&gt;Testing de Interoperabilidad &lt;a href="#testing-de-interoperabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Cumplimiento de protocolo Matter/Thread&lt;/li&gt;
&lt;li&gt;Comunicación cross-vendor&lt;/li&gt;
&lt;li&gt;Compatibilidad de hub/gateway&lt;/li&gt;
&lt;li&gt;Integración con asistentes de voz&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-práctico"&gt;Ejercicio Práctico &lt;a href="#ejercicio-pr%c3%a1ctico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Diseña un plan de testing para un termostato inteligente:&lt;/p&gt;</description></item><item><title>Testing de LLM e IA Generativa</title><link>https://yrkan.com/es/course/module-11-domain-testing/llm-genai-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/llm-genai-testing/</guid><description>&lt;h2 id="el-desafío-del-testing-llm"&gt;El Desafío del Testing LLM &lt;a href="#el-desaf%c3%ado-del-testing-llm" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los LLMs representan un cambio de paradigma en testing. A diferencia del software con outputs determinísticos, los LLMs producen texto variable que debe evaluarse por calidad, no por corrección exacta.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Software Tradicional&lt;/th&gt;
 &lt;th&gt;Aplicaciones LLM&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Output determinístico&lt;/td&gt;
 &lt;td&gt;Output no-determinístico&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Assert igualdad exacta&lt;/td&gt;
 &lt;td&gt;Evaluar calidad semántica&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Pass/fail binario&lt;/td&gt;
 &lt;td&gt;Espectro de calidad&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Comportamiento fijo&lt;/td&gt;
 &lt;td&gt;Cambia con contexto&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="áreas-core-de-testing-llm"&gt;Áreas Core de Testing LLM &lt;a href="#%c3%a1reas-core-de-testing-llm" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="detección-de-alucinación"&gt;Detección de Alucinación &lt;a href="#detecci%c3%b3n-de-alucinaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Alucinación factual:&lt;/strong&gt; Generar hechos falsos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Citas fabricadas:&lt;/strong&gt; Inventar referencias inexistentes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Inconsistencia:&lt;/strong&gt; Contradecirse en una misma respuesta&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alucinación de contexto:&lt;/strong&gt; Agregar información no presente en el contexto (crítico para RAG)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-inyección-de-prompts"&gt;Testing de Inyección de Prompts &lt;a href="#testing-de-inyecci%c3%b3n-de-prompts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Inyección directa:&lt;/strong&gt; Usuario intenta anular instrucciones del sistema&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Inyección indirecta:&lt;/strong&gt; Contenido malicioso en documentos recuperados&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Jailbreaking:&lt;/strong&gt; Intentos de evadir filtros de seguridad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Exfiltración de datos:&lt;/strong&gt; Intentar extraer prompts del sistema o datos de usuarios&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-seguridad-de-contenido"&gt;Testing de Seguridad de Contenido &lt;a href="#testing-de-seguridad-de-contenido" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Discurso de odio y discriminación&lt;/li&gt;
&lt;li&gt;Instrucciones de violencia&lt;/li&gt;
&lt;li&gt;Exposición de PII&lt;/li&gt;
&lt;li&gt;Desinformación en temas críticos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="frameworks-de-evaluación"&gt;Frameworks de Evaluación &lt;a href="#frameworks-de-evaluaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Métrica&lt;/th&gt;
 &lt;th&gt;Qué Mide&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Relevancia&lt;/td&gt;
 &lt;td&gt;¿La respuesta aborda la pregunta?&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Coherencia&lt;/td&gt;
 &lt;td&gt;¿La respuesta es lógica y bien estructurada?&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Fidelidad&lt;/td&gt;
 &lt;td&gt;¿Refleja los documentos fuente? (RAG)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Fluidez&lt;/td&gt;
 &lt;td&gt;¿Es gramaticalmente correcta y natural?&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[Prompt de Test] --&gt; B[LLM Objetivo]
 B --&gt; C[Respuesta]
 C --&gt; D[LLM Juez]
 D --&gt; E[Score + Razonamiento]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="testing-avanzado-de-llm"&gt;Testing Avanzado de LLM &lt;a href="#testing-avanzado-de-llm" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testing-de-pipeline-rag"&gt;Testing de Pipeline RAG &lt;a href="#testing-de-pipeline-rag" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Testing de retrieval:&lt;/strong&gt; ¿La búsqueda retorna documentos relevantes?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing de chunking:&lt;/strong&gt; ¿Los documentos se dividen en límites semánticos?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing de context window:&lt;/strong&gt; ¿Qué pasa cuando el contexto excede el límite de tokens?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing de fidelidad:&lt;/strong&gt; ¿La respuesta es fiel a los documentos recuperados?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing de atribución:&lt;/strong&gt; ¿Las fuentes se citan correctamente?&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="testing-de-guardrails"&gt;Testing de Guardrails &lt;a href="#testing-de-guardrails" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validación de input: detectar y bloquear prompts maliciosos&lt;/li&gt;
&lt;li&gt;Validación de output: filtrar respuestas dañinas&lt;/li&gt;
&lt;li&gt;Límites de tema: LLM permanece en su dominio designado&lt;/li&gt;
&lt;li&gt;Detección de PII en inputs y outputs&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-conversación-multi-turn"&gt;Testing de Conversación Multi-Turn &lt;a href="#testing-de-conversaci%c3%b3n-multi-turn" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Retención de contexto entre turnos&lt;/li&gt;
&lt;li&gt;Overflow de context window&lt;/li&gt;
&lt;li&gt;Cambio de tema elegante&lt;/li&gt;
&lt;li&gt;Coherencia en 10+ turnos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-práctico"&gt;Ejercicio Práctico &lt;a href="#ejercicio-pr%c3%a1ctico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Diseña un plan de testing para un chatbot de soporte al cliente con LLM:&lt;/p&gt;</description></item><item><title>Testing de Marketplaces</title><link>https://yrkan.com/es/course/module-11-domain-testing/marketplace-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/marketplace-testing/</guid><description>&lt;h2 id="testing-de-marketplaces"&gt;Testing de Marketplaces &lt;a href="#testing-de-marketplaces" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing de marketplaces presenta desafíos únicos. Requiere conocimiento de plataformas bilaterales, onboarding de vendedores, protección al comprador, reseñas, disputas y comisiones.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing de marketplaces application:&lt;/p&gt;</description></item><item><title>Testing de Plataformas de Redes Sociales</title><link>https://yrkan.com/es/course/module-11-domain-testing/social-media-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/social-media-testing/</guid><description>&lt;h2 id="testing-de-plataformas-de-redes-sociales"&gt;Testing de Plataformas de Redes Sociales &lt;a href="#testing-de-plataformas-de-redes-sociales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing de plataformas de redes sociales presenta desafíos únicos. Requiere conocimiento de algoritmos de feed, moderación de contenido, mensajería en tiempo real, notificaciones y controles de privacidad.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing de plataformas de redes sociales application:&lt;/p&gt;</description></item><item><title>Testing de Sistemas Embebidos</title><link>https://yrkan.com/es/course/module-11-domain-testing/embedded-systems-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/embedded-systems-testing/</guid><description>&lt;h2 id="panorama-de-sistemas-embebidos"&gt;Panorama de Sistemas Embebidos &lt;a href="#panorama-de-sistemas-embebidos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los sistemas embebidos son computadoras especializadas diseñadas para funciones dedicadas. Alimentan desde electrodomésticos hasta dispositivos médicos y sistemas automotrices. El código embebido corre en hardware con recursos limitados, requisitos de tiempo real e interacción directa con hardware.&lt;/p&gt;
&lt;h3 id="componentes-de-arquitectura"&gt;Componentes de Arquitectura &lt;a href="#componentes-de-arquitectura" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Microcontrolador (MCU):&lt;/strong&gt; CPU + memoria + periféricos en un chip (ARM Cortex-M, ESP32, STM32)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RTOS:&lt;/strong&gt; FreeRTOS, Zephyr, VxWorks — scheduling determinista de tareas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;HAL (Hardware Abstraction Layer):&lt;/strong&gt; Interfaz entre firmware y periféricos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Drivers de Periféricos:&lt;/strong&gt; GPIO, UART, SPI, I2C, ADC, PWM&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Boot Loader:&lt;/strong&gt; Código inicial que carga firmware y gestiona actualizaciones&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="estrategias-de-testing-embebido"&gt;Estrategias de Testing Embebido &lt;a href="#estrategias-de-testing-embebido" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="unit-testing-en-target"&gt;Unit Testing en Target &lt;a href="#unit-testing-en-target" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los unit tests embebidos deben correr en el hardware real:&lt;/p&gt;</description></item><item><title>Testing de Streaming y Medios</title><link>https://yrkan.com/es/course/module-11-domain-testing/streaming-media-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/streaming-media-testing/</guid><description>&lt;h2 id="arquitectura-de-streaming"&gt;Arquitectura de Streaming &lt;a href="#arquitectura-de-streaming" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las plataformas de streaming entregan contenido a través de un pipeline que transforma video fuente en múltiples niveles de calidad, lo protege con DRM, lo distribuye via CDNs y adapta la calidad en tiempo real.&lt;/p&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[Video Fuente] --&gt; B[Transcodificación]
 B --&gt; C[Empaquetado HLS/DASH]
 C --&gt; D[Encriptación DRM]
 D --&gt; E[Servidores Edge CDN]
 E --&gt; F[Algoritmo ABR del Player]
 F --&gt; G[Pantalla]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h3 id="componentes-clave"&gt;Componentes Clave &lt;a href="#componentes-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Transcodificación:&lt;/strong&gt; Convertir video fuente en múltiples combinaciones de bitrate/resolución&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Empaquetado:&lt;/strong&gt; Segmentar video en chunks pequeños (2-10 segundos) en formato HLS o DASH&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DRM:&lt;/strong&gt; Encriptar contenido con Widevine, FairPlay o PlayReady&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CDN:&lt;/strong&gt; Distribuir contenido a servidores edge cerca de los espectadores&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ABR:&lt;/strong&gt; Algoritmo del player que selecciona calidad según ancho de banda disponible&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-de-calidad"&gt;Testing de Calidad &lt;a href="#testing-de-calidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="métricas-de-calidad-de-video"&gt;Métricas de Calidad de Video &lt;a href="#m%c3%a9tricas-de-calidad-de-video" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Métrica&lt;/th&gt;
 &lt;th&gt;Qué Mide&lt;/th&gt;
 &lt;th&gt;Rango Aceptable&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;VMAF&lt;/td&gt;
 &lt;td&gt;Calidad perceptual (0-100)&lt;/td&gt;
 &lt;td&gt;&amp;gt; 80 para streaming&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tiempo de Inicio&lt;/td&gt;
 &lt;td&gt;Tiempo desde click en play hasta primer frame&lt;/td&gt;
 &lt;td&gt;&amp;lt; 2 segundos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ratio de Rebuffering&lt;/td&gt;
 &lt;td&gt;Tiempo en buffering vs. reproduciendo&lt;/td&gt;
 &lt;td&gt;&amp;lt; 0.5%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="testing-de-abr"&gt;Testing de ABR &lt;a href="#testing-de-abr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Disminución de ancho de banda:&lt;/strong&gt; Bajar calidad sin buffering&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Aumento de ancho de banda:&lt;/strong&gt; Subir calidad en segundos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fluctuación:&lt;/strong&gt; Evitar oscilaciones rápidas entre calidades&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Selección inicial:&lt;/strong&gt; Comenzar con calidad apropiada&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-audio"&gt;Testing de Audio &lt;a href="#testing-de-audio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Sincronización audio-video (lip sync) dentro de 40ms&lt;/li&gt;
&lt;li&gt;Cambio de pista de idioma sin interrupción&lt;/li&gt;
&lt;li&gt;Audio 5.1/Atmos en dispositivos compatibles&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="contenido-y-cumplimiento"&gt;Contenido y Cumplimiento &lt;a href="#contenido-y-cumplimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testing-de-drm"&gt;Testing de DRM &lt;a href="#testing-de-drm" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Niveles Widevine L1/L3 afectan resolución máxima&lt;/li&gt;
&lt;li&gt;FairPlay requiere dispositivos Apple o Safari&lt;/li&gt;
&lt;li&gt;Descarga offline con expiración de licencia DRM&lt;/li&gt;
&lt;li&gt;Enforcement de HDCP para pantallas externas&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="licenciamiento-de-contenido"&gt;Licenciamiento de Contenido &lt;a href="#licenciamiento-de-contenido" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Geo-restricciones: contenido solo en territorios licenciados&lt;/li&gt;
&lt;li&gt;Ventanas: contenido disponible solo durante períodos licenciados&lt;/li&gt;
&lt;li&gt;Límites de streams concurrentes por cuenta&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-avanzado-de-streaming"&gt;Testing Avanzado de Streaming &lt;a href="#testing-avanzado-de-streaming" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="streaming-en-vivo-de-baja-latencia"&gt;Streaming en Vivo de Baja Latencia &lt;a href="#streaming-en-vivo-de-baja-latencia" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Medición de latencia glass-to-glass&lt;/li&gt;
&lt;li&gt;Objetivo: menos de 5 segundos para streams interactivos&lt;/li&gt;
&lt;li&gt;Funcionalidad DVR (rebobinar durante stream en vivo)&lt;/li&gt;
&lt;li&gt;Failover entre servidores de ingesta redundantes&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="inserción-de-anuncios-server-side-ssai"&gt;Inserción de Anuncios Server-Side (SSAI) &lt;a href="#inserci%c3%b3n-de-anuncios-server-side-ssai" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calidad del stitching (sin glitch visual en transiciones)&lt;/li&gt;
&lt;li&gt;Precisión de beacons de tracking&lt;/li&gt;
&lt;li&gt;Selección correcta de anuncios por perfil&lt;/li&gt;
&lt;li&gt;Funcionalidad de skip/countdown&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="failover-multi-cdn"&gt;Failover Multi-CDN &lt;a href="#failover-multi-cdn" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Failover automático cuando el CDN primario tiene problemas&lt;/li&gt;
&lt;li&gt;Sin interrupción visible para el espectador&lt;/li&gt;
&lt;li&gt;Mantenimiento de calidad durante cambio de CDN&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-práctico"&gt;Ejercicio Práctico &lt;a href="#ejercicio-pr%c3%a1ctico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testea un reproductor de streaming:&lt;/p&gt;</description></item><item><title>Testing de Videojuegos</title><link>https://yrkan.com/es/course/module-11-domain-testing/gaming-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/gaming-testing/</guid><description>&lt;h2 id="panorama-del-qa-de-videojuegos"&gt;Panorama del QA de Videojuegos &lt;a href="#panorama-del-qa-de-videojuegos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de videojuegos es fundamentalmente diferente del QA de software tradicional. Los juegos son sistemas interactivos en tiempo real donde la calidad subjetiva (¿es divertido?) es tan importante como la corrección objetiva (¿funciona?).&lt;/p&gt;
&lt;h3 id="ciclo-de-vida-del-desarrollo-de-juegos"&gt;Ciclo de Vida del Desarrollo de Juegos &lt;a href="#ciclo-de-vida-del-desarrollo-de-juegos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 A[Pre-Alpha] --&gt; B[Alpha]
 B --&gt; C[Beta]
 C --&gt; D[Release Candidate]
 D --&gt; E[Gold Master]
 E --&gt; F[Post-Lanzamiento]

 A -.-&gt;|Mecánicas core| A
 B -.-&gt;|Features completas, muchos bugs| B
 C -.-&gt;|Pulido, rendimiento| C
 D -.-&gt;|Solo fixes críticos| D
 F -.-&gt;|Parches, DLC, temporadas| F
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h3 id="categorías-de-testing"&gt;Categorías de Testing &lt;a href="#categor%c3%adas-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Categoría&lt;/th&gt;
 &lt;th&gt;Áreas de Enfoque&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Funcionalidad&lt;/td&gt;
 &lt;td&gt;Mecánicas, UI, progresión, misiones, IA&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Rendimiento&lt;/td&gt;
 &lt;td&gt;Frame rate, tiempos de carga, uso de memoria&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Compliance/Cert&lt;/td&gt;
 &lt;td&gt;Requisitos de plataforma (Sony TRC, Microsoft XR, Nintendo Lotcheck)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Compatibilidad&lt;/td&gt;
 &lt;td&gt;Variaciones de hardware, versiones de OS, drivers&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Localización&lt;/td&gt;
 &lt;td&gt;Texto, audio, adaptación cultural, desbordamiento de texto&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Multijugador&lt;/td&gt;
 &lt;td&gt;Networking, matchmaking, sincronización, trampas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="testing-de-sistemas-en-tiempo-real"&gt;Testing de Sistemas en Tiempo Real &lt;a href="#testing-de-sistemas-en-tiempo-real" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="frame-rate-y-renderizado"&gt;Frame Rate y Renderizado &lt;a href="#frame-rate-y-renderizado" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Plataforma&lt;/th&gt;
 &lt;th&gt;FPS Objetivo&lt;/th&gt;
 &lt;th&gt;Mínimo Aceptable&lt;/th&gt;
 &lt;th&gt;Escenario de Estrés&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;PC (Alto)&lt;/td&gt;
 &lt;td&gt;60+&lt;/td&gt;
 &lt;td&gt;30&lt;/td&gt;
 &lt;td&gt;Configuración máxima, escenas complejas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Consola&lt;/td&gt;
 &lt;td&gt;60 o 30&lt;/td&gt;
 &lt;td&gt;Objetivo del modo rendimiento&lt;/td&gt;
 &lt;td&gt;Combate con partículas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Móvil&lt;/td&gt;
 &lt;td&gt;30-60&lt;/td&gt;
 &lt;td&gt;25&lt;/td&gt;
 &lt;td&gt;Dispositivos de gama baja&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="latencia-de-input"&gt;Latencia de Input &lt;a href="#latencia-de-input" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Medir latencia total (control → pantalla)&lt;/li&gt;
&lt;li&gt;Testear con diferentes tasas de refresco de pantalla&lt;/li&gt;
&lt;li&gt;Verificar buffering de input durante caídas de frame rate&lt;/li&gt;
&lt;li&gt;Testear opciones de accesibilidad (remapeo de botones)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="físicas-y-colisión"&gt;Físicas y Colisión &lt;a href="#f%c3%adsicas-y-colisi%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Detección de colisión de objetos (sin atravesar paredes)&lt;/li&gt;
&lt;li&gt;Físicas ragdoll, físicas de vehículos&lt;/li&gt;
&lt;li&gt;Entornos destructibles&lt;/li&gt;
&lt;li&gt;Edge cases: velocidades extremas, apilamiento de objetos&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="testing-de-comportamiento-de-ia"&gt;Testing de Comportamiento de IA &lt;a href="#testing-de-comportamiento-de-ia" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Pathfinding: NPCs navegan alrededor de obstáculos sin atorarse&lt;/li&gt;
&lt;li&gt;IA de combate: enemigos usan tácticas apropiadas para el nivel de dificultad&lt;/li&gt;
&lt;li&gt;IA de compañeros: aliados ayudan sin bloquear al jugador&lt;/li&gt;
&lt;li&gt;Escalado de dificultad: IA se adapta al nivel del jugador&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-multijugador-y-online"&gt;Testing Multijugador y Online &lt;a href="#testing-multijugador-y-online" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="condiciones-de-red"&gt;Condiciones de Red &lt;a href="#condiciones-de-red" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Latencia: 20-200ms con jitter&lt;/li&gt;
&lt;li&gt;Pérdida de paquetes: 1-10%&lt;/li&gt;
&lt;li&gt;Limitaciones de ancho de banda&lt;/li&gt;
&lt;li&gt;Traversal de NAT para conexiones peer-to-peer&lt;/li&gt;
&lt;li&gt;Manejo de desconexión y reconexión&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-avanzado-de-videojuegos"&gt;Testing Avanzado de Videojuegos &lt;a href="#testing-avanzado-de-videojuegos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="certificación-de-consola"&gt;Certificación de Consola &lt;a href="#certificaci%c3%b3n-de-consola" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Sony TRC:&lt;/strong&gt; Manejo de datos de guardado, actualizaciones, funciones de red, trofeos, comportamiento de controles&lt;/p&gt;</description></item><item><title>Testing del Dominio de Aviación</title><link>https://yrkan.com/es/course/module-11-domain-testing/aviation-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/aviation-testing/</guid><description>&lt;h2 id="testing-del-dominio-de-aviación"&gt;Testing del Dominio de Aviación &lt;a href="#testing-del-dominio-de-aviaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing del dominio de aviación presenta desafíos únicos. Requiere conocimiento de niveles de certificación DO-178C (DAL A-E), verificación de software de aviónica y sistemas de gestión de vuelo.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing del dominio de aviación application:&lt;/p&gt;</description></item><item><title>Testing del Dominio de Salud</title><link>https://yrkan.com/es/course/module-11-domain-testing/healthcare-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/healthcare-testing/</guid><description>&lt;h2 id="panorama-de-ti-en-salud"&gt;Panorama de TI en Salud &lt;a href="#panorama-de-ti-en-salud" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La TI en salud es un vasto ecosistema de sistemas interconectados que gestionan la atención al paciente, operaciones clínicas y funciones administrativas. Los riesgos son únicamente altos — bugs de software en salud pueden impactar directamente la seguridad del paciente e incluso costar vidas.&lt;/p&gt;
&lt;h3 id="sistemas-centrales-de-salud"&gt;Sistemas Centrales de Salud &lt;a href="#sistemas-centrales-de-salud" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;EHR (Electronic Health Records):&lt;/strong&gt; El repositorio central de datos médicos del paciente — diagnósticos, medicamentos, alergias, resultados de laboratorio, imágenes y planes de atención&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PACS (Picture Archiving and Communication System):&lt;/strong&gt; Almacena y distribuye imágenes médicas (rayos X, MRI, tomografías) usando el estándar DICOM&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LIS (Laboratory Information System):&lt;/strong&gt; Gestiona órdenes de laboratorio, seguimiento de muestras, reporte de resultados y control de calidad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RIS (Radiology Information System):&lt;/strong&gt; Gestiona flujos de trabajo de radiología desde la orden hasta el informe&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PMS (Practice Management System):&lt;/strong&gt; Maneja programación, facturación y operaciones administrativas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sistemas de Farmacia:&lt;/strong&gt; Gestionan dispensación de medicamentos, verificación de interacciones y gestión del formulario&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="estándares-de-interoperabilidad"&gt;Estándares de Interoperabilidad &lt;a href="#est%c3%a1ndares-de-interoperabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los sistemas de salud deben intercambiar datos de forma confiable. Los estándares clave son:&lt;/p&gt;</description></item><item><title>Testing del Dominio de Seguros</title><link>https://yrkan.com/es/course/module-11-domain-testing/insurance-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/insurance-testing/</guid><description>&lt;h2 id="panorama-del-dominio-de-seguros"&gt;Panorama del Dominio de Seguros &lt;a href="#panorama-del-dominio-de-seguros" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La industria de seguros se construye sobre procesos de negocio complejos que gestionan riesgo a través de contratos de pólizas. Los sistemas de software de seguros manejan todo, desde cotizaciones iniciales hasta emisión de pólizas, gestión continua, procesamiento de reclamos y renovación. Comprender estos procesos es esencial para un testing efectivo.&lt;/p&gt;
&lt;h3 id="tipos-de-sistemas-de-seguros"&gt;Tipos de Sistemas de Seguros &lt;a href="#tipos-de-sistemas-de-seguros" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sistemas de Administración de Pólizas (PAS):&lt;/strong&gt; Gestionan el ciclo de vida completo de la póliza desde cotización hasta cancelación&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sistemas de Gestión de Reclamos:&lt;/strong&gt; Manejan el reporte, investigación, ajuste y pago de reclamos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Motores de Tarificación:&lt;/strong&gt; Calculan primas basados en factores de riesgo y reglas de suscripción&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sistemas de Facturación:&lt;/strong&gt; Gestionan cobro de primas, planes de cuotas y procesamiento de pagos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Portales de Agentes/Corredores:&lt;/strong&gt; Plataformas de autoservicio para canales de distribución&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="terminología-clave-del-dominio"&gt;Terminología Clave del Dominio &lt;a href="#terminolog%c3%ada-clave-del-dominio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Póliza:&lt;/strong&gt; Contrato entre asegurador y asegurado que define términos de cobertura y prima&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Prima:&lt;/strong&gt; El precio pagado por la cobertura de seguros&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Suscripción (Underwriting):&lt;/strong&gt; Proceso de evaluación de riesgo que determina asegurabilidad y precio&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reclamo (Claim):&lt;/strong&gt; Solicitud formal de pago bajo los términos de la póliza&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Endoso (Endorsement):&lt;/strong&gt; Modificación a una póliza existente (agregar/eliminar cobertura)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Deducible:&lt;/strong&gt; Monto que paga el asegurado antes de que active la cobertura&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Actuarial:&lt;/strong&gt; Análisis estadístico y matemático de riesgo usado para tarificar seguros&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="áreas-de-enfoque-del-testing-de-seguros"&gt;Áreas de Enfoque del Testing de Seguros &lt;a href="#%c3%a1reas-de-enfoque-del-testing-de-seguros" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testing-del-ciclo-de-vida-de-la-póliza"&gt;Testing del Ciclo de Vida de la Póliza &lt;a href="#testing-del-ciclo-de-vida-de-la-p%c3%b3liza" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;El ciclo de vida de la póliza es la columna vertebral de los sistemas de seguros. Cada transición de estado debe ser testeada:&lt;/p&gt;</description></item><item><title>Testing del Dominio de Telecomunicaciones</title><link>https://yrkan.com/es/course/module-11-domain-testing/telecom-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/telecom-testing/</guid><description>&lt;h2 id="panorama-del-dominio-de-telecomunicaciones"&gt;Panorama del Dominio de Telecomunicaciones &lt;a href="#panorama-del-dominio-de-telecomunicaciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las telecomunicaciones son uno de los dominios de software más grandes y complejos. Los sistemas telecom procesan miles de millones de transacciones diarias, manejan tráfico de voz y datos en tiempo real, y deben mantener un uptime casi perfecto.&lt;/p&gt;
&lt;h3 id="arquitectura-de-sistemas-telecom"&gt;Arquitectura de Sistemas Telecom &lt;a href="#arquitectura-de-sistemas-telecom" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los sistemas telecom se dividen en dos categorías:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Business Support Systems (BSS):&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Facturación:&lt;/strong&gt; Tarificación, cobro, facturación, recolección de pagos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CRM:&lt;/strong&gt; Gestión de clientes, solicitudes de servicio, quejas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gestión de Órdenes:&lt;/strong&gt; Activación, modificación, desconexión de servicios&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Revenue Assurance:&lt;/strong&gt; Detección de fugas de ingresos y errores de facturación&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Operations Support Systems (OSS):&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Testing en la Nube: AWS, GCP y Azure</title><link>https://yrkan.com/es/course/module-09-cicd-devops/cloud-testing-aws-gcp-azure/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-09-cicd-devops/cloud-testing-aws-gcp-azure/</guid><description>&lt;h2 id="visión-general-del-testing-en-la-nube"&gt;Visión General del Testing en la Nube &lt;a href="#visi%c3%b3n-general-del-testing-en-la-nube" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones modernas se ejecutan en infraestructura cloud. Los ingenieros QA deben entender servicios de testing específicos de la nube, device farms y patrones para testear aplicaciones cloud-native.&lt;/p&gt;
&lt;h2 id="servicios-de-testing-por-proveedor-cloud"&gt;Servicios de Testing por Proveedor Cloud &lt;a href="#servicios-de-testing-por-proveedor-cloud" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="aws-device-farm-codepipeline-codebuild-fault-injection-simulator-cloudwatch"&gt;AWS: Device Farm, CodePipeline, CodeBuild, Fault Injection Simulator, CloudWatch &lt;a href="#aws-device-farm-codepipeline-codebuild-fault-injection-simulator-cloudwatch" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h3 id="gcp-firebase-test-lab-cloud-build-cloud-monitoring-cloud-logging"&gt;GCP: Firebase Test Lab, Cloud Build, Cloud Monitoring, Cloud Logging &lt;a href="#gcp-firebase-test-lab-cloud-build-cloud-monitoring-cloud-logging" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h3 id="azure-devops-pipelines-app-center-test-azure-monitor-azure-load-testing-test-plans"&gt;Azure: DevOps Pipelines, App Center Test, Azure Monitor, Azure Load Testing, Test Plans &lt;a href="#azure-devops-pipelines-app-center-test-azure-monitor-azure-load-testing-test-plans" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h2 id="device-farms-en-la-nube"&gt;Device Farms en la Nube &lt;a href="#device-farms-en-la-nube" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;AWS Device Farm y Firebase Test Lab permiten ejecutar tests en dispositivos reales en la nube sin mantener hardware propio.&lt;/p&gt;</description></item><item><title>Testing Gubernamental y de Cumplimiento</title><link>https://yrkan.com/es/course/module-11-domain-testing/government-compliance-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/government-compliance-testing/</guid><description>&lt;h2 id="testing-gubernamental-y-de-cumplimiento"&gt;Testing Gubernamental y de Cumplimiento &lt;a href="#testing-gubernamental-y-de-cumplimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing gubernamental y de cumplimiento presenta desafíos únicos. Requiere conocimiento de accesibilidad Section 508/WCAG, seguridad cloud FedRAMP, cumplimiento FISMA y testing de portales ciudadanos.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing gubernamental y de cumplimiento application:&lt;/p&gt;</description></item><item><title>Testing Inmobiliario y PropTech</title><link>https://yrkan.com/es/course/module-11-domain-testing/real-estate-proptech-testing/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-11-domain-testing/real-estate-proptech-testing/</guid><description>&lt;h2 id="testing-inmobiliario-y-proptech"&gt;Testing Inmobiliario y PropTech &lt;a href="#testing-inmobiliario-y-proptech" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El dominio de testing inmobiliario y proptech presenta desafíos únicos. Requiere conocimiento de precisión de listados, integración MLS/IDX, tours virtuales, calculadoras hipotecarias y búsqueda geolocalizada.&lt;/p&gt;
&lt;h3 id="key-domain-concepts"&gt;Key Domain Concepts &lt;a href="#key-domain-concepts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Core business processes and their dependencies&lt;/li&gt;
&lt;li&gt;Regulatory and compliance frameworks for this industry&lt;/li&gt;
&lt;li&gt;Integration points with external systems&lt;/li&gt;
&lt;li&gt;Domain-specific data integrity requirements&lt;/li&gt;
&lt;li&gt;Performance expectations and SLAs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-focus-areas"&gt;Testing Focus Areas &lt;a href="#testing-focus-areas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="business-logic-testing"&gt;Business Logic Testing &lt;a href="#business-logic-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Calculation accuracy for all domain numerical operations&lt;/li&gt;
&lt;li&gt;Workflow state transitions and business rules&lt;/li&gt;
&lt;li&gt;Role-based access controls per industry requirements&lt;/li&gt;
&lt;li&gt;Domain-specific data validation rules&lt;/li&gt;
&lt;li&gt;Integration testing between domain modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="compliance-and-regulatory-testing"&gt;Compliance and Regulatory Testing &lt;a href="#compliance-and-regulatory-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Verify compliance with applicable standards&lt;/li&gt;
&lt;li&gt;Test audit trail completeness and accuracy&lt;/li&gt;
&lt;li&gt;Validate data retention, privacy, and consent&lt;/li&gt;
&lt;li&gt;Test regulatory reporting accuracy&lt;/li&gt;
&lt;li&gt;Verify access controls meet requirements&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="data-integrity-testing"&gt;Data Integrity Testing &lt;a href="#data-integrity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Validate data accuracy across system boundaries&lt;/li&gt;
&lt;li&gt;Test transformation and calculation rules with edge cases&lt;/li&gt;
&lt;li&gt;Verify referential integrity in cross-system flows&lt;/li&gt;
&lt;li&gt;Test migration and synchronization processes&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Domain Requirements] --&gt; B[Business Logic]
 A --&gt; C[Compliance]
 A --&gt; D[Integration]
 B --&gt; E[Test Execution]
 C --&gt; E
 D --&gt; E
 E --&gt; F[Domain Validation]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h2 id="advanced-testing-techniques"&gt;Advanced Testing Techniques &lt;a href="#advanced-testing-techniques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="domain-specific-integration-testing"&gt;Domain-Specific Integration Testing &lt;a href="#domain-specific-integration-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;External system APIs and data exchanges&lt;/li&gt;
&lt;li&gt;Third-party service integrations and SLAs&lt;/li&gt;
&lt;li&gt;Data synchronization with conflict resolution&lt;/li&gt;
&lt;li&gt;Error handling for integration failures&lt;/li&gt;
&lt;li&gt;Performance under realistic loads&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="performance-and-scale-testing"&gt;Performance and Scale Testing &lt;a href="#performance-and-scale-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Transaction throughput under peak load&lt;/li&gt;
&lt;li&gt;Response time SLAs for critical operations&lt;/li&gt;
&lt;li&gt;Batch processing capacity at production scale&lt;/li&gt;
&lt;li&gt;Concurrent user capacity during peak usage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security-testing"&gt;Security Testing &lt;a href="#security-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentication and authorization per domain requirements&lt;/li&gt;
&lt;li&gt;Encryption of sensitive domain data&lt;/li&gt;
&lt;li&gt;Audit logging for compliance&lt;/li&gt;
&lt;li&gt;Penetration testing for domain attack vectors&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="hands-on-exercise"&gt;Hands-On Exercise &lt;a href="#hands-on-exercise" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Design a test plan for a testing inmobiliario y proptech application:&lt;/p&gt;</description></item><item><title>¿Reemplazará la IA a los QA Engineers en 2030? El Futuro de la Profesión de Testing</title><link>https://yrkan.com/es/blog/future-of-qa-profession/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/future-of-qa-profession/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La IA automatizará el 40-60% de las tareas repetitivas de QA para 2030 (Gartner), pero los ingenieros de QA que se adapten verán un ámbito ampliado y salarios más altos. La estrategia ganadora: aprender prompt engineering, validación de modelos de IA y arquitectura de calidad.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La pregunta que atormenta la mente de cada profesional de QA: &amp;ldquo;¿Me reemplazará la IA?&amp;rdquo; A medida que la inteligencia artificial transforma las pruebas de software a un ritmo sin precedentes, esta preocupación no es solo alarmismo, es una consideración profesional legítima. Este análisis exhaustivo examina el futuro de la profesión de QA hasta 2030, respaldado por datos de mercado, definiciones de roles emergentes y estrategias de adaptación accionables para profesionales de testing navegando esta transformación impulsada por IA.&lt;/p&gt;</description></item><item><title>A/B Testing para Modelos de Machine Learning: Experimentación ML</title><link>https://yrkan.com/es/blog/ab-testing-ml-models/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ab-testing-ml-models/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El A/B testing ML es fundamentalmente diferente del testing de UI—los modelos son no-determinísticos, aprenden continuamente y afectan la distribución futura de datos&lt;/li&gt;
&lt;li&gt;Comienza con tu Criterio de Evaluación General (OEC)—una métrica principal que captura el éxito (Netflix usa horas de visualización, e-commerce usa conversión)&lt;/li&gt;
&lt;li&gt;Usa guardrails para detener automáticamente experimentos si las métricas críticas se degradan, y planifica despliegues graduales (5% → 20% → 50% → 100%)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos desplegando modelos ML en producción que necesitan rigor estadístico en su experimentación&lt;/p&gt;</description></item><item><title>Ad-hoc vs Monkey Testing: Entendiendo Enfoques Caóticos de Testing</title><link>https://yrkan.com/es/blog/adhoc-monkey-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/adhoc-monkey-testing/</guid><description>&lt;p&gt;Ad-hoc vs Monkey Testing: Entendiendo Enfoques Caóticos de Testing es una disciplina crítica en el aseguramiento de calidad de software moderno. The NIST estimates that software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>AI Copilot para Test Automation: GitHub Copilot, Amazon CodeWhisperer y el Futuro de QA</title><link>https://yrkan.com/es/blog/ai-copilot-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-copilot-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Los AI copilots entregan &lt;strong&gt;55% más rápido en creación de casos de prueba&lt;/strong&gt; y &lt;strong&gt;40% de reducción en tiempo de debugging&lt;/strong&gt; para tests de Selenium/Playwright&lt;/li&gt;
&lt;li&gt;GitHub Copilot sobresale en generación de pruebas de propósito general; CodeWhisperer es mejor para escenarios de pruebas integradas con AWS y APIs&lt;/li&gt;
&lt;li&gt;Usa IA para boilerplate (Page Objects, fixtures, generación de datos) pero confía en la experiencia humana para estrategia de pruebas e identificación de casos extremos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos escribiendo 10+ nuevos casos de prueba semanalmente, proyectos con patrones repetitivos de Page Objects, suites de pruebas de API que necesitan expansión rápida&lt;/p&gt;</description></item><item><title>Allure Framework: Creando Reportes de Testing Hermosos</title><link>https://yrkan.com/es/blog/allure-framework-reporting/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/allure-framework-reporting/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Allure reduce el tiempo de debugging en &lt;strong&gt;70%&lt;/strong&gt; con reportes interactivos que incluyen capturas de pantalla, logs y detalles paso a paso&lt;/li&gt;
&lt;li&gt;Las tendencias históricas revelan &lt;strong&gt;tests inestables&lt;/strong&gt; y rastrean tasas de éxito, detectando patrones de regresión temprano&lt;/li&gt;
&lt;li&gt;La organización Epic/Feature/Story mejora la descubribilidad de tests en &lt;strong&gt;60%&lt;/strong&gt; para suites grandes (500+ tests)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con 100+ tests, necesidades de reportes para stakeholders, suites UI/API que requieren debugging visual&lt;/p&gt;</description></item><item><title>Allure TestOps: Gestión de Pruebas Empresarial Más Allá del Reporting</title><link>https://yrkan.com/es/blog/allure-testops-enterprise-management/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/allure-testops-enterprise-management/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Allure TestOps transforma datos de ejecución de pruebas en inteligencia de calidad estratégica con descubrimiento automático de tests y documentación en vivo&lt;/li&gt;
&lt;li&gt;El ML integrado detecta pruebas inestables antes de que erosionen la confianza del equipo—algo que herramientas TCM tradicionales como TestRail no pueden hacer&lt;/li&gt;
&lt;li&gt;La selección inteligente de pruebas ejecuta solo tests relevantes basándose en cambios de código, reduciendo tiempo de CI 70-80%&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con 1,000+ pruebas automatizadas que quieren extraer insights de datos existentes sin mantenimiento manual de TCM
&lt;strong&gt;No recomendado si:&lt;/strong&gt; Tus pruebas son principalmente manuales o necesitas integración profunda con JIRA (considera Xray o Zephyr)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 15 minutos&lt;/p&gt;</description></item><item><title>Alternativas a Postman 2026: Bruno vs Insomnia vs Thunder Client</title><link>https://yrkan.com/es/blog/postman-alternatives-comparison/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/postman-alternatives-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bruno&lt;/strong&gt; es la mejor alternativa open source — Git-nativo, sin cuenta, offline completo. Lo recomiendo para la mayoría de equipos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Insomnia&lt;/strong&gt; gana para GraphQL y flujos design-first (OpenAPI), pero el tier gratuito es limitado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Thunder Client&lt;/strong&gt; es perfecto si vives en VS Code y necesitas algo ligero&lt;/li&gt;
&lt;li&gt;Los tres importan colecciones de Postman, así que la migración es directa&lt;/li&gt;
&lt;li&gt;Postman sigue valiendo la pena si necesitas colaboración cloud, mock servers o monitoreo de API&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos evaluando alternativas a Postman por privacidad, costo o flujo de trabajo
&lt;strong&gt;Omite si:&lt;/strong&gt; Estás satisfecho con Postman y usas sus funciones cloud diariamente&lt;/p&gt;</description></item><item><title>Alternativas a Protractor 2026: Comparación de Herramientas Modernas para Pruebas de Angular</title><link>https://yrkan.com/es/blog/protractor-alternatives-2025/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/protractor-alternatives-2025/</guid><description>&lt;p&gt;Google deprecó oficialmente Protractor en abril de 2022 y finalizó el soporte en diciembre de 2022, obligando a los equipos de Angular en todo el mundo a migrar sus suites de pruebas E2E a alternativas modernas. Según la encuesta State of JS 2023, Playwright ahora lidera la satisfacción en testing E2E con un 87% de valoraciones positivas, seguido de Cypress con un 81%, mientras que el uso de Protractor ha caído por debajo del 5% de los proyectos Angular. Según una encuesta del equipo de Angular, más del 60% de los desarrolladores de Angular ya han migrado o están migrando activamente desde Protractor. Para los equipos que aún ejecutan Protractor, la ventana de migración se está cerrando — los problemas de compatibilidad con los drivers de navegador son cada vez más frecuentes. Esta guía compara las tres mejores alternativas con estrategias de migración concretas.&lt;/p&gt;</description></item><item><title>Análisis de Impacto de Tests con IA: Selección Inteligente Tras Cambios de Código</title><link>https://yrkan.com/es/blog/test-impact-analysis-ai/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-impact-analysis-ai/</guid><description>&lt;p&gt;Según el blog de ingeniería de Google 2024, su sistema de Análisis de Impacto de Tests con IA selecciona solo el &lt;strong&gt;8-12% de su suite de más de 500.000 tests&lt;/strong&gt; para cada commit — ahorrando más del &lt;strong&gt;88% del tiempo de ejecución&lt;/strong&gt; mientras mantiene un 96% de recall de defectos. La investigación del equipo de Microsoft Engineering Systems encontró que TIA redujo los tiempos de espera del pipeline CI de 2-4 horas a &lt;strong&gt;menos de 20 minutos&lt;/strong&gt; en promedio. A medida que las suites de pruebas crecen exponencialmente con la madurez del proyecto, ejecutar todas las pruebas en cada commit se vuelve computacionalmente imposible. TIA con IA — combinando análisis de Abstract Syntax Tree, construcción de grafos de dependencias y predicción de riesgos con machine learning — da a los equipos la capacidad de escalar sus suites de pruebas sin escalar sus costos de CI/CD. Las técnicas de esta guía cubren el stack completo de TIA: desde análisis estático de dependencias hasta modelos de predicción de fallos basados en ML, con patrones prácticos de integración CI/CD que funcionan a cualquier escala.&lt;/p&gt;</description></item><item><title>Análisis de Logs con IA: Detección Inteligente de Errores y Análisis de Causa Raíz</title><link>https://yrkan.com/es/blog/ai-log-analysis/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-log-analysis/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El análisis de logs con IA reduce el ruido de alertas en &lt;strong&gt;70-90%&lt;/strong&gt; mediante clustering inteligente y deduplicación&lt;/li&gt;
&lt;li&gt;La detección de anomalías usando Isolation Forest captura &lt;strong&gt;incógnitas desconocidas&lt;/strong&gt;—errores sin reglas predefinidas—con 95%+ de precisión y umbral de contaminación del 1%&lt;/li&gt;
&lt;li&gt;El análisis de causa raíz mediante grafos de dependencias de servicios reduce el tiempo medio de resolución (MTTR) en &lt;strong&gt;40-60%&lt;/strong&gt; al rastrear fallos automáticamente&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Sistemas que generan 1M+ entradas de log/día, microservicios con dependencias complejas, equipos con fatiga de alertas&lt;/p&gt;</description></item><item><title>Analítica de Métricas de Pruebas con IA: Análisis Inteligente de Métricas de QA</title><link>https://yrkan.com/es/blog/ai-test-metrics/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-test-metrics/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La analítica de métricas impulsada por IA reduce el tiempo de análisis en &lt;strong&gt;65%&lt;/strong&gt; mediante detección automatizada de anomalías y generación de insights&lt;/li&gt;
&lt;li&gt;Los modelos predictivos mejoran las tasas de éxito de releases en &lt;strong&gt;28%&lt;/strong&gt; identificando factores de riesgo antes del despliegue&lt;/li&gt;
&lt;li&gt;El reconocimiento de patrones detecta &lt;strong&gt;40% más problemas&lt;/strong&gt; que la revisión manual mediante análisis de tendencias basado en ML&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mejor para:&lt;/strong&gt; Equipos con 100+ ejecuciones de pruebas/día, métricas complejas de múltiples fuentes, decisiones de release basadas en datos&lt;/p&gt;</description></item><item><title>Anatomía del Bug: Desde el Descubrimiento hasta la Resolución</title><link>https://yrkan.com/es/blog/bug-anatomy/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/bug-anatomy/</guid><description>&lt;p&gt;Anatomía del Bug: Desde el Descubrimiento hasta la Resolución es una disciplina crítica en el aseguramiento de calidad de software moderno. According to NIST, software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to research by Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>API Contract Testing para Aplicaciones Móviles: Pact, Spring Cloud Contract y Mejores Prácticas</title><link>https://yrkan.com/es/blog/api-contract-mobile-testing/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-contract-mobile-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Los contratos dirigidos por el consumidor permiten a equipos móviles definir expectativas de API sin esperar al backend&lt;/li&gt;
&lt;li&gt;Los tests Pact se ejecutan en milisegundos vs segundos en tests de integración, detectando cambios disruptivos antes del despliegue&lt;/li&gt;
&lt;li&gt;La verificación can-i-deploy es tu red de seguridad—nunca despliegues sin ella&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos móviles consumiendo APIs de microservicios, equipos con cambios frecuentes de API&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; Backend monolítico único, APIs estables con cambios raros&lt;/p&gt;</description></item><item><title>API Performance Testing: Métricas y Herramientas</title><link>https://yrkan.com/es/blog/api-performance-testing/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-performance-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mide latencia P95/P99, no solo promedios—los outliers afectan la experiencia de usuario más de lo que sugieren las medias&lt;/li&gt;
&lt;li&gt;K6 destaca por scripting amigable para desarrolladores, Artillery por configs YAML, Gatling para simulaciones de alta escala&lt;/li&gt;
&lt;li&gt;Comienza con tests baseline, luego tests de carga, después tests de estrés—el orden importa para resultados significativos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos optimizando tiempos de respuesta de API, validando SLAs, preparándose para picos de tráfico&lt;/p&gt;</description></item><item><title>API Security Testing: Guía Completa OAuth, JWT y API Keys</title><link>https://yrkan.com/es/blog/api-security-testing/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-security-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Prueba BOLA/IDOR en cada endpoint—es la vulnerabilidad #1 de API (OWASP API Security Top 10 2023)&lt;/li&gt;
&lt;li&gt;Testing de JWT debe cubrir confusión de algoritmo, secretos débiles y manipulación de token—no solo expiración&lt;/li&gt;
&lt;li&gt;Nunca aceptes API keys en URLs; verifica que rate limiting funcione por key, no solo por IP&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; APIs públicas, sistemas multi-tenant, APIs manejando datos sensibles (PII, financieros, salud)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; APIs solo internas con clientes confiables, fase temprana de prototipado&lt;/p&gt;</description></item><item><title>API Testing Mastery: De REST al Testing de Contratos 2026</title><link>https://yrkan.com/es/blog/api-testing-mastery/</link><pubDate>Sat, 17 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-testing-mastery/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Elige tu protocolo sabiamente: REST para APIs públicas, GraphQL para necesidades complejas de datos, gRPC para rendimiento de microservicios&lt;/li&gt;
&lt;li&gt;Contract testing con Pact detecta bugs de integración sin ejecutar todos los servicios—esencial para equipos de microservicios&lt;/li&gt;
&lt;li&gt;Selección de herramientas: Postman para exploración/CI, REST Assured para equipos Java, Karate para combo BDD + rendimiento&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Desarrolladores backend, ingenieros QA, cualquiera construyendo o testeando sistemas distribuidos&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; Solo testeas UI y alguien más maneja las APIs&lt;/p&gt;</description></item><item><title>API Testing Tutorial: Guía Completa de Básicos a Automatización 2026</title><link>https://yrkan.com/es/blog/api-testing-tutorial-complete-guide/</link><pubDate>Wed, 28 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-testing-tutorial-complete-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;API testing verifica que servicios backend funcionan correctamente sin UI — más rápido y confiable que tests E2E&lt;/li&gt;
&lt;li&gt;Testea: status codes, cuerpo de respuesta, headers, manejo de errores, autenticación, validación de esquemas, performance&lt;/li&gt;
&lt;li&gt;Herramientas: Postman (manual/aprendizaje), REST Assured (Java), Supertest (Node.js), requests (Python)&lt;/li&gt;
&lt;li&gt;Automatiza en CI/CD — APIs cambian frecuentemente, atrapa breaking changes temprano&lt;/li&gt;
&lt;li&gt;Cubre happy path y escenarios de error (400s, 401, 404, 500)&lt;/li&gt;
&lt;li&gt;Valida esquemas de respuesta para prevenir drift de contratos entre frontend y backend&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Backend developers, ingenieros QA, cualquiera testeando microservicios
&lt;strong&gt;Omite si:&lt;/strong&gt; Solo necesitas testear sitios estáticos o frontends simples&lt;/p&gt;</description></item><item><title>Appium 2.0: Nueva Arquitectura e Integración en la Nube para Testing Mobile Moderno</title><link>https://yrkan.com/es/blog/appium-2-architecture-cloud/</link><pubDate>Sat, 17 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/appium-2-architecture-cloud/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Arquitectura de plugins de Appium 2.0: instala solo los drivers que necesitas (30MB core vs 200MB monolito)—migra agregando prefijo &lt;code&gt;appium:&lt;/code&gt; a las capacidades&lt;/li&gt;
&lt;li&gt;Integración cloud (BrowserStack, Sauce Labs, AWS Device Farm) elimina mantenimiento de laboratorios de dispositivos—ejecuta pruebas críticas en dispositivos reales, pruebas UI localmente&lt;/li&gt;
&lt;li&gt;Ejecución paralela con múltiples servidores Appium reduce tiempo de pruebas drásticamente—4 servidores pueden ejecutar 4x más rápido con gestión apropiada de puertos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Para quién:&lt;/strong&gt; Ingenieros QA móviles, arquitectos de automatización, equipos escalando suites de pruebas móviles&lt;/p&gt;</description></item><item><title>Appium Tutorial: Guía Completa de Testing de Apps Móviles</title><link>https://yrkan.com/es/blog/appium-tutorial-mobile-testing/</link><pubDate>Fri, 30 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/appium-tutorial-mobile-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Appium automatiza apps iOS y Android con protocolo WebDriver — un framework, ambas plataformas&lt;/li&gt;
&lt;li&gt;Setup: servidor Appium, SDKs de plataforma (Android Studio/Xcode), biblioteca cliente&lt;/li&gt;
&lt;li&gt;Encuentra elementos por accessibility id, xpath o locators específicos de plataforma&lt;/li&gt;
&lt;li&gt;Soporta gestos (swipe, scroll, tap), dispositivos reales y emuladores/simuladores&lt;/li&gt;
&lt;li&gt;Integra con CI/CD vía Appium en Docker o servicios cloud (BrowserStack, Sauce Labs)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos QA testeando apps móviles cross-platform
&lt;strong&gt;Omite si:&lt;/strong&gt; Testeas solo Android (usa Espresso) o solo iOS (usa XCUITest)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 20 minutos&lt;/p&gt;</description></item><item><title>Appium vs Espresso: Comparación de Testing Android 2026</title><link>https://yrkan.com/es/blog/appium-vs-espresso-comparison/</link><pubDate>Tue, 10 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/appium-vs-espresso-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Espresso&lt;/strong&gt;: Nativo Android, rápido, confiable, incorporado en Android Studio&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Appium&lt;/strong&gt;: Cross-platform, múltiples lenguajes, testing black-box&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Velocidad&lt;/strong&gt;: Espresso es 2-5x más rápido (corre in-process)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Confiabilidad&lt;/strong&gt;: Espresso tiene sincronización automática, menos tests flaky&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para Android-only&lt;/strong&gt;: Espresso (recomendado por Google)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para cross-platform&lt;/strong&gt;: Appium (un codebase para Android + iOS)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 9 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Appium y Espresso son los dos frameworks líderes de testing Android, pero sirven filosofías de testing fundamentalmente diferentes. Appium tiene más de 18.000 estrellas en GitHub y está respaldado por la OpenJS Foundation, posicionándose como el estándar open-source para testing móvil cross-platform en Android, iOS y Windows. Espresso, el framework Android nativo de Google, corre dentro del proceso de la app para sincronización automática y ejecución significativamente más rápida — es la herramienta recomendada en la documentación oficial del desarrollador Android. Según el informe SmartBear State of Software Quality 2025, la adopción de automatización de testing móvil creció un 31% interanual: las necesidades de cobertura cross-platform impulsan la adopción de Appium mientras los equipos Android-only se estandarizan cada vez más en Espresso por su velocidad y confiabilidad. Appium soporta más de una docena de lenguajes cliente, permitiendo a los equipos QA escribir tests en Python, Java, JavaScript, Ruby o C# contra la misma app móvil. Entender cuándo las fortalezas de cada framework se alinean con las restricciones de tu proyecto es la decisión clave que aborda esta guía.&lt;/p&gt;</description></item><item><title>Aprendizaje Continuo en Automatización de Pruebas: Construyendo Sistemas de Test Auto-Mejorables</title><link>https://yrkan.com/es/blog/continuous-learning-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/continuous-learning-automation/</guid><description>&lt;p&gt;Aprendizaje Continuo en Automatización de Pruebas: Construyendo Sistemas de Test Auto-Mejorables es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the World Quality Report 2024, 51% of QA organizations have increased test automation coverage in the past year (World Quality Report 2024). According to SmartBear, teams with 70%+ automated test coverage report 40% fewer production defects (SmartBear State of Software Quality). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Aqua ALM: Sistema de Trazabilidad de Requisitos a Pruebas</title><link>https://yrkan.com/es/blog/aqua-alm-requirements-traceability/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/aqua-alm-requirements-traceability/</guid><description>&lt;p&gt;Aqua ALM: Sistema de Trazabilidad de Requisitos a Pruebas es una disciplina crítica en el aseguramiento de calidad de software moderno. According to NIST, software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to research by Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Arquitectura de Testing de APIs: De Monolitos a Microservicios</title><link>https://yrkan.com/es/blog/api-testing-architecture-microservices/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-testing-architecture-microservices/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Usa la pirámide de testing para microservicios: 40-50% unitarios, 30-40% integración, 20-30% contratos, 5-10% E2E—no invertida&lt;/li&gt;
&lt;li&gt;Testea GraphQL con límites de profundidad y presupuestos de complejidad para prevenir ataques DoS y problemas de rendimiento N+1&lt;/li&gt;
&lt;li&gt;Los tests de contrato son obligatorios entre límites de servicios—detectan cambios incompatibles antes de producción&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Arquitecturas de microservicios distribuidos, organizaciones multi-equipo, sistemas con 5+ servicios, proyectos usando múltiples protocolos (REST, GraphQL, WebSocket)&lt;/p&gt;</description></item><item><title>Artillery Load Testing Tutorial: Guía Moderna de Testing de Performance</title><link>https://yrkan.com/es/blog/artillery-load-testing-tutorial/</link><pubDate>Thu, 05 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/artillery-load-testing-tutorial/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Artillery = pruebas de carga Node.js con escenarios YAML&lt;/li&gt;
&lt;li&gt;Define usuarios virtuales, fases (ramp-up, carga sostenida), think time&lt;/li&gt;
&lt;li&gt;Incluido: soporte HTTP, WebSocket, Socket.io&lt;/li&gt;
&lt;li&gt;Plugins: protocolos personalizados, métricas, reporters&lt;/li&gt;
&lt;li&gt;Diseño CLI-first, perfecto para pipelines CI/CD&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos Node.js, apps web modernas, desarrolladores que prefieren code-as-config
&lt;strong&gt;Omite si:&lt;/strong&gt; Necesitas construcción de tests GUI o extenso soporte de protocolos (usa JMeter)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Artillery Load Testing Tutorial: Guía Moderna de Testing de Performance es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Google research, as page load time increases from 1 to 3 seconds, the probability of bounce increases 32% (Google/SOASTA Research). According to Akamai, a 100ms delay in page load can decrease conversion rates by 7% (Akamai Performance Study). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Artillery Pruebas de Rendimiento: Pruebas de Carga Modernas con Escenarios YAML</title><link>https://yrkan.com/es/blog/artillery-performance-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/artillery-performance-testing/</guid><description>&lt;p&gt;Artillery Pruebas de Rendimiento: Pruebas de Carga Modernas con Escenarios YAML es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Google research, as page load time increases from 1 to 3 seconds, the probability of bounce increases 32% (Google/SOASTA Research). According to Akamai, a 100ms delay in page load can decrease conversion rates by 7% (Akamai Performance Study). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Automatización BDD con Cucumber: Guía Completa de Pruebas Orientadas al Comportamiento</title><link>https://yrkan.com/es/blog/cucumber-bdd-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cucumber-bdd-automation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Cucumber BDD usa sintaxis Gherkin (Given/When/Then) para escribir especificaciones ejecutables en lenguaje natural. Conecta a los equipos de negocio y técnicos, haciendo los escenarios de prueba legibles para todos los stakeholders.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="introducción-a-cucumber-bdd"&gt;Introducción a Cucumber BDD &lt;a href="#introducci%c3%b3n-a-cucumber-bdd" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cucumber ha revolucionado las pruebas de software al cerrar la brecha entre las partes interesadas técnicas y no técnicas. Como framework de desarrollo orientado al comportamiento (BDD), Cucumber permite a los equipos escribir escenarios de prueba en lenguaje sencillo que tanto analistas de negocio como desarrolladores pueden entender, fomentando la colaboración y asegurando que el software cumple con los requisitos reales del negocio.&lt;/p&gt;</description></item><item><title>Automatización de Pruebas API con Postman: De Manual a CI/CD</title><link>https://yrkan.com/es/blog/postman-de-manual-a-automatizacion/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/postman-de-manual-a-automatizacion/</guid><description>&lt;p&gt;Postman ha evolucionado de un simple cliente REST a una plataforma integral de testing de API utilizada por más de 30 millones de desarrolladores en todo el mundo. Según el Postman 2023 State of the API Report, el 86% de los desarrolladores usa Postman para testing de API, y los equipos que hacen la transición de testing manual de Postman a ejecuciones de colecciones automatizadas en CI/CD reducen el tiempo de detección de regresiones de API en un promedio del 70%. Según un estudio de SmartBear, los equipos que usan testing automatizado de API detectan un 60% más de violaciones de contratos de API antes de llegar a producción. Esta guía cubre el viaje completo desde explorar manualmente una API hasta ejecutar colecciones en CI/CD con Newman.&lt;/p&gt;</description></item><item><title>Azure DevOps Pipelines para QA: Guía Completa de Implementación</title><link>https://yrkan.com/es/blog/azure-devops-pipelines-for-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/azure-devops-pipelines-for-qa/</guid><description>&lt;p&gt;Azure DevOps Pipelines para QA: Guía Completa de Implementación es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA State of DevOps report, elite performing teams deploy 973x more frequently than low performers (DORA State of DevOps 2024). According to GitLab&amp;rsquo;s 2024 DevSecOps report, teams using CI/CD fix bugs 60% faster than those without automation (GitLab DevSecOps Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Balance Trabajo-Vida para Ingenieros QA</title><link>https://yrkan.com/es/blog/work-life-balance-qa-engineers/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/work-life-balance-qa-engineers/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Los ingenieros QA enfrentan riesgos únicos de burnout por el crunch de releases, guardias y responsabilidad de calidad. Estrategias clave: establece límites claros, negocia rotación justa (1 semana cada 4-6 semanas), invierte en automatización y toma tiempo de recuperación después de ciclos intensos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El equilibrio trabajo-vida para los ingenieros QA presenta desafíos distintos a los de la mayoría de los roles tecnológicos. Los equipos de testing regularmente absorben la presión de cronogramas comprimidos al final de los ciclos de desarrollo, responsabilidades de guardia por incidentes de producción y el peso psicológico de ser la última línea de defensa antes de que el software llegue a los usuarios. According to the 2023 Burnout Index by Yerbo, el 42% de los trabajadores tecnológicos reporta alto o muy alto riesgo de burnout, con los profesionales QA desproporcionadamente afectados por demandas de trabajo reactivo y presión de deadlines. According to the World Health Organization, el burnout está clasificado como fenómeno ocupacional en el CIE-11, con pérdidas de productividad estimadas en $322 mil millones anuales. According to Stack Overflow Developer Survey 2024, el 67% de los ingenieros QA citan el equilibrio trabajo-vida como el segundo factor más importante de satisfacción laboral, por delante del salario. Estudios muestran que los equipos con límites de trabajo claramente definidos tienen un 35% menos de rotación de personal. Las carreras QA sostenibles requieren establecimiento intencional de límites, estructuras de guardia justas e inversión en automatización.&lt;/p&gt;</description></item><item><title>BDD: De Requisitos a Automatización</title><link>https://yrkan.com/es/blog/bdd-requisitos-a-automatizacion/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/bdd-requisitos-a-automatizacion/</guid><description>&lt;p&gt;BDD: De Requisitos a Automatización es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the World Quality Report 2024, 51% of QA organizations have increased test automation coverage in the past year (World Quality Report 2024). According to SmartBear, teams with 70%+ automated test coverage report 40% fewer production defects (SmartBear State of Software Quality). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Black Box vs White Box vs Grey Box Testing: Comparación Completa</title><link>https://yrkan.com/es/blog/comparacion-black-box-white-box-grey-box-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/comparacion-black-box-white-box-grey-box-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Black box&lt;/strong&gt;: Sin conocimiento de código — testea desde perspectiva del usuario, solo entradas/salidas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;White box&lt;/strong&gt;: Acceso completo al código — testea lógica interna, caminos y cobertura&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Grey box&lt;/strong&gt;: Conocimiento parcial — combina ambos, común en integration y API testing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cuándo usar&lt;/strong&gt;: Black box para sistema/UAT; white box para unit tests; grey box para integración&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conclusión clave&lt;/strong&gt;: No elijas uno — usa los tres en el nivel apropiado de la pirámide de testing&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Ingenieros QA y developers aprendiendo estrategia de diseño de pruebas&lt;/p&gt;</description></item><item><title>Boundary Value Analysis: Encontrando Bugs en los Límites</title><link>https://yrkan.com/es/blog/boundary-value-analysis/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/boundary-value-analysis/</guid><description>&lt;p&gt;Boundary Value Analysis: Encontrando Bugs en los Límites es una disciplina crítica en el aseguramiento de calidad de software moderno. According to NIST, software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to research by Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Bruno API Client: Alternativa Open-Source a Postman</title><link>https://yrkan.com/es/blog/bruno-api-client/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/bruno-api-client/</guid><description>&lt;p&gt;Bruno es un cliente API completamente open-source construido alrededor de una filosofía Git-nativa: las colecciones se almacenan como archivos de texto &lt;code&gt;.bru&lt;/code&gt; en tu sistema de archivos, no en ninguna nube. Lanzado en 2022, superó las &lt;strong&gt;40,000 estrellas en GitHub&lt;/strong&gt; en dos años, convirtiéndose en una de las herramientas API de más rápido crecimiento en el ecosistema open-source. A diferencia de Postman o Insomnia, Bruno no requiere cuenta, login ni conexión a internet — todo se ejecuta localmente. El formato &lt;code&gt;.bru&lt;/code&gt; es legible por humanos y conveniente para diffs, lo que significa que toda tu colección API puede vivir junto a tu código en control de versiones. Para equipos de QA frustrados con el vendor lock-in y los crecientes costos de SaaS, el enfoque offline-first de Bruno representa un cambio fundamental en cómo pueden funcionar las herramientas de testing de API.&lt;/p&gt;</description></item><item><title>Bruno v3.2.0: Importaciones Git Open Source y Mejor Depuración</title><link>https://yrkan.com/es/tools-updates/bruno-v3-2-whats-new/</link><pubDate>Fri, 27 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/bruno-v3-2-whats-new/</guid><description>&lt;h2 id="cambios-clave-en-bruno-v320"&gt;Cambios Clave en Bruno v3.2.0 &lt;a href="#cambios-clave-en-bruno-v320" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Bruno v3.2.0, una actualización menor lanzada el 18 de marzo de 2026, se centra en expandir funcionalidades clave y mejorar la experiencia para desarrolladores y QA. Esta versión es particularmente relevante para los flujos de trabajo de testing de API.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Colaboración Open Source&lt;/strong&gt;: Un punto destacado es la inclusión de las &lt;strong&gt;importaciones de colecciones desde Git URL y API Spec URL&lt;/strong&gt; en la versión open source, antes exclusivas de la edición enterprise. Esto democratiza la colaboración y el control de versiones para todos los usuarios. Además, la importación de archivos ZIP para colecciones simplifica el intercambio.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Depuración y Scripting Mejorados&lt;/strong&gt;: Los ingenieros de QA se beneficiarán de un &lt;strong&gt;indicador de estado rojo para errores de script&lt;/strong&gt; en las pestañas de Request, Collection y Folder Script, agilizando la depuración. Los stack traces para fallos de script y test también han sido mejorados. Nuevas capacidades de scripting incluyen interpolación de variables de objeto y la habilidad de eliminar headers de requests usando scripts. La librería &lt;code&gt;bruno-js&lt;/code&gt; ahora ofrece una función &lt;code&gt;hasCookie&lt;/code&gt; para una gestión más precisa de cookies.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing API e Integración&lt;/strong&gt;: Bruno ahora soporta tipos de contenido &lt;code&gt;multipart/mixed&lt;/code&gt;, ampliando su alcance en el testing de API. La función de &lt;strong&gt;sincronización OpenAPI&lt;/strong&gt; ayuda a mantener las colecciones alineadas con las especificaciones de API. La exportación de especificaciones API ahora incluye variables de entorno, y las capacidades de traducción para la conversión de Bruno a Postman han sido mejoradas, asistiendo a equipos que migran de otras herramientas.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Usabilidad y Flujo de Trabajo&lt;/strong&gt;: Las nuevas &amp;ldquo;scratch requests&amp;rdquo; permiten pruebas rápidas y temporales. Los ajustes de control de zoom de la interfaz mejoran la accesibilidad. Para los reportes, las opciones para omitir los cuerpos de request y response ofrecen una salida más limpia. El collection runner ahora registra el historial, y el testing gRPC se expande con soporte para Unix Socket y Named Pipes.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="impacto-para-equipos-de-qa"&gt;Impacto para Equipos de QA &lt;a href="#impacto-para-equipos-de-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Bruno v3.2.0 optimiza significativamente el testing de API y la colaboración. La apertura de las importaciones de Git y especificaciones API fomenta un mejor control de versiones y el intercambio en equipo. Las herramientas de depuración mejoradas y el soporte ampliado de protocolos API significan un desarrollo de pruebas más rápido y una cobertura más completa, impactando directamente la eficiencia de los flujos de trabajo de QA. Para más información sobre las capacidades de Bruno, consulte nuestro artículo sobre &lt;a href="https://yrkan.com/es/blog/bruno-api-client/"&gt;bruno-api-client&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Bug Reports que los Desarrolladores Aman: El Arte de la Comunicación Efectiva</title><link>https://yrkan.com/es/blog/bug-reports-developers-love/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/bug-reports-developers-love/</guid><description>&lt;p&gt;Bug Reports que los Desarrolladores Aman: El Arte de la Comunicación Efectiva es una disciplina crítica en el aseguramiento de calidad de software moderno. According to NIST, software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to research by Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Burp Suite para Ingenieros QA: Guía Completa Testing Seguridad</title><link>https://yrkan.com/es/blog/burp-suite-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/burp-suite-qa/</guid><description>&lt;p&gt;Burp Suite es la plataforma de testing de seguridad de aplicaciones web más adoptada, usada en más de &lt;strong&gt;47,000 organizaciones en todo el mundo&lt;/strong&gt; según los propios datos de PortSwigger. Para equipos de QA, cierra la brecha entre el testing funcional y la validación de seguridad — proporcionando herramientas para interceptar tráfico, escanear vulnerabilidades OWASP Top 10, probar flujos de autenticación y automatizar verificaciones de seguridad en CI/CD. La lista OWASP Top 10, actualizada periódicamente por &lt;a href="https://owasp.org/"&gt;OWASP&lt;/a&gt;, sirve como línea base de la industria para qué vulnerabilidades deben probarse — y el escáner de Burp Suite está específicamente construido para encontrarlas.&lt;/p&gt;</description></item><item><title>Carrera en QA: De Junior a Principal Engineer</title><link>https://yrkan.com/es/blog/qa-career-path-progression/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/qa-career-path-progression/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Las carreras QA van de Junior ($50-70K) a Principal ($190K+) con 5-7 niveles claros. Cada nivel tiene requisitos de habilidades, responsabilidades y estrategias de crecimiento bien definidas. Esta guía ofrece el roadmap completo con datos salariales y planes de progresión accionables.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La carrera en Aseguramiento de Calidad ofrece diversas oportunidades de crecimiento, desde pruebas prácticas hasta roles de liderazgo estratégico. Según la Stack Overflow Developer Survey 2024, los ingenieros QA y de testing representan una de las disciplinas técnicas de más rápido crecimiento, con salarios medianos que aumentaron un 18% en tres años. Según datos del Bureau of Labor Statistics, los roles de analista de aseguramiento de calidad de software crecerán un 25% para 2032, significativamente más rápido que el promedio. Esta guía cubre cada nivel con matrices de habilidades, responsabilidades, rangos salariales y estrategias prácticas.&lt;/p&gt;</description></item><item><title>Chaos Engineering: Rompiendo Sistemas de Manera Correcta</title><link>https://yrkan.com/es/blog/chaos-engineering-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/chaos-engineering-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Chaos Engineering&lt;/strong&gt;: Inyección intencional de fallos para descubrir debilidades del sistema antes que los incidentes reales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Origen&lt;/strong&gt;: Netflix lo pionereó con Chaos Monkey para construir resiliencia en microservicios cloud&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Principio fundamental&lt;/strong&gt;: Asumir que los fallos son inevitables — encontrar debilidades proactivamente, no reactivamente&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proceso&lt;/strong&gt;: Definir steady state → Formular hipótesis → Inyectar fallo → Observar → Corregir → Repetir&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas&lt;/strong&gt;: Gremlin (empresarial), Chaos Monkey (AWS), Chaos Mesh (Kubernetes), LitmusChaos (CNCF)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seguridad&lt;/strong&gt;: Empezar en staging, limitar blast radius, tener planes de rollback, monitorear continuamente&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Chaos Engineering representa un cambio de paradigma en cómo abordamos la confiabilidad: en lugar de esperar que los sistemas se mantengan estables, los rompemos deliberadamente de maneras controladas para encontrar debilidades antes de que los incidentes reales lo hagan. Netflix pionereó esta disciplina con Chaos Monkey en 2011, inicialmente para forzar que sus microservicios sobrevivieran la terminación aleatoria de instancias AWS. Según el manifiesto Principles of Chaos Engineering, los experimentos de caos son el único método empírico para construir confianza genuina en la resiliencia de sistemas distribuidos. Según el informe State of Chaos Engineering de Gremlin, el 61% de las organizaciones ahora ejecutan experimentos de caos en producción, y las que lo hacen experimentan 3x menos incidentes de alta severidad. Esta guía cubre los principios, herramientas y enfoque sistemático para implementar chaos engineering de manera segura.&lt;/p&gt;</description></item><item><title>Charles Proxy Tutorial: Guía Completa de Debugging de Red para Testers</title><link>https://yrkan.com/es/blog/charles-proxy-tutorial-testing/</link><pubDate>Mon, 02 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/charles-proxy-tutorial-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Charles Proxy intercepta tráfico HTTP/HTTPS para inspección y modificación&lt;/li&gt;
&lt;li&gt;SSL Proxying requiere instalación de certificado en dispositivo (móvil/navegador)&lt;/li&gt;
&lt;li&gt;Breakpoints permiten modificar requests/responses en tiempo real&lt;/li&gt;
&lt;li&gt;Map Local/Remote redirige requests a archivos locales o servidores diferentes&lt;/li&gt;
&lt;li&gt;Throttling simula redes lentas para testing de rendimiento&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Testers móviles, desarrolladores de API, debugging de issues en producción
&lt;strong&gt;Omite si:&lt;/strong&gt; Solo necesitas inspección simple de requests (DevTools del navegador es suficiente)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 14 minutos&lt;/p&gt;</description></item><item><title>ChatGPT y LLM en Pruebas: Oportunidades y Riesgos</title><link>https://yrkan.com/es/blog/chatgpt-llm-in-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/chatgpt-llm-in-testing/</guid><description>&lt;p&gt;ChatGPT y LLM en Pruebas: Oportunidades y Riesgos es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, by 2025, 70% of new applications will use AI or ML, up from less than 5% in 2020 (Gartner AI Forecast). According to McKinsey&amp;rsquo;s 2024 State of AI survey, 65% of organizations now use generative AI regularly, nearly double the 2023 figure (McKinsey State of AI 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Cómo Elegir la Herramienta Correcta de Testing de API: Framework de Decisión y Guía de Selección</title><link>https://yrkan.com/es/blog/choosing-api-testing-tool/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/choosing-api-testing-tool/</guid><description>&lt;p&gt;Cómo Elegir la Herramienta Correcta de Testing de API: Framework de Decisión y Guía de Selección es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Postman&amp;rsquo;s 2024 State of the API report, 51% of developers spend the most time on APIs, making API quality critical (Postman State of the API 2024). According to SmartBear, 69% of organizations have increased their API testing budgets in 2024 (SmartBear State of Software Quality 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Compliance Testing para Infrastructure as Code: SOC2, HIPAA, PCI-DSS</title><link>https://yrkan.com/es/blog/compliance-testing-iac/</link><pubDate>Tue, 13 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/compliance-testing-iac/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El escaneo de compliance debe ocurrir en CI antes del deployment, no durante auditorias anuales&lt;/li&gt;
&lt;li&gt;Checkov, KICS y Trivy proveen policies pre-construidas mapeadas a SOC2, HIPAA, PCI-DSS y CIS benchmarks&lt;/li&gt;
&lt;li&gt;El error #1: ejecutar herramientas de compliance manualmente en lugar de como gates automatizados de CI&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos en industrias reguladas (salud, finanzas) o buscando certificacion SOC2
&lt;strong&gt;Omite si:&lt;/strong&gt; Estas construyendo herramientas internas sin requerimientos de compliance
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 10 minutos&lt;/p&gt;</description></item><item><title>Configuración de Entorno de Pruebas: Guía Completa</title><link>https://yrkan.com/es/blog/test-environment-setup/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-environment-setup/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Un entorno de pruebas bien configurado es la base del QA confiable. Según una encuesta de SmartBear, el 42% de los equipos identifica la inestabilidad del entorno como su principal bloqueador. Esta guía cubre aprovisionamiento IaC, Docker, gestión de datos de prueba y monitoreo con ejemplos completos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Un entorno de pruebas configurado adecuadamente es crítico para pruebas confiables y repetibles. Según la encuesta SmartBear State of Testing, el 42% de los equipos QA identifica la gestión del entorno de pruebas como su mayor desafío. Según una investigación de Docker, las organizaciones que usan entornos containerizados reducen el tiempo de configuración en un 70% y eliminan hasta el 80% de los fallos relacionados con el entorno. Siguiendo prácticas de Infrastructure as Code, containerizando con Docker y automatizando el refresco de datos de prueba, los equipos transforman entornos inestables en bases de pruebas estables y reproducibles.&lt;/p&gt;</description></item><item><title>Construir un Portafolio QA y Marca Personal: Guía Completa</title><link>https://yrkan.com/es/blog/building-qa-portfolio-personal-brand/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/building-qa-portfolio-personal-brand/</guid><description>&lt;p&gt;Construir un Portafolio QA y Marca Personal: Guía Completa es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the Bureau of Labor Statistics, software QA analyst positions are projected to grow 25% through 2032, much faster than average (BLS Occupational Outlook). According to Stack Overflow&amp;rsquo;s 2024 Developer Survey, the median QA engineer salary in the US is $110,000 (Stack Overflow Developer Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Construyendo tu Red en la Comunidad QA</title><link>https://yrkan.com/es/blog/networking-qa-community/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/networking-qa-community/</guid><description>&lt;p&gt;Construir una red profesional en la comunidad de QA es una de las actividades de carrera de mayor impacto disponibles para los profesionales de testing. Según una encuesta de LinkedIn, el 70% de las personas fueron contratadas a través de networking, y en campos especializados como la ingeniería de QA, las referencias de profesionales conocidos frecuentemente evitan largos procesos de contratación. Según un estudio del Professional Development Institute, los profesionales con redes activas logran roles senior 18 meses más rápido en promedio. Para los ingenieros de QA, la comunidad incluye espacios online (Testing Community Discord, foros ISTQB, Ministry of Testing), meetups locales y conferencias importantes.&lt;/p&gt;</description></item><item><title>Contenedorización para Testing: Guía Completa de Docker, Kubernetes y Testcontainers</title><link>https://yrkan.com/es/blog/containerization-for-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/containerization-for-testing/</guid><description>&lt;p&gt;Contenedorización para Testing: Guía Completa de Docker, Kubernetes y Testcontainers es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA report, organizations with high DevOps maturity have 4x lower change failure rates (DORA State of DevOps 2024). According to Puppet&amp;rsquo;s State of DevOps report, high-performing DevOps teams spend 44% less time on unplanned work (Puppet State of DevOps). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Contract Testing: Comunicación de Microservicios Sin Dolor</title><link>https://yrkan.com/es/blog/contract-testing-microservices-pact/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/contract-testing-microservices-pact/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El contract testing con Pact permite que los consumidores definan expectativas de API que los proveedores deben satisfacer, detectando cambios incompatibles antes de producción. Intégralo con un Pact Broker y usa verificaciones &lt;code&gt;can-i-deploy&lt;/code&gt; en CI/CD para desplegar microservicios con confianza.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;En arquitecturas de microservicios, los fallos de integración son la principal causa de incidentes en producción — según el reporte Postman State of the API 2024, el 40% de los desarrolladores cita los problemas de integración como su mayor desafío con las APIs. El contract testing aborda esto directamente al capturar las expectativas entre servicios y verificarlas de forma independiente, sin requerir que todos los servicios estén ejecutándose al mismo tiempo. A diferencia de los tests E2E, que son lentos y frágiles, los contract tests se ejecutan en milisegundos y dan a los desarrolladores feedback inmediato sobre cambios incompatibles. El framework Pact se ha convertido en el estándar de facto para el consumer-driven contract testing, con soporte para JavaScript, Python, Java, Ruby y Go. Los equipos que adoptan contract testing generalmente reducen significativamente los fallos de integración al detectar breaking changes en pull requests en lugar de en producción.&lt;/p&gt;</description></item><item><title>Control de Versiones de Artefactos de Pruebas: Estrategias Git, Branching y Documentación como Código</title><link>https://yrkan.com/es/blog/test-artifacts-version-control/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-artifacts-version-control/</guid><description>&lt;p&gt;Tratar los artefactos de prueba como código de primera clase con control de versiones se está convirtiendo en un diferenciador en organizaciones QA maduras: GitHub State of the Octoverse 2024 reporta que el 73% de los equipos de ingeniería de alto rendimiento colocan su código de test junto al código de aplicación, y los equipos que versionan su documentación de pruebas en Git detectan un 28% menos de regresiones porque los cambios de tests permanecen sincronizados con los cambios de código. A pesar de esto, muchos equipos QA siguen gestionando casos de prueba en hojas de cálculo o herramientas de test management desconectadas, creando una brecha entre lo que fue probado y lo que fue commiteado. La documentación como código trae el branching, merge, code review e integración CI/CD de Git a los artefactos de test.&lt;/p&gt;</description></item><item><title>Cost Estimation Testing para Infrastructure as Code: FinOps en CI/CD</title><link>https://yrkan.com/es/blog/cost-estimation-testing-iac/</link><pubDate>Wed, 14 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cost-estimation-testing-iac/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Infracost muestra el impacto de costos de cambios Terraform en cada PR — antes del deployment, no despues de la facturacion&lt;/li&gt;
&lt;li&gt;Las policies de costos pueden bloquear PRs que excedan umbrales (como los scanners de seguridad bloquean vulnerabilidades)&lt;/li&gt;
&lt;li&gt;El error #1: tratar las revisiones de costos como opcionales en lugar de gates automatizados&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con gasto cloud significativo o que han tenido sorpresas en facturas
&lt;strong&gt;Omite si:&lt;/strong&gt; Estas en tier gratuito o infraestructura de precio fijo
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 9 minutos&lt;/p&gt;</description></item><item><title>Cost Optimization para CI/CD</title><link>https://yrkan.com/es/blog/cost-optimization-for-ci-cd/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cost-optimization-for-ci-cd/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Reduce los costos de CI/CD con caché de dependencias, runners self-hosted, paralelización inteligente de tests y omitiendo builds innecesarios. Los equipos suelen reducir costos CI en 30-60% sin sacrificar fiabilidad.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los costos de CI/CD pueden aumentar rápidamente sin control. Sin optimización adecuada, los equipos pueden gastar miles de dólares mensualmente en minutos de build innecesarios, pruebas redundantes y asignación ineficiente de recursos. Esta guía proporciona estrategias avanzadas para reducir drásticamente tus costos de CI/CD mientras mantienes—o incluso mejoras—el rendimiento y confiabilidad del pipeline.&lt;/p&gt;</description></item><item><title>Criterios de Entrada y Salida en Testing: Cuándo Iniciar y Detener las Pruebas</title><link>https://yrkan.com/es/blog/entry-exit-criteria/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/entry-exit-criteria/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Los criterios de entrada definen cuándo puede comenzar el testing; los de salida cuándo está completo. Documéntalos en el plan de pruebas y úsalos como gates de calidad objetivos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los criterios de entrada y salida son de los gates de calidad más subutilizados en testing de software. Según el &lt;a href="https://www.istqb.org/certifications/certified-tester-foundation-level"&gt;syllabus ISTQB Foundation Level&lt;/a&gt;, los criterios de entrada verifican que los prerrequisitos se cumplan, mientras que los de salida confirman que los objetivos se alcanzaron — sin embargo, el World Quality Report 2024 de Capgemini encontró que el 54% de las organizaciones carecen de criterios formalmente definidos. El resultado: equipos que comienzan a probar sobre builds inestables y lanzan con niveles de calidad desconocidos. Según SmartBear, los equipos con criterios documentados reducen el ciclo de testing un 30% y detectan un 25% más de defectos antes del UAT. La diferencia entre &amp;ldquo;¿estamos listos?&amp;rdquo; como debate político versus medición objetiva depende de si los criterios se definieron antes de comenzar el sprint.&lt;/p&gt;</description></item><item><title>Cucumber BDD Tutorial: Guía Completa de Behavior Driven Development</title><link>https://yrkan.com/es/blog/cucumber-bdd-tutorial/</link><pubDate>Sat, 31 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cucumber-bdd-tutorial/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cucumber habilita BDD con tests escritos en inglés simple (sintaxis Gherkin)&lt;/li&gt;
&lt;li&gt;Feature files describen comportamiento: Given (precondiciones), When (acciones), Then (resultados)&lt;/li&gt;
&lt;li&gt;Step definitions enlazan pasos Gherkin a código de test real&lt;/li&gt;
&lt;li&gt;Scenario Outlines habilitan data-driven testing con tablas Examples&lt;/li&gt;
&lt;li&gt;Se integra con Selenium, TestNG, JUnit para automatización completa&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos que quieren tests legibles por negocio, colaboración entre QA y stakeholders
&lt;strong&gt;Omite si:&lt;/strong&gt; Equipo pequeño donde desarrolladores escriben todos los tests (testing tradicional más rápido)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 15 minutos&lt;/p&gt;</description></item><item><title>Cypress en Profundidad: Arquitectura, Debugging y Dominio del Network Stubbing</title><link>https://yrkan.com/es/blog/cypress-deep-dive/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cypress-deep-dive/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cypress se ejecuta dentro del navegador (no vía WebDriver), haciendo los tests más rápidos y confiables&lt;/li&gt;
&lt;li&gt;Usa &lt;code&gt;cy.intercept()&lt;/code&gt; para network stubbing — es la navaja suiza del mocking de APIs&lt;/li&gt;
&lt;li&gt;Debuggea con snapshots time-travel, &lt;code&gt;.debug()&lt;/code&gt;, y DevTools del navegador simultáneamente&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mejor para:&lt;/strong&gt; Equipos que prueban apps JavaScript modernas (React, Vue, Angular) que priorizan la experiencia de desarrollo&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Evitar si:&lt;/strong&gt; Necesitas soporte Safari, testing multi-tab, o testing de iframes cross-origin&lt;/p&gt;</description></item><item><title>Cypress vs Selenium: Comparación Detallada 2026</title><link>https://yrkan.com/es/blog/cypress-vs-selenium-comparison/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cypress-vs-selenium-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cypress&lt;/strong&gt;: Solo JavaScript, corre en navegador, debugging time-travel, espera automática&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Selenium&lt;/strong&gt;: Multi-lenguaje, protocolo WebDriver, soporte de navegadores más amplio, móvil via Appium&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Velocidad&lt;/strong&gt;: Cypress 2-3x más rápido secuencialmente; paralelo necesita Cloud pago ($75+/mes)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Debugging&lt;/strong&gt;: Cypress gana decisivamente — time-travel, snapshots DOM, screenshots automáticos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige Cypress&lt;/strong&gt; para: equipos JS, SPAs, desarrollo rápido de tests, prioridad debugging&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige Selenium&lt;/strong&gt; para: equipos multi-lenguaje, testing móvil, navegadores legacy, Grid enterprise&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mi opinión:&lt;/strong&gt; Si empiezas de cero con stack JavaScript, elige Cypress. Si necesitas multi-lenguaje o móvil, Selenium sigue siendo la elección correcta.&lt;/p&gt;</description></item><item><title>Dashboard de Métricas DevOps para QA: DORA Metrics, Estabilidad de Pruebas e Insights de Calidad</title><link>https://yrkan.com/es/blog/devops-metrics-dashboard-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/devops-metrics-dashboard-qa/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Las métricas DORA (Frecuencia de Despliegue, Lead Time, Change Failure Rate, MTTR) miden el rendimiento de entrega de software. QA mejora directamente las cuatro métricas habilitando despliegues más rápidos y confiables.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="la-importancia-estratégica-de-las-métricas-qa-en-devops"&gt;La Importancia Estratégica de las Métricas QA en DevOps &lt;a href="#la-importancia-estrat%c3%a9gica-de-las-m%c3%a9tricas-qa-en-devops" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la era de DevOps y la entrega continua, las métricas de calidad han evolucionado desde simples tasas de aprobación/fallo a indicadores sofisticados que correlacionan el rendimiento de las pruebas con resultados de negocio. Un dashboard de métricas bien diseñado no solo rastrea actividades de testing—proporciona insights accionables que impulsan la mejora continua, predicen problemas potenciales y demuestran el valor de la ingeniería de calidad a las partes interesadas.&lt;/p&gt;</description></item><item><title>Database DevOps para Automatización de Pruebas: Flyway, Liquibase y Testing de Esquemas</title><link>https://yrkan.com/es/blog/database-devops-test-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/database-devops-test-automation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Database DevOps aplica principios CI/CD a cambios de schema usando Flyway o Liquibase. Versiona tus migraciones, ejecútalas en entornos CI aislados, prueba rollbacks y valida la integridad de datos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="el-desafío-del-testing-de-bases-de-datos-en-devops"&gt;El Desafío del Testing de Bases de Datos en DevOps &lt;a href="#el-desaf%c3%ado-del-testing-de-bases-de-datos-en-devops" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los cambios en bases de datos son frecuentemente la parte más riesgosa de los despliegues de software. Los enfoques tradicionales de gestión de bases de datos - cambios manuales de esquema, entornos inconsistentes y falta de control de versiones - crean cuellos de botella que ralentizan los pipelines CI/CD y aumentan el riesgo de despliegue. Las prácticas modernas de DevOps demandan que los cambios de bases de datos sean probados, versionados y automatizados con el mismo rigor que el código de aplicación.&lt;/p&gt;</description></item><item><title>Database Performance Testing: Optimización de Consultas</title><link>https://yrkan.com/es/blog/database-performance-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/database-performance-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de rendimiento de BD usa planes EXPLAIN, logs de consultas lentas y tests de carga para identificar cuellos de botella. Perfila con volúmenes de datos similares a producción y prueba los límites del pool de conexiones.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El rendimiento de base de datos es crítico para la capacidad de respuesta de aplicaciones. Consultas lentas pueden causar problemas de rendimiento en todo el sistema.&lt;/p&gt;
&lt;p&gt;Para una comprensión completa del testing de bases de datos, consulta nuestra guía de &lt;a href="https://yrkan.com/es/blog/database-testing-deep-dive"&gt;pruebas de bases de datos en profundidad&lt;/a&gt;. El testing de rendimiento de BD se complementa con &lt;a href="https://yrkan.com/es/blog/api-performance-testing"&gt;pruebas de rendimiento de APIs&lt;/a&gt; para una visión holística del sistema. Además, integrar estas pruebas con &lt;a href="https://yrkan.com/es/blog/continuous-testing-devops"&gt;testing continuo en DevOps&lt;/a&gt; permite detectar regresiones tempranamente.&lt;/p&gt;</description></item><item><title>Database Testing Deep Dive: De Integridad a Rendimiento</title><link>https://yrkan.com/es/blog/database-testing-deep-dive/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/database-testing-deep-dive/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de BD cubre restricciones de integridad, corrección CRUD, procedimientos almacenados, rendimiento y migraciones. Testea tanto en la capa de aplicación como directamente contra la base de datos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las bases de datos son la fundación de la mayoría de las aplicaciones, almacenando datos críticos del negocio y potenciando funcionalidad central. Sin embargo, las pruebas de bases de datos a menudo reciben menos atención que las pruebas de aplicaciones, llevando a problemas de producción que van desde corrupción de datos hasta degradación catastrófica del rendimiento. Esta guía completa cubre los aspectos esenciales de las pruebas de bases de datos—desde asegurar la integridad de datos hasta validar migraciones complejas—equipando a los ingenieros de QA con estrategias prácticas para validación exhaustiva de bases de datos.&lt;/p&gt;</description></item><item><title>DDoS Testing: Probar Resiliencia del Sistema</title><link>https://yrkan.com/es/blog/ddos-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ddos-testing-guide/</guid><description>&lt;p&gt;Los ataques DDoS son una realidad creciente: según el Informe de Amenazas DDoS de Cloudflare, los ataques a la capa de aplicación aumentaron un 65% en 2023, con una duración promedio de 52 minutos. Sin embargo, muchos equipos tratan la resiliencia DDoS como algo secundario — descubriendo los puntos de falla solo cuando los atacantes los explotan en producción. El DDoS testing valida la capacidad de tu sistema para resistir y recuperarse de ataques volumétricos ejerciendo sistemáticamente cada capa defensiva: rate limiting, reglas de WAF, caché CDN, geo-blocking, límites de conexión y auto-scaling. Según OWASP, los ataques de disponibilidad siguen siendo uno de los 10 principales riesgos de seguridad para aplicaciones web. Las organizaciones que ejecutan pruebas estructuradas de resiliencia DDoS antes de los incidentes reportan tiempos de recuperación un 80% más rápidos. Esta guía te da un enfoque práctico por capas para probar tu infraestructura.&lt;/p&gt;</description></item><item><title>De Manual a Automatización: Guía Completa de Transición para QA Engineers</title><link>https://yrkan.com/es/blog/manual-to-automation-transition/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/manual-to-automation-transition/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Transita de testing manual a automatización aprendiendo un lenguaje (Python/JS), un framework (Selenium/Playwright) y construyendo proyectos reales de portafolio. Espera 6-12 meses para competencia básica en automatización con práctica diaria consistente.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La transición del testing manual a la automatización de pruebas es uno de los movimientos de carrera más impactantes que un ingeniero QA puede hacer. Las habilidades de automatización aumentan significativamente tu valor de mercado, expanden las oportunidades de carrera y te posicionan para roles senior. Sin embargo, el camino del testing manual a la automatización puede sentirse abrumador, especialmente si careces de antecedentes en programación.&lt;/p&gt;</description></item><item><title>Defect Life Cycle: Del Descubrimiento al Cierre</title><link>https://yrkan.com/es/blog/defect-life-cycle/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/defect-life-cycle/</guid><description>&lt;p&gt;El ciclo de vida de defectos es el proceso estructurado que gobierna cómo cada bug reportado avanza desde el descubrimiento inicial hasta el cierre final. Según investigación citada por &lt;a href="https://smartbear.com/"&gt;SmartBear&lt;/a&gt;, los equipos que siguen un proceso formal de gestión de defectos resuelven bugs &lt;strong&gt;hasta un 45% más rápido&lt;/strong&gt; que los equipos con tracking ad-hoc. El currículo ISTQB Foundation Level dedica una sección completa a la gestión de defectos, definiéndola como una de las competencias centrales de cualquier profesional QA certificado. Un lifecycle bien definido garantiza que ningún bug se pierda en el backlog, que la severidad y prioridad se asignen correctamente, y que la verificación siempre se realice antes del cierre.&lt;/p&gt;</description></item><item><title>Defect Taxonomy: Clasificación de Bugs y Análisis de Patrones</title><link>https://yrkan.com/es/blog/defect-taxonomy/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/defect-taxonomy/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Una taxonomía de defectos clasifica sistemáticamente los bugs por tipo, severidad, causa raíz y fase de detección. Usando ODC, los equipos identifican debilidades del proceso a partir de patrones de defectos y hacen mejoras basadas en datos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Una &lt;strong&gt;Defect Taxonomy&lt;/strong&gt; (Taxonomía de Defectos) proporciona un esquema de clasificación sistemático para bugs, permitiendo a los equipos analizar patrones de defectos, identificar causas raíz e implementar estrategias de prevención. Al categorizar defectos consistentemente, las organizaciones construyen datos valiosos para mejora de procesos, capacitación y métricas de calidad.&lt;/p&gt;</description></item><item><title>Detección de Anomalías de Rendimiento con IA: Más Allá de los Umbrales Estáticos</title><link>https://yrkan.com/es/blog/ai-performance-anomaly/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-performance-anomaly/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La detección de anomalías con IA captura &lt;strong&gt;73% más&lt;/strong&gt; problemas de rendimiento que el monitoreo basado en umbrales, reduciendo falsos positivos en &lt;strong&gt;65%&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Las líneas base dinámicas aprenden automáticamente patrones (diarios, semanales, estacionales), eliminando la necesidad de ajuste manual de umbrales&lt;/li&gt;
&lt;li&gt;Isolation Forest funciona mejor para métricas múltiples; LSTM sobresale en detección basada en tendencias con datos de series temporales&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Sistemas con patrones de tráfico variables, equipos que sufren fatiga por alertas, aplicaciones con alta relación señal-ruido requerida&lt;/p&gt;</description></item><item><title>Detección de Code Smells con IA: Encontrando Problemas en Automatización de Pruebas con ML</title><link>https://yrkan.com/es/blog/ai-code-smell-detection/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-code-smell-detection/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La IA detecta 85-95% de los code smells que los linters tradicionales no captan, incluyendo patrones específicos de tests como sleepy tests, eager tests y mystery guests&lt;/li&gt;
&lt;li&gt;Comienza con detección basada en reglas (CodeQL, ESLint), luego añade modelos ML (CodeBERT + Random Forest) para comprensión semántica&lt;/li&gt;
&lt;li&gt;Integra en CI/CD con umbral de confianza del 70-80% para reducir falsos positivos mientras detectas problemas reales&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con 500+ archivos de test, organizaciones sufriendo de tests flaky (&amp;gt;5% tasa de inestabilidad)&lt;/p&gt;</description></item><item><title>Detección de Drift en Infraestructura: Guía Completa de Gestión de Estado IaC</title><link>https://yrkan.com/es/blog/drift-detection-in-infrastructure/</link><pubDate>Wed, 21 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/drift-detection-in-infrastructure/</guid><description>&lt;h2 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Qué:&lt;/strong&gt; La detección de drift identifica diferencias entre tus definiciones IaC y la infraestructura realmente desplegada&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Por qué:&lt;/strong&gt; Los cambios manuales, despliegues fallidos y modificaciones externas causan drift de configuración que lleva a incidentes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas:&lt;/strong&gt; Terraform plan, AWS Config, driftctl, Spacelift, env0&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Métrica clave:&lt;/strong&gt; 100% de recursos rastreados con alertas de drift disparándose dentro de 1 hora del cambio&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Empieza aquí:&lt;/strong&gt; Programa ejecuciones diarias de &lt;code&gt;terraform plan&lt;/code&gt; y alerta sobre cualquier cambio detectado&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;El drift de infraestructura es un acumulador silencioso de riesgos. El equipo que hizo tres correcciones manuales en producción el trimestre pasado no las documentó — ahora el IaC y la realidad divergen, y nadie sabe en cuál confiar.&amp;rdquo; — Yuri Kan, Senior QA Lead&lt;/p&gt;</description></item><item><title>Deteccion de Drift en Infraestructura: Manteniendo el Estado de Terraform Sincronizado</title><link>https://yrkan.com/es/blog/drift-detection-infrastructure/</link><pubDate>Thu, 15 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/drift-detection-infrastructure/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El drift ocurre cuando la infraestructura real diverge del estado de Terraform — cambios manuales, ediciones en consola o applies fallidos&lt;/li&gt;
&lt;li&gt;driftctl escanea tu cuenta cloud y compara contra el estado, capturando recursos que Terraform desconoce&lt;/li&gt;
&lt;li&gt;El error #1: asumir que &lt;code&gt;terraform plan&lt;/code&gt; captura todo el drift (solo verifica recursos &lt;em&gt;en&lt;/em&gt; el estado)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con multiples personas accediendo consolas cloud o infraestructura heredada
&lt;strong&gt;Omite si:&lt;/strong&gt; Trabajas solo, todos los cambios van por Terraform y nunca tocas la consola
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 10 minutos&lt;/p&gt;</description></item><item><title>Detección de Sesgos en Modelos ML: Testing Ético de IA</title><link>https://yrkan.com/es/blog/bias-detection-ml/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/bias-detection-ml/</guid><description>&lt;p&gt;Detección de Sesgos en Modelos ML: Testing Ético de IA es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, by 2025, 70% of new applications will use AI or ML, up from less than 5% in 2020 (Gartner AI Forecast). According to McKinsey&amp;rsquo;s 2024 State of AI survey, 65% of organizations now use generative AI regularly, nearly double the 2023 figure (McKinsey State of AI 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Detección de Tests Flaky con Machine Learning: Combatiendo Tests Inestables</title><link>https://yrkan.com/es/blog/flaky-test-ml-detection/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/flaky-test-ml-detection/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La detección de tests inestables basada en ML analiza patrones históricos de ejecución con 85-92% de precisión, superando los métodos basados en umbrales. Construye pipelines de detección usando métricas de ejecución como características y entrena con al menos 30 días de historial.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los tests inestables consumen el 16% de todos los ciclos de cómputo CI en Google, lo que llevó a desarrollar detección basada en ML que identifica tests inestables antes de que desperdicien más recursos. Según investigaciones publicadas en la IEEE International Conference on Software Testing 2022, los modelos ML que analizan el historial de ejecución de tests alcanzan 85-92% de precisión — comparado con 60-70% para detección por umbrales simples. La clave: los tests inestables dejan firmas predecibles en los datos de ejecución. Tests que fallan de forma no aleatoria muestran patrones característicos en sus secuencias de fallo y distribuciones de tiempo. El equipo de Microsoft Azure DevOps redujo los incidentes de tests inestables en un 73% tras implementar detección temprana basada en ML. Esta guía cubre la construcción de un pipeline de detección ML: recolección de datos, ingeniería de características, selección de modelo e integración con CI/CD.&lt;/p&gt;</description></item><item><title>Detox: Testing Grey-Box para Aplicaciones React Native</title><link>https://yrkan.com/es/blog/detox-react-native-grey-box/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/detox-react-native-grey-box/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Detox proporciona testing E2E grey-box para React Native sincronizándose con el runtime JavaScript de la app. Esto elimina llamadas sleep() flaky, produce tests más rápidos que Appium y soporta iOS y Android.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Detox revoluciona el testing de React (como se discute en &lt;a href="https://yrkan.com/es/blog/mobile-testing-2025-ios-android-beyond"&gt;Mobile Testing in 2025: iOS, Android and Beyond&lt;/a&gt;) Native implementando un enfoque de testing grey-box que combina las ventajas de las metodologías white-box y black-box. Este framework aprovecha el conocimiento interno del runtime de React Native mientras prueba a través de la interfaz de usuario, permitiendo pruebas end-to-end confiables, rápidas y mantenibles.&lt;/p&gt;</description></item><item><title>Diseño Combinatorial de Pruebas: Cobertura Sistemática de Interacciones de Parámetros</title><link>https://yrkan.com/es/blog/combinatorial-test-design/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/combinatorial-test-design/</guid><description>&lt;p&gt;Diseño Combinatorial de Pruebas: Cobertura Sistemática de Interacciones de Parámetros es una disciplina crítica en el aseguramiento de calidad de software moderno. According to NIST, software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to research by Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Diseño de Casos de Prueba: El Arte de Crear Tests Efectivos</title><link>https://yrkan.com/es/blog/test-case-design-best-practices/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-case-design-best-practices/</guid><description>&lt;p&gt;El diseño de casos de prueba es la habilidad de mayor retorno en el testing manual: investigaciones del ISTQB muestran que los casos mal diseñados detectan solo el 30-40% de los defectos frente al 70-85% de los bien diseñados para la misma funcionalidad. La diferencia no está en la cantidad sino en aplicar sistemáticamente técnicas de diseño — partición de equivalencia, análisis de valor límite, tablas de decisión — apuntando a combinaciones de entrada con mayor probabilidad de revelar defectos. El SmartBear State of Software Quality 2024 reporta que los equipos con procesos estructurados de diseño encuentran 2,3 veces más defectos por hora de ejecución. Esta guía cubre el conjunto completo de herramientas: desde la anatomía de un caso bien escrito hasta técnicas avanzadas para condiciones límite, testing negativo y mantenimiento de casos en entornos ágiles.&lt;/p&gt;</description></item><item><title>DNS para Testers</title><link>https://yrkan.com/es/course/module-10-networking/dns-for-testers/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/dns-for-testers/</guid><description>&lt;h2 id="cómo-funciona-dns"&gt;Cómo Funciona DNS &lt;a href="#c%c3%b3mo-funciona-dns" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Sistema de Nombres de Dominio (DNS) es la guía telefónica de internet — traduce nombres de dominio legibles para humanos (como &lt;code&gt;api.example.com&lt;/code&gt;) a direcciones IP (como &lt;code&gt;93.184.216.34&lt;/code&gt;) que las computadoras usan para comunicarse. Cada request de red que tu aplicación hace comienza con un lookup DNS, haciendo de DNS la base de toda la comunicación en red.&lt;/p&gt;
&lt;h3 id="el-proceso-de-resolución"&gt;El Proceso de Resolución &lt;a href="#el-proceso-de-resoluci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Cuando tu navegador o herramienta de test necesita resolver un nombre de dominio, ocurre una cascada de consultas:&lt;/p&gt;</description></item><item><title>Documentación API para Testers: Ejemplos Request/Response y Estrategias de Prueba</title><link>https://yrkan.com/es/blog/api-documentation-qa/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-documentation-qa/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La documentación API orientada a QA necesita escenarios de error, casos extremos y credenciales de prueba—no solo caminos felices&lt;/li&gt;
&lt;li&gt;Las colecciones Postman sirven como documentación ejecutable que los testers pueden correr inmediatamente&lt;/li&gt;
&lt;li&gt;Documentar límites de tasa, idempotencia y reglas de validación permite testing negativo comprehensivo&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos QA trabajando con APIs REST, equipos creando documentación de prueba compartida&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; Monolito interno con superficie API limitada, fase de prototipado&lt;/p&gt;</description></item><item><title>Documentación de Checklist de Pruebas de Humo: Construyendo Pruebas de Verificación de Build Efectivas</title><link>https://yrkan.com/es/blog/smoke-test-checklist-docs/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/smoke-test-checklist-docs/</guid><description>&lt;p&gt;Las pruebas de humo son la primera barrera de calidad antes de cualquier ciclo completo de pruebas: según SmartBear State of Software Quality 2024, el 45% de los equipos tienen puertas de smoke automáticas en CI/CD, y los equipos con BVT bien documentado reducen el tiempo de detección de builds fallidos en un 60%. ISTQB define las Build Verification Tests como verificaciones superficiales pero amplias que cubren las funciones más críticas de la aplicación, con el objetivo de determinar si el build merece inversión adicional de pruebas. Una documentación de checklist sólida garantiza que estas validaciones sean reproducibles, ejecutables en 15-30 minutos y con criterios go/no-go inequívocos. En equipos que manejan varios deploys diarios, un checklist bien estructurado es la diferencia entre detectar un fallo crítico en minutos o descubrirlo horas después en producción. Esta guía muestra cómo construir, mantener y automatizar esa documentación con ejemplos prácticos para equipos ágiles.&lt;/p&gt;</description></item><item><title>Documentación de Contratos de Testing</title><link>https://yrkan.com/es/blog/test-contract-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-contract-documentation/</guid><description>&lt;p&gt;Los contratos de testing y SLAs son la capa de gobernanza que transforma expectativas informales de calidad en compromisos profesionales con responsabilidad. Según la Encuesta de Outsourcing TI de Gartner 2024, las organizaciones con SLAs formales de testing experimentan un 47% menos de incidentes de producción post-release comparado con quienes operan con acuerdos verbales. La investigación del SEI muestra que la ambigüedad de alcance representa el 52% de los fallos en engagements de QA — no las brechas de capacidad técnica. Un contrato bien estructurado protege a ambas partes: da a los equipos de QA autoridad clara para definir límites de cobertura y da a los stakeholders entregables medibles para exigir responsabilidad.&lt;/p&gt;</description></item><item><title>Documentación de Dashboard de Calidad</title><link>https://yrkan.com/es/blog/quality-dashboard-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/quality-dashboard-documentation/</guid><description>&lt;p&gt;Los dashboards de calidad transforman datos brutos de testing en insights accionables que guían las decisiones de lanzamiento y la estrategia de calidad. Según una encuesta de Gartner, las organizaciones con dashboards maduros de métricas de calidad reducen las tasas de defectos escapados en un 40% y toman decisiones de go/no-go de lanzamiento 3x más rápido. Según el State of Testing Report 2023 de SmartBear, el 72% de los equipos de QA reportan que la falta de visibilidad de calidad en tiempo real es su principal impedimento para la entrega continua. Para los QA leads y gerentes de ingeniería, un dashboard de calidad bien diseñado centraliza KPIs (tasas de aprobación de pruebas, densidad de defectos, cobertura de automatización, tiempo de ciclo), conecta múltiples fuentes de datos y entrega vistas específicas para cada stakeholder.&lt;/p&gt;</description></item><item><title>Documentación de Datos de Prueba: Catalogación y Gestión de Activos de Testing</title><link>https://yrkan.com/es/blog/test-data-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-data-documentation/</guid><description>&lt;p&gt;La documentación de datos de prueba es uno de los artefactos de QA más frecuentemente ignorados — y uno de los más costosos de ignorar. Según el SmartBear State of Software Quality 2024, los equipos con datos de prueba documentados y versionados experimentan un 43% menos de fallos de prueba por inconsistencias de datos y incorporan a nuevos ingenieros de QA 2,6 veces más rápido. La investigación del Software Engineering Institute muestra que los datos de prueba no documentados son la segunda causa más común de fallos de prueba no reproducibles. El problema se agrava con el tiempo: un dataset que &amp;ldquo;todos saben&amp;rdquo; cómo usar se vuelve opaco cuando los miembros del equipo se van.&lt;/p&gt;</description></item><item><title>Documentación de Frameworks de Automatización de Pruebas: Guía Completa</title><link>https://yrkan.com/es/blog/test-automation-framework-docs/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-automation-framework-docs/</guid><description>&lt;p&gt;La documentación del framework de automatización es una de las inversiones de mayor retorno que puede hacer un equipo QA: SmartBear State of Software Quality 2024 reporta que el 52% de los equipos cita la &amp;ldquo;documentación deficiente&amp;rdquo; como la principal barrera para la adopción de automatización, y los equipos con frameworks bien documentados incorporan nuevos ingenieros de automatización 3 veces más rápido. A pesar de esto, la documentación del framework suele ser lo último que se escribe y lo primero que se abandona bajo presión de deadlines. El resultado: silos de conocimiento, utilidades duplicadas, patrones inconsistentes y riesgo de bus-factor. Esta guía ofrece un enfoque sistemático para documentar frameworks de automatización — desde la documentación de arquitectura hasta los flujos de mantenimiento que mantienen la documentación actualizada sin esfuerzo heroico.&lt;/p&gt;</description></item><item><title>Documentación de Informes de Incidentes: Guía Completa para Equipos QA</title><link>https://yrkan.com/es/blog/incident-report-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/incident-report-documentation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Los informes de incidente efectivos incluyen cronología, evaluación de impacto, análisis de causa raíz con 5 Por Qués y acciones preventivas con responsables. Escribe el informe preliminar en 24 horas y completa el post-mortem en 5 días hábiles. Los post-mortems sin culpa reducen el MTTR un 30%.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las organizaciones con informes de incidentes estructurados reducen su tiempo medio de resolución (MTTR) un 30% frente a equipos sin procesos formales de post-mortem, según el DORA State of DevOps Report 2024. El equipo de Google SRE fue pionero de la cultura de post-mortem sin culpa. Según el PagerDuty State of Digital Operations, los equipos que realizan post-mortems dentro de los 5 días tienen 3 veces más probabilidad de implementar acciones preventivas efectivas. La técnica de los 5 Por Qués se aplica en el 67% de los post-mortems globalmente. Esta guía cubre el framework completo de informes de incidentes y post-mortem.&lt;/p&gt;</description></item><item><title>Documentación de Procesos de Prueba: Estandarización de QA en Organizaciones</title><link>https://yrkan.com/es/blog/test-process-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-process-documentation/</guid><description>&lt;p&gt;Según el World Quality Report 2024, las organizaciones con procesos de testing formalmente documentados resuelven incidentes de calidad &lt;strong&gt;2,7 veces más rápido&lt;/strong&gt; y experimentan &lt;strong&gt;38% menos&lt;/strong&gt; fallas de prueba relacionadas con el entorno que los equipos que dependen de prácticas informales. La investigación de productividad de ingeniería de Gartner 2024 encontró que las empresas en nivel TMMi 3 o superior lanzan software &lt;strong&gt;2,1 veces más rápido&lt;/strong&gt; con &lt;strong&gt;34% menos&lt;/strong&gt; defectos en producción — sin embargo, solo el 23% de las organizaciones encuestadas han documentado sus procesos de prueba más allá de los planes de proyecto individuales. La documentación de procesos de prueba define &lt;em&gt;cómo&lt;/em&gt; se realiza el testing en toda la organización: codificando política, estrategia, responsabilidades RACI y estándares de herramientas en documentos de referencia vivos.&lt;/p&gt;</description></item><item><title>Documentación de Pruebas con IA: Documentación Automatizada de Capturas a Insights</title><link>https://yrkan.com/es/blog/ai-test-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-test-documentation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La documentación potenciada por IA reduce el tiempo de documentación manual en &lt;strong&gt;75%&lt;/strong&gt; mediante análisis automatizado de capturas y extracción de pasos de video&lt;/li&gt;
&lt;li&gt;Los modelos de visión generan reportes de bugs completos desde capturas con &lt;strong&gt;90%+ de precisión&lt;/strong&gt;, incluyendo análisis de causa raíz&lt;/li&gt;
&lt;li&gt;El reconocimiento de patrones a través de ejecuciones de pruebas identifica pruebas inestables, problemas de entorno y degradación de rendimiento automáticamente&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mejor para:&lt;/strong&gt; Equipos gastando &amp;gt;10 horas/semana en documentación, aplicaciones con cambios frecuentes de UI, organizaciones con reportes de bugs inconsistentes&lt;/p&gt;</description></item><item><title>Documentación de Pruebas de Carga: Testing de Rendimiento a Escala</title><link>https://yrkan.com/es/blog/load-test-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/load-test-documentation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La documentación de load testing captura objetivos de testing, escenarios de carga, baselines de performance, umbrales SLA y hallazgos de cuellos de botella. Estructura reportes con resumen ejecutivo, configuración de tests, análisis de resultados y recomendaciones de remediación.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La documentación de pruebas de carga captura la complejidad del testing de rendimiento a escala, proporcionando información esencial sobre el comportamiento del sistema bajo estrés. La documentación efectiva de pruebas de carga abarca escenarios de prueba, líneas base de rendimiento, identificación de cuellos de botella y planificación de capacidad. Esta guía explora enfoques exhaustivos para documentar los esfuerzos de pruebas de carga, asegurando que los equipos puedan reproducir pruebas, rastrear tendencias de rendimiento y tomar decisiones informadas sobre escalamiento.&lt;/p&gt;</description></item><item><title>Documentación de Pruebas de Historias de Usuario: De Criterios de Aceptación a Validación de Pruebas</title><link>https://yrkan.com/es/blog/user-story-testing-docs/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/user-story-testing-docs/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La documentación de testing de user stories conecta criterios de aceptación con casos de prueba con trazabilidad completa. Escribe casos de prueba en formato BDD (Given/When/Then) desde cada criterio de aceptación. Vincula todo en tu herramienta de gestión de tests para sprint review y evidencia de auditoría.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La documentación de testing de user stories crea la cadena de trazabilidad desde requisitos de negocio hasta comportamiento de software verificado, permitiendo a los equipos demostrar que cada necesidad del usuario fue probada y validada. According to the 2024 State of Agile Report by Digital.ai, el 94% de las organizaciones practican alguna forma de metodología ágil, haciendo el trabajo basado en user stories el modo dominante de desarrollo. According to the World Quality Report 2024, solo el 38% de los equipos ágiles mantienen trazabilidad sistemática entre user stories y casos de prueba, creando brechas de visibilidad en el sprint review y riesgos de cumplimiento en auditorías. La documentación efectiva de testing de user stories cierra la brecha entre criterios de aceptación y ejecución de tests, proporcionando evidencia de completitud de la story. Esta guía cubre extracción de casos de prueba desde stories, escritura en formato BDD, matrices de trazabilidad y validación de Definition of Done.&lt;/p&gt;</description></item><item><title>Documentación de Pruebas de Integración: Guía Completa de Contratos API e Interfaces de Sistema</title><link>https://yrkan.com/es/blog/integration-test-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/integration-test-documentation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La documentación de tests de integración cubre escenarios de límites de servicio, contratos API, validación de flujo de datos y manejo de fallos. Documenta entornos de prueba con URLs de servicio, requisitos de versión y seeds de BD. Usa Pact para documentación de contratos viva.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El testing de integración encuentra el 35% de todos los bugs de producción que los tests unitarios pasan por alto, según el State of Testing 2024 de SmartBear. El costo oculto de la mala documentación de tests de integración son las 2-3 horas que los ingenieros pasan recreando la configuración del entorno. Según el &lt;a href="https://www.computer.org/"&gt;IEEE Software Engineering Institute&lt;/a&gt;, los equipos con documentación completa reducen el tiempo de incorporación un 60% y los costos de mantenimiento de tests un 45%. La documentación de contract testing con Pact crea documentación viva que detecta automáticamente cambios que rompen la compatibilidad. En arquitecturas de microservicios — donde una sola solicitud puede atravesar 5-10 servicios — documentar el contrato, flujo de datos y comportamiento ante fallos en cada punto de integración no es opcional sino esencial para la confiabilidad del sistema.&lt;/p&gt;</description></item><item><title>Documentación de Pruebas de Migración: Guía Completa para Transiciones de Sistemas</title><link>https://yrkan.com/es/blog/migration-test-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/migration-test-documentation/</guid><description>&lt;p&gt;El testing de migración es una de las actividades de mayor riesgo en ingeniería de software, donde la documentación incompleta lleva directamente a pérdida de datos, tiempo de inactividad y fallos de cumplimiento. Según Gartner, el 83% de los proyectos de migración de datos fallan o superan su presupuesto debido a testing y planificación inadecuados. IDC estima que la mala calidad de datos le cuesta a las organizaciones un promedio de $15 millones por año. Ya sea migrando de Oracle a PostgreSQL, moviendo sistemas a AWS, o actualizando monolitos legacy, la documentación integral asegura integridad de datos y continuidad del negocio.&lt;/p&gt;</description></item><item><title>Documentación de Pruebas de Seguridad: Checklists OWASP, Reportes de Vulnerabilidades y Pruebas de Penetración</title><link>https://yrkan.com/es/blog/security-test-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/security-test-documentation/</guid><description>&lt;p&gt;La documentacion de pruebas de seguridad transforma los hallazgos de seguridad de descubrimientos puntuales en conocimiento institucional que previene la recurrencia de vulnerabilidades y demuestra la postura de cumplimiento a los auditores. Segun el Ponemon Institute Cost of a Data Breach Report 2023, las organizaciones con programas maduros de documentacion de seguridad y pruebas contienen brechas un 60% mas rapido y reducen el costo promedio de la brecha de $4,5M a $2,1M. Segun investigaciones de OWASP, los equipos que mantienen documentacion estructurada de pruebas de seguridad cubriendo el OWASP Top 10 detectan un 45% mas de problemas de seguridad durante el desarrollo. Para los ingenieros de QA y equipos de seguridad, la documentacion comprensiva incluye checklists de OWASP, plantillas de informes de vulnerabilidades y formatos de resultados de pruebas de penetracion.&lt;/p&gt;</description></item><item><title>Documentación de Pruebas Móviles: Guía Completa para Testing de Dispositivos</title><link>https://yrkan.com/es/blog/mobile-test-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-test-documentation/</guid><description>&lt;p&gt;Según un estudio del World Quality Report 2023, el testing móvil ahora representa el 42% de todos los esfuerzos de testing en las organizaciones. Sin embargo, la documentación integral de testing móvil sigue siendo una de las áreas más descuidadas en la práctica de QA. Una investigación de Sogeti encontró que los equipos con prácticas maduras de documentación reducen el tiempo de ciclo de regresión hasta en un 30%. La documentación efectiva de testing móvil cubre matrices de dispositivos, configuraciones de entorno de prueba, bibliotecas de casos de prueba para características nativas y runbooks de frameworks de automatización.&lt;/p&gt;</description></item><item><title>Documentación de Suite de Regresión: Guía de Estrategia Completa</title><link>https://yrkan.com/es/blog/regression-suite-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/regression-suite-documentation/</guid><description>&lt;p&gt;La documentación de suites de regresión transforma una colección de casos de prueba en un activo de calidad estratégico que sobrevive a cambios de equipo, migraciones de herramientas y evoluciones del producto. Según el Capgemini World Quality Report 2023, las organizaciones con suites de regresión bien documentadas gastan un 35% menos de tiempo en mantenimiento de pruebas y logran ciclos de regresión un 40% más rápidos en comparación con equipos con documentación ad-hoc. Según un estudio de IBM Research, las suites de regresión sin documentar acumulan deuda técnica a una tasa del 15-20% anual — la mitad de la suite se vuelve inmantenible en 3-4 años sin prácticas de documentación estructuradas. Para los QA leads y gerentes de ingeniería, la documentación comprensiva de suites de regresión cubre criterios de selección de pruebas, calendarios de ejecución, flujos de trabajo de mantenimiento e integración con control de versiones.&lt;/p&gt;</description></item><item><title>Documentación de Traspaso de Pruebas: Guía Esencial para Transiciones QA</title><link>https://yrkan.com/es/blog/test-handover-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-handover-documentation/</guid><description>&lt;p&gt;Según la investigación del Project Management Institute (PMI), las organizaciones pierden un promedio de &lt;strong&gt;$50 millones por año&lt;/strong&gt; por fallos en la transferencia de conocimiento — y la documentación de traspaso de QA deficiente está entre las principales causas de picos de regresión y caídas de calidad durante las transiciones del equipo. La encuesta ISTQB de Competencias del Tester 2024 encontró que el &lt;strong&gt;73% de los profesionales de QA&lt;/strong&gt; han experimentado una transición de equipo sin documentación de traspaso adecuada, con el 45% reportando degradación de calidad medible como resultado. La documentación de traspaso de pruebas no es un lujo — es un mecanismo de mitigación de riesgos. Cuando un QA engineer senior deja un proyecto, su conocimiento institucional — los workarounds no documentados, las pruebas inestables conocidas, los casos borde que solo aparecen en entornos específicos — se va con él a menos que haya sido capturado. Esta guía proporciona las plantillas, listas de verificación y procesos estructurados para que ese conocimiento permanezca en el equipo, no en el individuo.&lt;/p&gt;</description></item><item><title>Documentación del Entorno de Pruebas: Guía de Configuración, Dependencias y Gestión</title><link>https://yrkan.com/es/blog/test-environment-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-environment-documentation/</guid><description>&lt;p&gt;Según el informe Gartner DevOps 2024, los problemas relacionados con entornos representan el &lt;strong&gt;38% de las ejecuciones de pruebas fallidas&lt;/strong&gt; — más que las pruebas inestables o los datos de prueba deficientes combinados. La investigación del World Quality Report 2024 encontró que los equipos con documentación completa del entorno de pruebas invierten &lt;strong&gt;2,7 veces menos tiempo solucionando problemas&lt;/strong&gt; del entorno e incorporan a nuevos ingenieros un 45% más rápido. Sin embargo, la mayoría de las organizaciones tratan la documentación del entorno como una ocurrencia tardía, actualizándola solo después de incidentes. La documentación del entorno de pruebas no es solo un artefacto de referencia — es el contrato operativo entre tu infraestructura, tu equipo de QA y tu pipeline de releases. Cubre qué servicios existen, cómo están configurados, quién tiene acceso, cómo se actualizan los datos y qué hacer cuando algo falla. Bien elaborada, elimina la clase de errores &amp;ldquo;funciona en mi máquina&amp;rdquo; y le da a cada miembro del equipo igual visibilidad de la infraestructura de testing que sustenta todo tu proceso de calidad.&lt;/p&gt;</description></item><item><title>Documentación UAT: Guía Completa para Documentación de Pruebas de Aceptación del Usuario</title><link>https://yrkan.com/es/blog/uat-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/uat-documentation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La documentación UAT incluye scripts de test con criterios de aceptación, criterios de entrada/salida, registro de defectos y un documento formal de sign-off. Escribe en lenguaje de negocio para stakeholders no técnicos. Obtén firmas antes del despliegue en producción.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La documentación de Pruebas de Aceptación del Usuario (UAT) cierra la brecha entre la calidad técnica y los requisitos de negocio, proporcionando evidencia formal de que un sistema cumple las expectativas de los stakeholders antes del despliegue en producción. According to the Standish Group CHAOS Report 2023, la participación insuficiente del usuario es la segunda causa más común de fracaso de proyectos, contribuyendo al 15% de los proyectos IT fallidos. According to the World Quality Report 2024, las organizaciones con procesos UAT estructurados reportan un 38% menos de defectos post-release y un 52% menos de escalaciones de proyectos. La documentación UAT crea el marco estructurado que asegura que las personas correctas testean las cosas correctas y confirman formalmente su aceptación. Esta documentación sirve tres propósitos: guiar a los testers (scripts de test con criterios de aceptación claros), capturar resultados (registro de defectos y formularios de feedback) y proporcionar evidencia legal/de auditoría (documentos de sign-off firmados). Esta guía cubre la estructura completa de documentación UAT desde el plan de test hasta el sign-off, incluyendo plantillas para cada tipo de documento.&lt;/p&gt;</description></item><item><title>Documento de Estimación de Pruebas: Guía Completa para el Cálculo Preciso del Esfuerzo de Testing</title><link>https://yrkan.com/es/blog/test-estimation-document/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-estimation-document/</guid><description>&lt;p&gt;Según el Standish Group CHAOS Report 2024, el &lt;strong&gt;71% de los proyectos de software superan sus estimaciones de tiempo originales&lt;/strong&gt;, con la estimación inadecuada de pruebas citada como uno de los tres principales factores contribuyentes. La investigación del Software Engineering Institute encontró que los equipos que usan documentos de estimación estructurados — combinando métodos analíticos con líneas de base históricas — logran &lt;strong&gt;40-55% más de precisión&lt;/strong&gt; en sus pronósticos que los equipos que se basan en estimaciones intuitivas. Sin embargo, la mayoría de los equipos de QA todavía estiman de manera informal, frecuentemente bajo presión de tiempo y sin supuestos documentados. Un Documento de Estimación de Pruebas adecuado no es solo un número en una hoja de cálculo — es un artefacto formal que captura tu metodología, los límites del alcance, los factores de riesgo y la lógica de contingencia. Le da a los interesados números transparentes y defendibles, y le da a tu equipo la protección de los supuestos documentados cuando la realidad diverge del plan.&lt;/p&gt;</description></item><item><title>Dynamic Testing: Tester en Acción</title><link>https://yrkan.com/es/blog/dynamic-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/dynamic-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dynamic testing&lt;/strong&gt;: Ejecutar código para validar comportamiento, funcionalidad y performance&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Principio clave&lt;/strong&gt;: Correr el software con inputs reales y verificar outputs reales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Niveles principales&lt;/strong&gt;: Unit → Integration → System → Acceptance testing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Técnicas&lt;/strong&gt;: Black box (input/output), white box (caminos en el código), grey box (conocimiento parcial)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica&lt;/strong&gt;: Seguir la pirámide de tests — muchos unit, menos integration, mínimos E2E&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automatizá&lt;/strong&gt;: Tests dinámicos pertenecen al CI/CD para detectar regresiones inmediatamente&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;</description></item><item><title>Emulación y Limitación de Red</title><link>https://yrkan.com/es/course/module-10-networking/network-emulation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/network-emulation/</guid><description>&lt;h2 id="comprendiendo-emulación-de-red"&gt;Comprendiendo Emulación de Red &lt;a href="#comprendiendo-emulaci%c3%b3n-de-red" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre emulación de red desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden emulación de red pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Equivalence Partitioning: Dividiendo Datos en Clases</title><link>https://yrkan.com/es/blog/equivalence-partitioning/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/equivalence-partitioning/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La partición de equivalencia agrupa entradas en clases con comportamiento idéntico y testea un representante de cada clase. Combinada con análisis de valores límite, provee cobertura eficiente sin testing exhaustivo.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Probar cada valor de entrada posible es imposible. Un campo de contraseña simple que acepta 8-32 caracteres tiene miles de millones de entradas potenciales. El &lt;a href="https://www.istqb.org/certifications/certified-tester-foundation-level"&gt;syllabus ISTQB Foundation Level&lt;/a&gt; identifica la partición de equivalencia como una de las cuatro técnicas fundamentales de diseño de pruebas de caja negra. Según investigaciones publicadas por &lt;a href="https://www.computer.org/"&gt;IEEE Computer Society&lt;/a&gt;, esta técnica reduce los conjuntos de pruebas un 60-80% manteniendo tasas de detección de defectos comparables. Boris Beizer demostró en su obra fundamental &lt;em&gt;Software Testing Techniques&lt;/em&gt; que la partición sistemática detecta el 85% de los defectos relacionados con entradas usando solo una fracción de los casos de prueba del testing exhaustivo. ¿Cómo probar de manera integral sin pasar años escribiendo casos de prueba?&lt;/p&gt;</description></item><item><title>Escritura de Test Charters para Pruebas Exploratorias: Estructura, Heurísticas y Reportes de Sesión</title><link>https://yrkan.com/es/blog/test-charter-writing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-charter-writing/</guid><description>&lt;p&gt;Los test charters son la base del testing exploratorio disciplinado: investigaciones del programa BBST (Black Box Software Testing) muestran que las sesiones de exploración guiadas por charters escritos encuentran un 40-60% más de bugs accionables que la exploración no guiada de igual duración. Sin embargo, según la encuesta State of Testing 2024, menos del 35% de los equipos escribe charters consistentemente antes de sesiones exploratorias. Un charter bien estructurado define la misión, enfoca la atención del tester en las áreas de mayor riesgo, especifica los recursos y herramientas necesarios y establece un límite de tiempo realista — habilitando tanto el descubrimiento creativo como la documentación profesional de qué fue y qué no fue probado.&lt;/p&gt;</description></item><item><title>Escritura Técnica para QA: Dominando las Habilidades de Documentación</title><link>https://yrkan.com/es/blog/technical-writing-qa-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/technical-writing-qa-documentation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — La escritura técnica es un multiplicador de fuerza para las carreras QA. Según una encuesta de SmartBear, los equipos con buenas prácticas de documentación resuelven bugs un 50% más rápido. Esta guía cubre reportes de bugs, planes de prueba, docs de API y RFCs con ejemplos prácticos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La escritura técnica es una de las habilidades más subestimadas pero críticas para los profesionales de QA. Según una encuesta de SmartBear State of Software Quality, la documentación de baja calidad se cita como uno de los 5 principales contribuyentes a retrasos y retrabajo en proyectos de software. Según una investigación de la comunidad Write the Docs, los escritores técnicos que contribuyen a la documentación para desarrolladores reducen el volumen de tickets de soporte en un promedio del 27%. La capacidad de comunicar información técnica de manera clara puede amplificar dramáticamente tu impacto como ingeniero QA.&lt;/p&gt;</description></item><item><title>Espresso &amp; XCUITest: Dominando Frameworks Nativos de Testing Mobile</title><link>https://yrkan.com/es/blog/espresso-xcuitest-native-frameworks/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/espresso-xcuitest-native-frameworks/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Espresso (Android) y XCUITest (iOS) son frameworks nativos que ejecutan en proceso con la app, produciendo tests 2-5 veces más rápidos y confiables que herramientas cross-platform.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Espresso (como se discute en &lt;a href="https://yrkan.com/es/blog/mobile-testing-2025-ios-android-beyond"&gt;Mobile Testing in 2025: iOS, Android and Beyond&lt;/a&gt;) (como se discute en &lt;a href="https://yrkan.com/es/blog/appium-2-architecture-cloud"&gt;Appium 2.0: New Architecture and Cloud Integration for Modern Mobile Testing&lt;/a&gt;) (como se discute en &lt;a href="https://yrkan.com/es/blog/detox-react-native-grey-box"&gt;Detox: Grey-Box Testing for React Native Applications&lt;/a&gt;) y XCUITest representan los enfoques oficiales de Google y Apple para el testing móvil nativo, proporcionando integración profunda con sus respectivas plataformas. Estos frameworks ofrecen rendimiento superior, confiabilidad y acceso a características específicas de la plataforma que las herramientas cross-platform no pueden igualar.&lt;/p&gt;</description></item><item><title>Estrategia de Caching de Respuestas API para Aplicaciones Móviles: Políticas de Caché, Soporte Offline y Estrategias de Sincronización</title><link>https://yrkan.com/es/blog/api-caching-mobile-strategy/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-caching-mobile-strategy/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Elige cache-first para datos de lectura intensiva (perfiles, catálogos) y network-first para contenido sensible al tiempo (feeds, notificaciones)&lt;/li&gt;
&lt;li&gt;Implementa caching multicapa: HTTP cache (OkHttp) para capa de red + Room/SQLite para persistencia + LRU en memoria para datos calientes&lt;/li&gt;
&lt;li&gt;Prueba escenarios offline sistemáticamente—cache hit/miss, expiración, invalidación y límites de almacenamiento bajo condiciones de red reales&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos construyendo apps móviles con requisitos offline o condiciones de red inestables
&lt;strong&gt;No recomendado si:&lt;/strong&gt; Tu app es puramente online sin necesidades de funcionalidad offline
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 15 minutos&lt;/p&gt;</description></item><item><title>Estrategia de Testing Basada en Riesgos: Optimizando Esfuerzo de Pruebas Mediante Priorización de Riesgo de Negocio</title><link>https://yrkan.com/es/blog/risk-based-strategy/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/risk-based-strategy/</guid><description>&lt;p&gt;La estrategia de testing basada en riesgos es la práctica de asignar el esfuerzo de prueba proporcionalmente a la probabilidad e impacto de los fallos potenciales, en lugar de intentar una cobertura exhaustiva de todos los casos de prueba posibles. Según el Informe de Calidad de Software de Capers Jones, los enfoques basados en riesgos reducen las tasas de escape de defectos entre un 35-50% en comparación con estrategias de testing aleatorias utilizando el mismo presupuesto de prueba. Según investigaciones de Dorothy Graham y Erik van Veendaal publicadas en materiales de certificación RSTQB, los equipos que aplican testing formal basado en riesgos logran un 45% mejor cobertura de áreas de negocio de alta prioridad dentro de las mismas restricciones de tiempo. Para los QA leads y gestores de prueba, la estrategia basada en riesgos significa crear una matriz de riesgos.&lt;/p&gt;</description></item><item><title>Estrategia de Testing de Feature Flags: LaunchDarkly, Flagsmith y A/B Testing para QA</title><link>https://yrkan.com/es/blog/feature-flags-testing-strategy/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/feature-flags-testing-strategy/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La estrategia de testing de feature flags requiere validar rutas habilitadas/deshabilitadas, probar combinaciones de flags en condiciones de frontera e integrar el control de flags en pipelines CI/CD. Usa LaunchDarkly o Flagsmith para controlar flags programáticamente en pruebas.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los feature flags los usan el 82% de los equipos de desarrollo para control de despliegues, pero solo el 37% prueba sistemáticamente ambas rutas — habilitada y deshabilitada — según la Feature Management Survey 2024 de LaunchDarkly. La explosión combinatoria es real: 10 flags crean 1.024 estados posibles; 20 flags, más de un millón. La solución es una estrategia basada en riesgos, no la cobertura exhaustiva de combinaciones. Equipos como Netflix, Spotify y Facebook usan flags para entrega continua mientras mantienen la calidad mediante pruebas dirigidas de combinaciones de rutas críticas, validación automatizada de rollback e integraciones LaunchDarkly/Flagsmith con frameworks de prueba. Esta guía cubre la estrategia completa: taxonomía de flags, patrones de integración LaunchDarkly, validación de A/B tests, pruebas de despliegues progresivos y gestión del ciclo de vida.&lt;/p&gt;</description></item><item><title>Estrategia de Versionado de API para Clientes Móviles: Compatibilidad Retroactiva, Actualizaciones Forzadas y A/B Testing</title><link>https://yrkan.com/es/blog/api-versioning-mobile/</link><pubDate>Sat, 17 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-versioning-mobile/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Usa versionado por URL para cambios mayores (v1 → v2), versionado por header para cambios menores—cada uno tiene diferentes implicaciones de caché&lt;/li&gt;
&lt;li&gt;Siempre soporta mínimo N-1 versiones; implementa actualización forzada solo para correcciones críticas de seguridad, no para nuevas funcionalidades&lt;/li&gt;
&lt;li&gt;Haz A/B testing de nuevas versiones de API con 10-20% de rollout primero—bucketing basado en hash asegura experiencia consistente por usuario&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Para quién:&lt;/strong&gt; Desarrolladores móviles, equipos backend que soportan clientes móviles, cualquiera gestionando ecosistemas API multi-versión&lt;/p&gt;</description></item><item><title>Estrategias de Caché para CI/CD más Rápido</title><link>https://yrkan.com/es/blog/caching-strategies-for-faster-ci-cd/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/caching-strategies-for-faster-ci-cd/</guid><description>&lt;p&gt;Estrategias de Caché para CI/CD más Rápido es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA State of DevOps report, elite performing teams deploy 973x more frequently than low performers (DORA State of DevOps 2024). According to GitLab&amp;rsquo;s 2024 DevSecOps report, teams using CI/CD fix bugs 60% faster than those without automation (GitLab DevSecOps Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Estrategias de Despliegue para Equipos QA: Blue-Green, Canary y Rollouts Progresivos</title><link>https://yrkan.com/es/blog/deployment-strategies-qa-teams/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/deployment-strategies-qa-teams/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Las estrategias blue-green, canary y rollout progresivo reducen el riesgo de despliegue controlando cómo el nuevo código llega a los usuarios. El rol de QA es validar entornos, monitorear métricas y definir criterios de rollback.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="la-evolución-de-las-pruebas-de-despliegue"&gt;La Evolución de las Pruebas de Despliegue &lt;a href="#la-evoluci%c3%b3n-de-las-pruebas-de-despliegue" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las estrategias modernas de despliegue han transformado cómo los equipos QA abordan las pruebas. Atrás quedaron los días cuando las pruebas terminaban en entornos de staging. Los sofisticados patrones de despliegue de hoy—blue-green, canary, actualizaciones rolling y feature flags—requieren que los equipos QA adapten sus estrategias de prueba para igualar la complejidad y velocidad de los pipelines modernos de entrega.&lt;/p&gt;</description></item><item><title>Estrategias de Pruebas de Kubernetes: Testing de Pods, Validación de Service Mesh y Pruebas de Helm Charts</title><link>https://yrkan.com/es/blog/kubernetes-testing-strategies/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/kubernetes-testing-strategies/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de Kubernetes requiere validar manifiestos, Helm charts, configuraciones de service mesh y comportamiento de aplicaciones bajo fallos. Usa kubeval para validación de esquema, helm lint para charts, Terratest para tests de integración y Chaos Mesh para resilience testing.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Kubernetes se ha convertido en el estándar de facto para orquestación de contenedores, con el 84% de las empresas usándolo en producción según el CNCF Annual Survey 2023. Esta adopción crea desafíos únicos de testing: los equipos QA deben validar no solo el código de aplicación, sino también manifiestos Kubernetes, Helm charts, operadores, definiciones de recursos personalizados, políticas de red y configuraciones de service mesh. Según el State of Cloud Native Development 2024, los recursos Kubernetes mal configurados representan el 43% de los incidentes de producción en entornos cloud-native. Esta guía cubre estrategias completas de testing para Kubernetes: validación de manifiestos, testing de Helm charts, verificación de configuración de pods, validación de service mesh y chaos engineering.&lt;/p&gt;</description></item><item><title>Estrategias de Testing y Validación en Terraform: Guía Completa de DevOps</title><link>https://yrkan.com/es/blog/terraform-testing-and-validation-strategies/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/terraform-testing-and-validation-strategies/</guid><description>&lt;p&gt;El testing de Infrastructure as Code se vuelve obligatorio a medida que las organizaciones escalan: HashiCorp 2024 State of Cloud Strategy Survey reporta que el 86% de las empresas usa Terraform en producción, pero solo el 43% tiene testing automatizado para sus módulos — una brecha significativa dado que la infraestructura mal configurada causa el 23% de los incidentes de seguridad cloud según Gartner. El código Terraform sin testear puede desencadenar fallos en cascada: un argumento &lt;code&gt;count&lt;/code&gt; incorrecto, una regla de security group faltante o un S3 bucket público accidentalmente pueden tener impacto inmediato en producción. Esta guía cubre la pirámide de testing completa para Terraform: desde checks estáticos rápidos y sin costo que podés añadir en minutos hasta suites de integration tests que despliegan y validan infraestructura real.&lt;/p&gt;</description></item><item><title>Evaluación del Módulo 10</title><link>https://yrkan.com/es/course/module-10-networking/module-10-assessment/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/module-10-assessment/</guid><description>&lt;h2 id="descripción-general"&gt;Descripción General &lt;a href="#descripci%c3%b3n-general" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta evaluación testea tu comprensión de los conceptos de redes de las 14 lecciones del Módulo 10. Evalúa habilidades prácticas de diagnóstico, no solo conocimiento teórico.&lt;/p&gt;
&lt;h3 id="estructura"&gt;Estructura &lt;a href="#estructura" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Parte&lt;/th&gt;
 &lt;th&gt;Peso&lt;/th&gt;
 &lt;th&gt;Tiempo&lt;/th&gt;
 &lt;th&gt;Descripción&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Opción Múltiple&lt;/td&gt;
 &lt;td&gt;40%&lt;/td&gt;
 &lt;td&gt;15 min&lt;/td&gt;
 &lt;td&gt;10 preguntas de escenarios&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Diagnóstico&lt;/td&gt;
 &lt;td&gt;30%&lt;/td&gt;
 &lt;td&gt;15 min&lt;/td&gt;
 &lt;td&gt;3 escenarios de depuración&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Laboratorio&lt;/td&gt;
 &lt;td&gt;30%&lt;/td&gt;
 &lt;td&gt;15 min&lt;/td&gt;
 &lt;td&gt;Uso práctico de herramientas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="verificación-de-conocimiento"&gt;Verificación de Conocimiento &lt;a href="#verificaci%c3%b3n-de-conocimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las preguntas del quiz cubren escenarios reales de todos los temas: modelos OSI/TCP-IP, HTTP, DNS, SSL/TLS, herramientas proxy, WebSocket, emulación de red, LB/CDN, firewall/WAF, TCP/UDP, API gateway, VPN, IPv4/IPv6 y Wireshark.&lt;/p&gt;</description></item><item><title>Evidencia de Pruebas de Cumplimiento: Requisitos Regulatorios, Audit Trails y Políticas de Retención</title><link>https://yrkan.com/es/blog/compliance-test-evidence/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/compliance-test-evidence/</guid><description>&lt;p&gt;Evidencia de Pruebas de Cumplimiento: Requisitos Regulatorios, Audit Trails y Políticas de Retención es una disciplina crítica en el aseguramiento de calidad de software moderno. According to IBM&amp;rsquo;s Cost of a Data Breach Report 2024, the global average cost of a data breach reached $4.88 million (IBM Cost of a Data Breach 2024). According to OWASP, injection vulnerabilities and broken authentication remain in the top 10 web application security risks (OWASP Top 10). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Evidencia de Pruebas y Documentación de Cumplimiento: Construcción de Sistemas QA Preparados para Auditorías</title><link>https://yrkan.com/es/blog/test-evidence-compliance/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-evidence-compliance/</guid><description>&lt;p&gt;Según el Ponemon Institute&amp;rsquo;s 2024 Cost of Non-Compliance Report, las organizaciones que fallan auditorías regulatorias por evidencia de pruebas inadecuada enfrentan penalidades promedio de &lt;strong&gt;14,82 millones de dólares&lt;/strong&gt; — y el &lt;strong&gt;67% de los fallos de auditorías&lt;/strong&gt; en industrias de software reguladas se remontan a documentación de pruebas incompleta o sin trazabilidad. La investigación de Gartner&amp;rsquo;s 2024 Risk Management survey encontró que las empresas con recopilación automatizada de evidencia y sistemas QA preparados para auditorías reducen los costos de cumplimiento en un promedio del &lt;strong&gt;43% anualmente&lt;/strong&gt;, reduciendo el tiempo de preparación de auditorías de semanas a días. En industrias reguladas — finanzas (SOX), salud (HIPAA), farmacéutica (FDA 21 CFR Part 11) y otras — la evidencia de pruebas no es un pensamiento secundario. Es la base legal que prueba que tu software cumple sus requisitos. Esta guía cubre cómo construir sistemas QA que produzcan evidencia lista para auditorías automáticamente, desde matrices de trazabilidad hasta políticas de retención.&lt;/p&gt;</description></item><item><title>Exploratory Testing: El Arte de la Investigación de Software</title><link>https://yrkan.com/es/blog/guia-exploratory-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/guia-exploratory-testing/</guid><description>&lt;p&gt;El testing exploratorio descubre una proporción desproporcionada de bugs críticos. Según el informe State of Software Quality de SmartBear, el 42% de los equipos lo usa como método principal para encontrar defectos que los suites automatizados no detectan. A diferencia del testing con scripts — donde ejecutás casos de prueba predefinidos — el testing exploratorio combina aprendizaje, diseño y ejecución simultáneamente: el tester adapta su enfoque en tiempo real según lo que descubre. James Bach, uno de los pioneros del testing exploratorio moderno, lo define como testing en el que el tester controla el diseño de las pruebas mientras las realiza. El ISTQB lo clasifica como una forma de testing basado en experiencia. Los equipos que combinan testing exploratorio basado en sesiones (SBTM) con heurísticas de tours encuentran consistentemente entre un 30% y 60% más defectos que los equipos que solo usan tests con scripts. Esta guía te da el framework completo — desde escribir charters hasta reportar hallazgos.&lt;/p&gt;</description></item><item><title>Exploratory Testing: Investigación Estructurada para Mejor Calidad</title><link>https://yrkan.com/es/blog/exploratory-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/exploratory-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El testing exploratorio es investigación estructurada con charters, sesiones timeboxed y heurísticas — no clicks aleatorios&lt;/li&gt;
&lt;li&gt;Usa Session-Based Test Management (SBTM) con sesiones de 90 minutos, notas de debriefing y métricas de cobertura&lt;/li&gt;
&lt;li&gt;Combínalo con regresión automatizada — el testing exploratorio encuentra 30-40% más defectos críticos que las pruebas con scripts&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos QA que quieren encontrar bugs que las pruebas con scripts pierden, especialmente en features nuevas
&lt;strong&gt;Omite si:&lt;/strong&gt; Solo necesitas cobertura de regresión repetible sin investigación manual&lt;/p&gt;</description></item><item><title>Flaky Test Management en CI/CD</title><link>https://yrkan.com/es/blog/flaky-test-management-in-ci-cd/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/flaky-test-management-in-ci-cd/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Los tests inestables erosionan la confiabilidad de CI/CD. Detéctalos rastreando tasas de fallo (&amp;gt;5% = inestable), pon en cuarentena inmediatamente con tags @flaky, corrige las causas raíz (timing, dependencias de entorno, datos no deterministas) y aplica un SLA de 30 días para resolución.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los flaky tests son uno de los desafíos más frustrantes en pipelines CI/CD modernos. Un flaky test es uno que exhibe comportamiento no determinístico—a veces pasando y a veces fallando sin cambios en el código. Estas pruebas erosionan la confianza del equipo, desperdician horas de ingeniería y pueden enmascarar bugs reales. Esta guía completa proporciona estrategias avanzadas para detectar, gestionar y finalmente eliminar flaky tests de tu pipeline CI/CD.&lt;/p&gt;</description></item><item><title>Flutter Testing: Guía Completa de Tests Unitarios, de Widgets e Integración</title><link>https://yrkan.com/es/blog/flutter-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/flutter-testing-guide/</guid><description>&lt;p&gt;Flutter se ha convertido en uno de los frameworks móviles de más rápido crecimiento del mundo, con más de 166.000 estrellas en GitHub y adopción por parte de Google, BMW, eBay y cientos de empresas del Fortune 500. Según la encuesta de desarrolladores de Flutter 2024, Flutter potencia más de 1 millón de apps publicadas en Play Store y App Store combinados. Su base de código unificada para iOS, Android, web y escritorio hace que la estrategia de testing sea una inversión crítica — un solo suite de tests cubre todas las plataformas. La arquitectura de testing por capas de Flutter es única: los tests unitarios se ejecutan en milisegundos sin dispositivo, los tests de widgets renderizan componentes UI en un entorno virtual sin pantalla real, y los tests de integración corren en hardware real para validación end-to-end. Este enfoque de tres niveles, en las proporciones correctas (70% unitario, 20% widget, 10% integración), entrega cobertura integral y ciclos de feedback rápidos.&lt;/p&gt;</description></item><item><title>Gatling Load Testing Tutorial: Guía Completa de Testing de Rendimiento con Scala</title><link>https://yrkan.com/es/blog/gatling-load-testing-tutorial/</link><pubDate>Sun, 01 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/gatling-load-testing-tutorial/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Gatling es una herramienta de pruebas de carga code-first con DSL Scala que maneja 10x más usuarios concurrentes que JMeter con el mismo hardware. Escribe escenarios como código Scala, usa feeders para datos de prueba y configura aserciones para umbrales CI/CD.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Gatling es utilizado por más de 100.000 desarrolladores en todo el mundo y está en el ThoughtWorks Technology Radar como la herramienta recomendada para pruebas de rendimiento code-first. Construido sobre una arquitectura async Netty/Akka, Gatling maneja 10x más usuarios concurrentes que JMeter en hardware equivalente. Según la encuesta State of Performance Testing 2024, la adopción de Gatling creció un 34% interanual. El DSL Scala permite escribir escenarios expresivos, testing orientado a datos mediante feeders y generación automática de informes HTML con desglose por percentiles. A diferencia de JMeter, las simulaciones de Gatling son clases Scala — puedes versionarlas y revisarlas en el mismo PR que el código de la aplicación. Este tutorial cubre el kit completo de Gatling: fundamentos del DSL Scala, configuración HTTP, feeders, aserciones, integración CI/CD e interpretación de informes HTML.&lt;/p&gt;</description></item><item><title>Gatling: Pruebas de Carga de Alto Rendimiento con Scala DSL</title><link>https://yrkan.com/es/blog/gatling-pruebas-rendimiento/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/gatling-pruebas-rendimiento/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Gatling usa arquitectura async Netty/Akka para simular 10x más usuarios que herramientas basadas en threads. Escribe escenarios con el DSL Simulation en Scala, usa feeders para datos realistas y analiza percentiles p95/p99 en informes HTML.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Gatling es utilizado por más de 100.000 desarrolladores y está incluido en el ThoughtWorks Technology Radar como la herramienta recomendada de pruebas de carga de alto rendimiento. Su arquitectura async Netty/Akka es el diferenciador clave: donde JMeter usa un thread por usuario simulado, Gatling usa corutinas orientadas a eventos — permitiendo que una sola máquina simule 50.000+ usuarios concurrentes. Según la encuesta State of Performance Testing 2024, la adopción de Gatling creció un 34% interanual. Los escenarios de Gatling son clases Scala ordinarias: versionables, revisables en PRs y parametrizables como cualquier código de aplicación. Esta guía completa cubre patrones avanzados de Gatling: simulación realista de usuarios con feeders y encadenamiento de sesiones, perfiles de inyección de nivel empresarial, aserciones personalizadas para gates CI/CD e interpretación de informes HTML.&lt;/p&gt;</description></item><item><title>Generación de Datos de Prueba con IA: Datos Sintéticos para Aseguramiento de Calidad</title><link>https://yrkan.com/es/blog/ai-test-data-generation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-test-data-generation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Los datos sintéticos generados por IA eliminan riesgos de privacidad manteniendo &lt;strong&gt;95%+ de similitud estadística&lt;/strong&gt; con datos de producción&lt;/li&gt;
&lt;li&gt;GANs y VAEs preservan automáticamente correlaciones y relaciones que la creación manual de datos omite&lt;/li&gt;
&lt;li&gt;La generación de datos de prueba reduce el tiempo de configuración de entornos en &lt;strong&gt;80%&lt;/strong&gt; y permite &lt;strong&gt;escenarios de prueba ilimitados&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mejor para:&lt;/strong&gt; Equipos bloqueados por acceso a datos, industrias reguladas (HIPAA, GDPR, PCI-DSS), pruebas de rendimiento que requieren millones de registros&lt;/p&gt;</description></item><item><title>Generación de Pruebas con IA: Guía Práctica para Creación Automatizada</title><link>https://yrkan.com/es/blog/ai-powered-test-generation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-powered-test-generation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La generación de pruebas con IA reduce el tiempo de creación en &lt;strong&gt;70%&lt;/strong&gt; y la carga de mantenimiento en &lt;strong&gt;80-90%&lt;/strong&gt; a través de localizadores auto-reparables y adaptación inteligente&lt;/li&gt;
&lt;li&gt;La selección predictiva de pruebas reduce el tiempo de CI/CD en &lt;strong&gt;60-80%&lt;/strong&gt; manteniendo 95% de detección de bugs ejecutando solo pruebas relevantes por commit&lt;/li&gt;
&lt;li&gt;El punto óptimo: Usa IA para &lt;strong&gt;regresión de alto volumen&lt;/strong&gt; y flujos rutinarios, pero mantén pruebas manuales/scripted para &lt;strong&gt;lógica de negocio crítica&lt;/strong&gt; y casos límite&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con 100+ pruebas automatizadas, aplicaciones con cambios frecuentes de UI, organizaciones que sufren mantenimiento de tests inestables&lt;/p&gt;</description></item><item><title>Gestión de Artefactos en CI/CD</title><link>https://yrkan.com/es/blog/artifact-management-in-ci-cd/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/artifact-management-in-ci-cd/</guid><description>&lt;p&gt;Gestión de Artefactos en CI/CD es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA State of DevOps report, elite performing teams deploy 973x more frequently than low performers (DORA State of DevOps 2024). According to GitLab&amp;rsquo;s 2024 DevSecOps report, teams using CI/CD fix bugs 60% faster than those without automation (GitLab DevSecOps Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Gestión de Datos de Prueba en Pipelines DevOps: Sincronización, Enmascaramiento y Versionado</title><link>https://yrkan.com/es/blog/test-data-devops-pipelines/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-data-devops-pipelines/</guid><description>&lt;p&gt;La gestión de datos de prueba es el cuello de botella oculto de los pipelines DevOps modernos. Según la Encuesta DevOps de Gartner 2024, el 67% de las organizaciones cita el aprovisionamiento de datos de prueba como su principal obstáculo para el testing continuo, con equipos que pasan en promedio el 35% del tiempo de testing esperando o preparando datos. La investigación del World Quality Report 2024 (Sogeti/Capgemini) muestra que las organizaciones con pipelines automatizados de datos de prueba despliegan 2,4 veces más frecuentemente y tienen un 58% menos de fallos de pipeline por problemas de datos. El reto se complica por GDPR, CCPA y regulaciones sectoriales que prohíben usar datos reales de clientes en entornos de prueba.&lt;/p&gt;</description></item><item><title>Gestión de Secrets en CI/CD: HashiCorp Vault, SOPS y Testing con Secrets</title><link>https://yrkan.com/es/blog/secrets-management-cicd-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/secrets-management-cicd-testing/</guid><description>&lt;p&gt;La gestion de secretos es la practica critica de almacenar, rotar e inyectar de forma segura credenciales, claves de API y certificados en pipelines CI/CD sin exponerlos jamas en el codigo fuente. Segun el informe GitGuardian State of Secrets Sprawl 2023, se detectaron mas de 10 millones de secretos en repositorios publicos de GitHub, un aumento del 67% interanual, con el 85% de los secretos codificados permaneciendo activos mas de 30 dias despues de la exposicion. Segun investigaciones de Snyk, el 25% de todos los incidentes de seguridad en aplicaciones cloud-native son causados por secretos mal gestionados en pipelines CI/CD. Para los ingenieros de DevOps y profesionales de QA, implementar gestion de secretos con HashiCorp Vault, AWS Secrets Manager o SOPS ya no es opcional.&lt;/p&gt;</description></item><item><title>Gestión del Conocimiento en QA: Construir una Base de Conocimiento Sostenible</title><link>https://yrkan.com/es/blog/knowledge-management-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/knowledge-management-qa/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Una base de conocimiento QA captura la experiencia de testing en forma estructurada y buscable. Empieza con lo que tu equipo pregunta con frecuencia: guías de testing, docs de troubleshooting y materiales de onboarding.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La gestión del conocimiento en QA aborda uno de los problemas más persistentes en el testing de software: el conocimiento institucional que vive en las cabezas de los ingenieros senior y desaparece cuando se van. Según el informe Deloitte Global Human Capital Trends 2023, las organizaciones pierden el 30-40% del conocimiento institucional cuando un empleado experimentado se va. En QA específicamente, esto significa perder el entendimiento de defectos históricos, heurísticas de testing acumuladas y comportamientos del sistema no documentados. Una base de conocimiento QA bien estructurada convierte este conocimiento efímero en activos organizacionales — buscables, versionados y accesibles para nuevos empleados desde el primer día.&lt;/p&gt;</description></item><item><title>GitHub Actions para Automatización QA</title><link>https://yrkan.com/es/blog/github-actions-for-qa-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/github-actions-for-qa-automation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; GitHub Actions habilita automatización de tests CI/CD nativa con workflows YAML, matrix strategy para testing paralelo en navegadores y required status checks para puertas de calidad. Usa workflows reutilizables para compartir infraestructura de tests entre repositorios.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;GitHub Actions es usado por más de 100 millones de desarrolladores, convirtiéndolo en la plataforma CI/CD más adoptada para automatización QA, según el informe GitHub Octoverse 2024. La integración nativa con pull requests y branch protection habilita puertas de calidad que bloquean merges cuando los tests fallan. Según el DORA State of DevOps 2024, los equipos que usan automatización CI/CD con branch protection despliegan 5x más frecuentemente manteniendo un 50% menos de fallos. La matrix strategy de GitHub Actions permite ejecución paralela de tests en múltiples navegadores — reduciendo el tiempo de ciclo un 60-80%. Esta guía cubre el stack completo de automatización QA con GitHub Actions: estructura de workflows, matrix testing, patrones de workflows reutilizables y configuración de puertas de calidad.&lt;/p&gt;</description></item><item><title>GitLab CI/CD para Workflows de Testing</title><link>https://yrkan.com/es/blog/gitlab-ci-cd-for-testing-workflows/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/gitlab-ci-cd-for-testing-workflows/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Los flujos de trabajo de testing GitLab CI/CD usan .gitlab-ci.yml con etapas (build → test → report), artefactos JUnit XML para informes en widgets de MR, pipelines DAG y Review Apps para testing de entorno por MR. Usa cache y parallel: para reducir la duración del pipeline un 50-70%.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;GitLab CI/CD es usado por más de 30 millones de desarrolladores y es la única plataforma que ofrece un ciclo de vida DevOps completo en una sola aplicación, según el GitLab Global DevSecOps Report 2024. Su integración nativa de CI/CD con merge requests, informes de tests y gestión de entornos lo hace especialmente potente para automatización QA: los resultados de tests aparecen directamente en los widgets de MR, los cambios de cobertura bloquean merges y las Review Apps proporcionan despliegue por rama. Según el DORA State of DevOps 2024, los equipos que usan automatización de tests CI/CD integrada alcanzan 4x mayor frecuencia de despliegue. El modo de pipeline DAG permite que los jobs comiencen en cuanto se completen sus dependencias — reduciendo el tiempo total de pipeline un 30-50%.&lt;/p&gt;</description></item><item><title>GitOps para Entornos de Prueba: Gestión de Infraestructura de Testing a través de Repositorios Git</title><link>https://yrkan.com/es/blog/gitops-test-environments/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/gitops-test-environments/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; GitOps gestiona entornos de prueba declarativamente a través de Git — ArgoCD o Flux sincronizan el estado de Kubernetes con repositorios Git automáticamente. La promoción de entorno es un PR de Git, cada cambio es auditable y la deriva de configuración se elimina mediante reconciliación continua.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las prácticas GitOps reducen el tiempo de aprovisionamiento de entornos un 70% y eliminan la deriva de configuración que causa fallos de &amp;ldquo;funciona en mi máquina&amp;rdquo;, según la CNCF Cloud Native Survey 2024. Al tratar la configuración de entornos de prueba como código en repositorios Git, los equipos obtienen los mismos beneficios para la infraestructura que el control de versiones da al código de aplicación: auditabilidad, capacidad de rollback y revisión por pares de cada cambio. ArgoCD y Flux, los dos operadores GitOps dominantes, reconcilian continuamente el estado real del cluster Kubernetes con el estado deseado en Git — cualquier deriva se corrige automáticamente en 5 minutos. Para equipos QA, GitOps significa que cada entorno de prueba es reproducible desde un commit Git: puedes recrear cualquier estado pasado y promover configuraciones entre entornos con el mismo flujo de PR usado para el código de aplicación.&lt;/p&gt;</description></item><item><title>GitOps Workflows para QA y Testing</title><link>https://yrkan.com/es/blog/gitops-workflows-for-qa-and-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/gitops-workflows-for-qa-and-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Los flujos de trabajo GitOps para QA gestionan entornos de prueba declarativamente a través de Git. Cada cambio de configuración es un PR con revisión, la auto-sincronización de ArgoCD/Flux elimina la deriva y los entornos de prueba son reproducibles desde cualquier commit Git.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;En 2024, el 67% de los equipos de ingeniería reportaron problemas con entornos de prueba inconsistentes y fallos en despliegues. GitOps ofrece una solución al tratar la infraestructura y los flujos de trabajo de testing como código versionado en Git. Esta guía completa te muestra cómo implementar flujos de trabajo GitOps específicamente adaptados para equipos de QA y testing, permitiendo procesos de prueba automatizados, reproducibles y auditables.&lt;/p&gt;</description></item><item><title>Grafana y Prometheus: Stack Completo de Monitoreo de Rendimiento</title><link>https://yrkan.com/es/blog/grafana-prometheus-monitoring/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/grafana-prometheus-monitoring/</guid><description>&lt;p&gt;Prometheus y Grafana forman el stack de monitoreo open-source estándar de la industria, adoptado por el &lt;strong&gt;63% de las organizaciones que usan Kubernetes&lt;/strong&gt; según el CNCF Annual Survey 2023. Prometheus maneja la recolección de métricas — scrapeando datos de series temporales de endpoints de aplicaciones cada 15 segundos por defecto — mientras Grafana visualiza esos datos a través de dashboards y alertas personalizables. Para ingenieros QA, este stack proporciona visibilidad en tiempo real de si una aplicación se comporta correctamente bajo carga. Grafana Labs reporta más de &lt;strong&gt;10 millones de instancias activas de Grafana&lt;/strong&gt; en todo el mundo.&lt;/p&gt;</description></item><item><title>Guía Completa de Playwright: Testing Multi-Navegador, Auto-Wait y Dominio del Trace Viewer</title><link>https://yrkan.com/es/blog/playwright-comprehensive-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/playwright-comprehensive-guide/</guid><description>&lt;p&gt;Playwright se ha convertido en el framework de testing end-to-end de más rápido crecimiento en el ecosistema JavaScript. Según los datos del State of JS 2024, los niveles de satisfacción y uso de Playwright superaron por primera vez a los de Cypress, con más del 40% de los desarrolladores JavaScript utilizándolo para testing e2e. El framework ha superado las 95.000 estrellas en GitHub y acumula más de 5 millones de descargas semanales en npm. Desarrollado por Microsoft — el mismo equipo que creó Puppeteer — Playwright elimina las limitaciones fundamentales de los frameworks más antiguos: tests inestables dependientes de tiempos, falta de soporte multi-navegador real y dificultades de debugging. El mecanismo de auto-wait verifica seis condiciones de actionability antes de cada interacción, eliminando la clase de errores de condiciones de carrera que afectan a Selenium y a las versiones anteriores de Cypress. Trace Viewer captura screenshots, snapshots del DOM y actividad de red para cada paso del test, convirtiendo los fallos en producción de misterios en secuencias claramente reproducibles.&lt;/p&gt;</description></item><item><title>Guía Completa de Pruebas de Contenedores</title><link>https://yrkan.com/es/blog/container-testing-comprehensive-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/container-testing-comprehensive-guide/</guid><description>&lt;p&gt;Las pruebas de contenedores se han convertido en una de las habilidades esenciales del QA moderno. Según la &lt;a href="https://www.cncf.io/reports/"&gt;encuesta anual de CNCF 2024&lt;/a&gt;, el 92% de las organizaciones ya ejecuta contenedores en producción, con Docker y Kubernetes dominando el ecosistema. Sin embargo, el 62% de los equipos descubre vulnerabilidades relacionadas con contenedores recién después del despliegue — una brecha que un testing efectivo cierra desde el origen. Las pruebas de contenedores son fundamentalmente distintas del testing tradicional: hay que validar simultáneamente la integridad de la imagen, la configuración en tiempo de ejecución, los límites de recursos, la red y las dependencias de orquestación. Los equipos que invierten en estrategias de prueba por capas — escaneos de imagen, tests de estructura y suites de integración — reducen consistentemente los incidentes en producción entre un 70% y 90%. Según la &lt;a href="https://docs.docker.com/"&gt;documentación oficial de Docker&lt;/a&gt;, las organizaciones que adoptan el enfoque shift-left en pruebas de contenedores reducen el tiempo medio de recuperación en más del 50%. Esta guía te da el playbook probado para lograrlo.&lt;/p&gt;</description></item><item><title>Guía de Pruebas Serverless: AWS Lambda y Azure Functions</title><link>https://yrkan.com/es/blog/serverless-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/serverless-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
Las pruebas serverless requieren un enfoque fundamentalmente diferente. Hay que manejar la ejecución sin estado, la latencia de arranque en frío y los disparadores de eventos que no se pueden replicar de forma local. Combina pruebas unitarias, pruebas de integración con LocalStack y benchmarks de arranque en frío.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; ingenieros backend y QA leads que trabajan con Lambda y Azure Functions
&lt;strong&gt;Puedes omitirlo si:&lt;/strong&gt; pruebas APIs tradicionales basadas en servidores sin componentes serverless&lt;/p&gt;</description></item><item><title>Guía de Testing de Chatbots: Validando Sistemas de IA Conversacional</title><link>https://yrkan.com/es/blog/chatbot-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/chatbot-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Testing de chatbots&lt;/strong&gt;: Validar precisión NLU, flujos de diálogo, gestión de contexto y calidad de respuestas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Desafío clave&lt;/strong&gt;: Las entradas en lenguaje natural abierto no son enumerables — requiere testing probabilístico&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing NLU&lt;/strong&gt;: Construir golden datasets (100-200 frases/intención) y medir precision/recall&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas&lt;/strong&gt;: Botium (plataforma dedicada), consola de testing de Dialogflow, Postman (API backend)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Métricas de calidad&lt;/strong&gt;: Precisión de intenciones &amp;gt;90%, tasa de fallback &amp;lt;15%, tasa de resolución &amp;gt;80%&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Áreas críticas&lt;/strong&gt;: Contexto multi-turno, extracción de entidades, casos límite (errores tipográficos, ambigüedad)&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;El mercado global de chatbots fue valorado en $5.1 mil millones en 2022 y se proyecta alcanzar $27.3 mil millones para 2030, con un crecimiento anual del 23%. Según Gartner, el 80% de las organizaciones de servicio al cliente usarán IA generativa para 2025. Sin embargo, los chatbots siguen siendo uno de los sistemas de software peor testeados: los métodos tradicionales de QA se quedan cortos porque no se pueden enumerar todas las entradas posibles en lenguaje natural, los flujos conversacionales son no lineales, y las respuestas correctas dependen del contexto. Un chatbot mal testeado frustra a los usuarios con pérdida de contexto, intenciones mal clasificadas y alucinaciones en sistemas basados en LLM. El testing de IA conversacional requiere técnicas especializadas: medición de precisión NLU con golden datasets, testing de cobertura de flujos de diálogo, validación de extracción de entidades y testing de regresión tras cada reentrenamiento del modelo.&lt;/p&gt;</description></item><item><title>Guía de Testing en Bitbucket Pipelines: Tutorial Completo</title><link>https://yrkan.com/es/blog/bitbucket-pipelines-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/bitbucket-pipelines-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
Bitbucket Pipelines usa un archivo bitbucket-pipelines.yml para automatizar pruebas en cada commit. Los pasos en paralelo reducen el tiempo de compilación un 50-70%, el caché multinivel reduce compilaciones posteriores de 120s a 35s, y las configuraciones por rama permiten que las ramas de características ejecuten pruebas unitarias rápidas mientras main ejecuta la suite completa antes del despliegue.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; equipos que usan Bitbucket Cloud y quieren automatización CI/CD sin gestionar Jenkins o GitHub Actions
&lt;strong&gt;Puedes omitirlo si:&lt;/strong&gt; usas GitHub o GitLab — los conceptos aplican pero la sintaxis YAML difiere&lt;/p&gt;</description></item><item><title>Guía del Framework Gauge: Alternativa BDD Independiente del Lenguaje a Cucumber</title><link>https://yrkan.com/es/blog/gauge-framework-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/gauge-framework-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
Gauge es un moderno framework BDD de ThoughtWorks que reemplaza Gherkin con especificaciones en Markdown. Ventajas clave sobre Cucumber: ejecución paralela integrada (hasta 84% más rápido con 8 workers), verdadera independencia de lenguaje (Java/JS/Python/Go/C#/Ruby) y sistema de conceptos para reutilización. La mejor opción para equipos que encuentran la sintaxis Gherkin como una barrera.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; equipos que adoptan BDD y quieren la familiaridad de Markdown con paralelismo nativo
&lt;strong&gt;Puedes omitirlo si:&lt;/strong&gt; tu equipo tiene infraestructura Cucumber significativa o necesita su ecosistema de plugins&lt;/p&gt;</description></item><item><title>Herramientas Proxy: Charles, Fiddler, mitmproxy</title><link>https://yrkan.com/es/course/module-10-networking/proxy-tools-charles-fiddler/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/proxy-tools-charles-fiddler/</guid><description>&lt;h2 id="por-qué-herramientas-proxy-para-qa"&gt;Por Qué Herramientas Proxy para QA &lt;a href="#por-qu%c3%a9-herramientas-proxy-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las herramientas proxy HTTP se ubican entre el cliente y el servidor, dándote visibilidad y control completos sobre el tráfico de red. Para ingenieros QA, son indispensables para depurar apps móviles (donde no puedes ver requests de red directamente), testear edge cases (modificando respuestas del servidor), y simular condiciones de red (throttling, latencia).&lt;/p&gt;
&lt;p&gt;A diferencia de DevTools del navegador que solo muestran tráfico del navegador, las herramientas proxy capturan tráfico de cualquier aplicación — apps móviles, software de escritorio, herramientas CLI y servicios en background.&lt;/p&gt;</description></item><item><title>Hoja de Ruta del QA Engineer 2025: Carrera Completa de Junior a Senior</title><link>https://yrkan.com/es/blog/qa-engineer-roadmap-2025/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/qa-engineer-roadmap-2025/</guid><description>&lt;p&gt;El panorama de la carrera en ingeniería de QA se ha transformado dramáticamente, con el rol evolucionando desde la ejecución manual de pruebas hasta una disciplina técnica estratégica que abarca automatización, rendimiento, seguridad y testing asistido por IA. Según la Oficina de Estadísticas Laborales de EE.UU., se proyecta que los roles de analista de aseguramiento de calidad de software crecerán un 25% de 2022 a 2032, mucho más rápido que el promedio, con salarios medianos de $99,620. Según el State of Testing Report 2023 de Smartbear, el 87% de los profesionales de QA reportan que las habilidades de automatización ahora son esenciales para el avance profesional, y el 65% espera que el conocimiento de IA/ML sea crítico en dos años. Para ingenieros en cualquier etapa profesional, entender el roadmap completo ayuda a priorizar el desarrollo de habilidades.&lt;/p&gt;</description></item><item><title>Hoppscotch: Plataforma Open-Source de Testing de API Basada en Navegador</title><link>https://yrkan.com/es/blog/hoppscotch-browser-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/hoppscotch-browser-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Hoppscotch es una plataforma de testing de API gratuita y open-source que soporta REST, GraphQL, WebSocket y gRPC desde el navegador. Úsala para exploración rápida de APIs, colaboración en equipo via colecciones compartidas e integración CI/CD a través del CLI de Hoppscotch.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Hoppscotch tiene más de 63.000 estrellas en GitHub y 5 millones+ de usuarios, convirtiéndolo en una de las herramientas de testing de API open-source de más rápido crecimiento, según las estadísticas del repositorio GitHub de Hoppscotch. A diferencia de Postman, que requiere instalación local y un nivel de pago para colaboración avanzada, Hoppscotch funciona completamente en el navegador y es totalmente gratuito. Su soporte para REST, GraphQL, WebSocket y gRPC en una sola interfaz aborda el panorama moderno de APIs. Según el State of API Testing de SmartBear 2024, el 34% de los equipos prueba más de un protocolo API regularmente. El CLI de Hoppscotch habilita integración CI/CD para ejecuciones automáticas de colecciones, mientras que el despliegue Docker da soberanía de datos completa. Esta guía cubre el kit completo de testing con Hoppscotch.&lt;/p&gt;</description></item><item><title>HTTP en Profundidad</title><link>https://yrkan.com/es/course/module-10-networking/http-deep-dive/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/http-deep-dive/</guid><description>&lt;h2 id="evolución-de-versiones-http"&gt;Evolución de Versiones HTTP &lt;a href="#evoluci%c3%b3n-de-versiones-http" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;HTTP ha evolucionado significativamente desde su creación, y cada versión introduce cambios que afectan directamente cómo testeas aplicaciones web. Entender estas diferencias es esencial para diagnosticar problemas de rendimiento y escribir aserciones de test precisas.&lt;/p&gt;
&lt;h3 id="http11-el-caballo-de-batalla"&gt;HTTP/1.1: El Caballo de Batalla &lt;a href="#http11-el-caballo-de-batalla" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;HTTP/1.1 ha impulsado la web desde 1997. Sus características clave incluyen conexiones persistentes (reutilizar una conexión TCP para múltiples requests) y pipelining (enviar múltiples requests sin esperar respuestas). Sin embargo, HTTP/1.1 sufre de bloqueo head-of-line — si un request es lento, todos los requests subsiguientes en la misma conexión deben esperar.&lt;/p&gt;</description></item><item><title>HTTPie y cURL: Comparación de Herramientas de Testing API en Línea de Comandos</title><link>https://yrkan.com/es/blog/httpie-curl-cli-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/httpie-curl-cli-testing/</guid><description>&lt;p&gt;Para desarrolladores que viven en la terminal, las herramientas de testing de API en línea de comandos son indispensables. curl ha estado preinstalado en virtualmente cada sistema Unix-like desde 1997 y desde 2023 viene incluido con &lt;strong&gt;Windows 10+ por defecto&lt;/strong&gt; — disponible en un estimado de &lt;strong&gt;10 mil millones de dispositivos&lt;/strong&gt; según las estadísticas del propio proyecto curl. HTTPie, por su parte, ha superado las &lt;strong&gt;30,000 estrellas en GitHub&lt;/strong&gt; y es elogiado por su sintaxis amigable para el desarrollador. Las dos herramientas sirven el mismo propósito fundamental — hacer requests HTTP desde la terminal — pero con filosofías diferentes: curl prioriza compatibilidad universal y potencia bruta, HTTPie prioriza legibilidad y facilidad de uso.&lt;/p&gt;</description></item><item><title>IDE y Extensiones para Testers: Guía Completa de Herramientas para Ingenieros QA</title><link>https://yrkan.com/es/blog/ide-extensions-for-testers/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ide-extensions-for-testers/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Las extensiones IDE transforman la productividad del desarrollo de tests. Extensiones esenciales de VS Code para testers: Playwright Test (grabar/ejecutar/depurar), REST Client (testing de API inline), GitLens, Error Lens y Copilot (generación de casos de prueba).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las pruebas de software modernas requieren más que clics manuales y pruebas exploratorias. Los ingenieros QA de hoy necesitan entornos de desarrollo potentes, extensiones especializadas y herramientas de depuración para escribir pruebas automatizadas, analizar tráfico de red e investigar errores de manera eficiente. Esta guía completa cubre los IDEs, extensiones y herramientas esenciales que todo tester debe dominar.&lt;/p&gt;</description></item><item><title>Informe de Evaluación de Herramientas de Testing</title><link>https://yrkan.com/es/blog/test-tool-evaluation-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-tool-evaluation-report/</guid><description>&lt;p&gt;Según la investigación de ingeniería de software de Gartner 2024, el &lt;strong&gt;62% de las organizaciones&lt;/strong&gt; reemplazan sus herramientas de automatización de pruebas dentro de los tres años de adopción — principalmente porque la selección inicial se basó en demos de marketing en lugar de una evaluación estructurada contra requisitos reales del proyecto. La encuesta de herramientas QA de Forrester 2024 encontró que los equipos que usan frameworks formales de evaluación con criterios ponderados y pruebas de concepto logran &lt;strong&gt;45% mayor tasa de adopción&lt;/strong&gt; y &lt;strong&gt;2,3x mejor ROI&lt;/strong&gt; en tres años. La diferencia se reduce a la evaluación sistemática: definir requisitos antes de los demos, puntuar herramientas contra criterios consistentes, ejecutar POCs en escenarios reales y calcular el TCO real incluyendo costos ocultos de capacitación e infraestructura.&lt;/p&gt;</description></item><item><title>Informe de Pruebas de Accesibilidad: Guía Completa para Cumplimiento WCAG</title><link>https://yrkan.com/es/blog/accessibility-test-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/accessibility-test-report/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Las herramientas automatizadas detectan 30-40% de problemas de accesibilidad—necesitas tanto pruebas automatizadas como manuales con tecnologías asistivas&lt;/li&gt;
&lt;li&gt;Estructura tus informes según los principios POUR de WCAG (Perceptible, Operable, Comprensible, Robusto) con niveles de severidad claros&lt;/li&gt;
&lt;li&gt;Incluye pasos de reproducción, grupos de usuarios afectados y código de remediación para cada problema para permitir correcciones rápidas&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mejor para:&lt;/strong&gt; Equipos de QA realizando auditorías de accesibilidad, oficiales de cumplimiento documentando conformidad WCAG&lt;/p&gt;</description></item><item><title>Informe de Pruebas de Localización: Documentando la Calidad del Software Internacional</title><link>https://yrkan.com/es/blog/localization-test-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/localization-test-report/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Los reportes de testing de localización documentan cobertura de traducción, problemas de layout UI, idoneidad cultural y bugs de codificación en locales soportados. Usa una matriz de cobertura para rastrear locales testeados vs. requeridos y prioriza defectos por impacto funcional.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las pruebas de localización aseguran que los productos de software funcionen sin problemas en diferentes idiomas, culturas y regiones. Crear informes exhaustivos de pruebas de localización requiere documentar no solo la precisión de la traducción, sino también la adecuación cultural, la compatibilidad técnica y la consistencia de la experiencia del usuario. Esta guía explora cómo estructurar y mantener documentación efectiva de pruebas de localización que capture las complejidades del aseguramiento de calidad del software internacional.&lt;/p&gt;</description></item><item><title>Informe de Pruebas de Rendimiento: Guía Completa de Métricas, Análisis y Optimización</title><link>https://yrkan.com/es/blog/performance-test-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/performance-test-report/</guid><description>&lt;p&gt;Los informes de pruebas de rendimiento son el artefacto de comunicación crítico que traduce métricas brutas en decisiones de negocio accionables. Según un estudio de Gartner, los proyectos de testing de rendimiento donde los resultados se comunican mal a los stakeholders tienen una tasa un 40% más alta de problemas de rendimiento siendo ignorados o depriorizados. Según investigación del Software Engineering Institute, las métricas técnicas de rendimiento como la latencia p95 y el throughput son inútiles para los stakeholders de negocio a menos que se traduzcan al impacto del usuario. Los informes efectivos de rendimiento combinan rigor técnico con narrativas claras de impacto en el negocio.&lt;/p&gt;</description></item><item><title>Infraestructura de Pruebas con IA: Gestión Inteligente de Recursos</title><link>https://yrkan.com/es/blog/ai-test-infrastructure/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-test-infrastructure/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La gestión de infraestructura con IA reduce costos en &lt;strong&gt;40-60%&lt;/strong&gt; mediante escalado predictivo y asignación inteligente de recursos&lt;/li&gt;
&lt;li&gt;El aprovisionamiento predictivo reduce el tiempo de configuración de horas a &lt;strong&gt;minutos&lt;/strong&gt; con pronóstico de carga basado en ML&lt;/li&gt;
&lt;li&gt;El emparejamiento inteligente de recursos dirige pruebas a entornos óptimos, logrando &lt;strong&gt;70%+ de utilización de recursos&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con 100+ ejecuciones diarias, infraestructura en la nube, costos significativos de infraestructura (&amp;gt;$5k/mes)&lt;/p&gt;</description></item><item><title>Insomnia REST Client: Guía Completa y Mejores Prácticas</title><link>https://yrkan.com/es/blog/insomnia-rest-client/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/insomnia-rest-client/</guid><description>&lt;p&gt;Insomnia es un potente cliente REST API adquirido por Kong en 2019 que ahora forma parte del ecosistema de gestión de APIs de Kong. La herramienta ha construido una base de seguidores dedicada — el &lt;strong&gt;repositorio GitHub de Insomnia tiene más de 34,000 estrellas&lt;/strong&gt; — particularmente entre desarrolladores que trabajan con APIs GraphQL, donde las capacidades de introspección de esquema y auto-completado de Insomnia se consideran las mejores de su clase. Tras la adquisición de Kong, Insomnia experimentó cambios significativos en 2023 cuando ciertas funciones de sincronización pasaron a requerir inicio de sesión, llevando a muchos usuarios a evaluar alternativas como &lt;a href="https://yrkan.com/es/blog/bruno-api-client/"&gt;Bruno&lt;/a&gt;. A pesar de esto, Insomnia sigue siendo una opción sólida para equipos que valoran su interfaz limpia, ecosistema de plugins y excelente tooling de GraphQL.&lt;/p&gt;</description></item><item><title>Integración de Serenity BDD: Documentación Viva y Reportes Avanzados de Pruebas</title><link>https://yrkan.com/es/blog/serenity-bdd-integration/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/serenity-bdd-integration/</guid><description>&lt;p&gt;Serenity BDD (anteriormente Thucydides) es una poderosa biblioteca open-source que mejora el BDD proporcionando capacidades excepcionales de reportes y documentación viva. Según el JVM Ecosystem Report 2024 de JRebel, los frameworks BDD son utilizados por el 34% de los equipos de desarrollo Java, siendo Cucumber el más popular. Serenity extiende Cucumber y JBehave con reportes HTML entendibles para los stakeholders, historial completo de capturas de pantalla y trazabilidad de requisitos—transformando los resultados crudos de tests en documentación que los product owners pueden leer sin conocimiento técnico. El patrón Screenplay, la alternativa de Serenity a los Page Objects, aborda los problemas de mantenibilidad que hacen frágiles a las grandes suites de Selenium. Según los propios casos de estudio de Serenity, los equipos que adoptan Screenplay reportan una reducción del 40-60% en tiempo de mantenimiento gracias a una mejor separación entre objetivos del usuario e interacciones UI. Esta guía explora la integración de Serenity con frameworks BDD, la arquitectura del patrón Screenplay y sus capacidades de reportes.&lt;/p&gt;</description></item><item><title>Jenkins Pipeline para Automatización de Pruebas</title><link>https://yrkan.com/es/blog/jenkins-pipeline-for-test-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jenkins-pipeline-for-test-automation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Jenkins Pipeline para automatización de testing usa Declarative Pipeline (Jenkinsfile) con parallel{} para ejecución concurrente, Shared Libraries para lógica de etapas reutilizable y análisis JUnit XML para visualización de resultados. Usa bloques post.always{} para publicar informes incluso en caso de fallo.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;En 2024, el 78% de los equipos de software que usan Jenkins reportaron mejoras significativas en la eficiencia de la automatización de pruebas mediante la implementación adecuada de pipelines. Jenkins Pipeline transforma cómo los equipos de QA abordan las pruebas continuas al habilitar infraestructura como código, ejecución paralela de pruebas e integración perfecta con frameworks de testing. Esta guía completa te muestra cómo construir pipelines de Jenkins robustos y escalables diseñados específicamente para flujos de trabajo de automatización de pruebas.&lt;/p&gt;</description></item><item><title>Jest &amp; Testing Library: Pruebas Modernas de Componentes para Aplicaciones React</title><link>https://yrkan.com/es/blog/jest-testing-library-pruebas-componentes/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jest-testing-library-pruebas-componentes/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Jest es el test runner; React Testing Library es la utilidad de interacción con componentes. Juntos son el estándar para testing de React. Consulta por rol y label (no selectores CSS), usa userEvent para interacciones, MSW para mocking de API y findBy para elementos asíncronos. Jest es usado por el 73% de desarrolladores JavaScript.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Jest y React Testing Library se han convertido en el estándar de facto para testear aplicaciones React, combinando un potente test runner con utilidades de interacción centradas en el usuario. Jest, desarrollado por Facebook/Meta, proporciona la infraestructura completa de testing — ejecución de tests, aserciones, mocking y cobertura de código — mientras que React Testing Library (RTL) de Kent C. Dodds fomenta testear componentes tal como los usuarios realmente interactúan con ellos. Según la encuesta State of JS 2023, Jest es utilizado por el 73% de los desarrolladores JavaScript, convirtiéndolo en el framework de testing más adoptado del ecosistema. Las estadísticas de npm muestran que @testing-library/react superó los 10 millones de descargas semanales en 2024. La combinación soporta prácticas modernas: consultas basadas en accesibilidad, simulación de eventos de usuario y integración con CI/CD.&lt;/p&gt;</description></item><item><title>Jest Tutorial: Guía Completa de Unit Testing en JavaScript</title><link>https://yrkan.com/es/blog/jest-testing-tutorial/</link><pubDate>Tue, 27 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jest-testing-tutorial/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Jest es un framework de testing sin configuración que incluye assertions, mocking y cobertura&lt;/li&gt;
&lt;li&gt;Matchers como &lt;code&gt;toBe&lt;/code&gt;, &lt;code&gt;toEqual&lt;/code&gt;, &lt;code&gt;toContain&lt;/code&gt; hacen assertions legibles&lt;/li&gt;
&lt;li&gt;Mockea funciones con &lt;code&gt;jest.fn()&lt;/code&gt;, módulos con &lt;code&gt;jest.mock()&lt;/code&gt;, timers con &lt;code&gt;jest.useFakeTimers()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Testing async: usa &lt;code&gt;async/await&lt;/code&gt;, &lt;code&gt;resolves/rejects&lt;/code&gt;, o callback &lt;code&gt;done&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Snapshot testing captura UI — útil para componentes React&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Desarrolladores JavaScript/TypeScript, proyectos React/Vue/Node.js, equipos queriendo todo-en-uno
&lt;strong&gt;Omite si:&lt;/strong&gt; Necesitas testing basado en navegador (usa Playwright/Cypress en su lugar)&lt;/p&gt;</description></item><item><title>Jest vs Mocha: Comparación de Testing JavaScript 2026</title><link>https://yrkan.com/es/blog/jest-vs-mocha-comparison/</link><pubDate>Sat, 07 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jest-vs-mocha-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Jest&lt;/strong&gt;: Zero-config, mocking/coverage/snapshots incorporados, paralelo por defecto — lo recomiendo para la mayoría de proyectos nuevos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mocha&lt;/strong&gt;: Flexibilidad de elegir tus herramientas, ecosistema Node.js establecido, mejor para equipos que quieren control&lt;/li&gt;
&lt;li&gt;Jest corre 2-3x más rápido en suites grandes gracias a workers paralelos y ordenamiento inteligente&lt;/li&gt;
&lt;li&gt;Mocha + Chai + Sinon da las mismas capacidades, pero requiere 3 paquetes en vez de 1&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos eligiendo un framework de testing JavaScript para proyecto nuevo o existente
&lt;strong&gt;Omite si:&lt;/strong&gt; Usas Vite (usa Vitest) o Python (usa pytest)&lt;/p&gt;</description></item><item><title>JMeter Tutorial: Guía Completa de Load Testing</title><link>https://yrkan.com/es/blog/jmeter-tutorial-load-testing/</link><pubDate>Thu, 29 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jmeter-tutorial-load-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Apache JMeter es la herramienta de load testing open-source más popular del mundo. Instálala, crea un Thread Group, agrega HTTP Samplers, ejecuta en modo CLI y analiza resultados en el reporte HTML.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Apache JMeter es la herramienta de pruebas de carga más descargada globalmente, con más de 10 millones de descargas según las estadísticas de Apache Software Foundation. Según el SmartBear State of API Testing 2024, el 47% de los equipos que realizan pruebas de carga usan JMeter — más del doble que la siguiente herramienta más popular. La GUI permite crear tests mediante grabación o configuración manual sin programación. El uso avanzado agrega parametrización con CSV Data Set Config, correlación con Regular Expression Extractor e integración CI/CD mediante ejecución en modo non-GUI. Este tutorial cubre JMeter desde el primer test hasta la integración en pipelines CI/CD: estructura del test plan, thread groups, samplers, assertions y testing distribuido.&lt;/p&gt;</description></item><item><title>JMeter vs Gatling: Comparación de Herramientas de Carga 2026</title><link>https://yrkan.com/es/blog/jmeter-vs-gatling-comparison/</link><pubDate>Sun, 08 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jmeter-vs-gatling-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;JMeter&lt;/strong&gt;: Basado en GUI, Java, más protocolos, comunidad más grande&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gatling&lt;/strong&gt;: Basado en código, Scala/Java, mejor performance, CI/CD moderno&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Recursos&lt;/strong&gt;: Gatling usa 5-10x menos memoria para misma carga&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Curva de aprendizaje&lt;/strong&gt;: JMeter más fácil para principiantes, Gatling mejor para developers&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige JMeter&lt;/strong&gt;: Sistemas legacy, múltiples protocolos, no-programadores&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige Gatling&lt;/strong&gt;: Pipelines CI/CD, alta carga, equipos de developers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 9 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;JMeter y Gatling son las dos herramientas líderes de load testing open-source, cada una representando una filosofía de arquitectura distinta para testing de performance. Apache JMeter, lanzado por primera vez en 1998, ha construido una de las comunidades más grandes en testing de performance y sigue siendo la herramienta más usada en la categoría — su modelo de un hilo por usuario y su extenso ecosistema de plugins soportan todo desde HTTP hasta JDBC, JMS y LDAP. Gatling, lanzado en 2012, introdujo una arquitectura async basada en modelo de actores que usa 5-10x menos memoria para carga equivalente, haciéndolo significativamente más eficiente en recursos con alta concurrencia. El informe SmartBear State of Software Quality 2025 encontró que el 58% de los equipos ahora ejecutan tests de performance en CI/CD, creando demanda para los modos headless de ambas herramientas. Esta comparación cubre arquitectura, eficiencia de recursos, modelo de scripting y los contextos de equipo donde cada herramienta genuinamente destaca.&lt;/p&gt;</description></item><item><title>k6 Tutorial: Load Testing Moderno con JavaScript</title><link>https://yrkan.com/es/blog/k6-load-testing-tutorial/</link><pubDate>Fri, 30 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/k6-load-testing-tutorial/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;k6 es una herramienta de load testing moderna y amigable — escribe tests en JavaScript&lt;/li&gt;
&lt;li&gt;Instala con brew/apt/docker, escribe scripts, corre desde CLI&lt;/li&gt;
&lt;li&gt;Define thresholds para criterios pass/fail: tiempo de respuesta, tasa de error&lt;/li&gt;
&lt;li&gt;Métricas integradas: http_req_duration, http_reqs, iterations, vus&lt;/li&gt;
&lt;li&gt;Integra con CI/CD, Grafana Cloud, InfluxDB para dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Desarrolladores, DevOps, equipos que quieren tests de performance como código
&lt;strong&gt;Omite si:&lt;/strong&gt; Necesitas diseño GUI o protocolos exóticos (usa JMeter)&lt;/p&gt;</description></item><item><title>k6 vs JMeter: Comparación de Load Testing Moderno 2026</title><link>https://yrkan.com/es/blog/k6-vs-jmeter-comparison/</link><pubDate>Mon, 09 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/k6-vs-jmeter-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;k6&lt;/strong&gt;: Basado en JavaScript, moderno, ligero, excelente CI/CD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;JMeter&lt;/strong&gt;: Basado en GUI, Java, más protocolos, comunidad establecida&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Recursos&lt;/strong&gt;: k6 usa 10-20x menos memoria para misma carga&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para developers&lt;/strong&gt;: k6 (código como tests, control de versiones)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para equipos QA&lt;/strong&gt;: JMeter (GUI, no requiere código)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para CI/CD&lt;/strong&gt;: k6 (construido para pipelines de automatización)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 9 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;k6 y JMeter representan dos generaciones de filosofía de load testing, y la brecha entre ellos se ha ampliado a medida que el desarrollo moderno se movió hacia flujos de trabajo CI/CD-first. k6, con más de 26.000 estrellas en GitHub, fue construido por Grafana Labs específicamente para testing de performance centrado en el desarrollador — su scripting basado en JavaScript, runtime en Go y lógica de pass/fail basada en umbrales se integran directamente en pipelines automatizados. Una sola instancia de k6 puede simular 50.000+ usuarios virtuales en 8GB de RAM, comparado con aproximadamente 2.000 para JMeter en condiciones equivalentes. Apache JMeter ha sido el estándar de la industria desde 1998 — su GUI, ecosistema de plugins y soporte multiprotocolo (HTTP, JDBC, JMS, LDAP) lo hacen insustituible para equipos que testean sistemas no-HTTP o trabajan sin habilidades de codificación. El informe SmartBear State of Software Quality 2025 encontró que el 64% de los equipos prioriza la integración CI/CD en su selección de herramientas de performance — una métrica que favorece significativamente la arquitectura de k6 sobre el diseño GUI-first de JMeter.&lt;/p&gt;</description></item><item><title>K6: Load Testing Moderno con JavaScript para Equipos DevOps</title><link>https://yrkan.com/es/blog/k6-load-testing-moderno/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/k6-load-testing-moderno/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; K6 es una herramienta de load testing open-source amigable para desarrolladores, escrita en Go y scriptable en JavaScript. Ideal para CI/CD y microservicios modernos. Soporta HTTP/2, WebSockets y gRPC. Métricas clave: http_req_duration, http_req_failed, vus. K6 es la herramienta de load testing open-source más adoptada entre equipos cloud-native.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;K6 es una herramienta moderna de load testing open-source diseñada para performance testing amigable con desarrolladores que se integra naturalmente en los flujos de trabajo CI/CD. Construida con Go para alta eficiencia y scriptable en JavaScript — el lenguaje que ya conocen la mayoría de los desarrolladores web — K6 permite a los equipos incorporar las pruebas de rendimiento desde el inicio, ejecutando load tests como parte de cada pull request o pipeline de despliegue. Según el informe State of Observability 2024 de Grafana Labs, K6 se ha convertido en la herramienta de load testing open-source más adoptada entre los equipos cloud-native, con más de 90 millones de pulls de Docker. La herramienta soporta HTTP/1.1, HTTP/2, WebSockets y gRPC, siendo adecuada para arquitecturas modernas de microservicios. Su diseño CLI-first significa que los scripts de tests viven en control de versiones junto al código de la aplicación.&lt;/p&gt;</description></item><item><title>Karate API Testing Tutorial: Guía Completa del Framework BDD</title><link>https://yrkan.com/es/blog/karate-api-testing-tutorial/</link><pubDate>Thu, 05 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/karate-api-testing-tutorial/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Karate = testing de API BDD sin código Java (tests en archivos &lt;code&gt;.feature&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Sintaxis: Given/When/Then con assertions JSON/XML incorporadas&lt;/li&gt;
&lt;li&gt;No se necesitan step definitions separadas — assertions incorporadas en DSL&lt;/li&gt;
&lt;li&gt;Incluye mocking, testing de performance, ejecución paralela&lt;/li&gt;
&lt;li&gt;Corre en JVM pero tests escritos en sintaxis tipo Gherkin&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos que quieren BDD sin programación, desarrollo rápido de tests API
&lt;strong&gt;Omite si:&lt;/strong&gt; Necesitas control programático completo (usa REST Assured)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 14 minutos&lt;/p&gt;</description></item><item><title>Katalon Studio: Plataforma Completa Todo-en-Uno para Automatización de Pruebas</title><link>https://yrkan.com/es/blog/katalon-studio-solucion-todo-en-uno/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/katalon-studio-solucion-todo-en-uno/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Katalon Studio es una plataforma de automatización todo-en-uno construida sobre Selenium y Appium. Soporta web, móvil (iOS/Android), API (REST/SOAP) y testing desktop. Nivel gratuito disponible. Características clave: record-and-playback, self-healing de localizadores con IA, integración CI/CD nativa, integración Jira/Git. Usado por más de 850.000 testers mundialmente.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Katalon Studio es una plataforma completa de automatización de testing todo-en-uno que democratiza la automatización combinando el poder de Selenium y Appium con un entorno de desarrollo integrado accesible. A diferencia de los frameworks de automatización puros que requieren configuración significativa y expertise en programación, Katalon proporciona creación de tests, ejecución, integración CI/CD y reporting en un solo paquete. Según el Magic Quadrant de Gartner para automatización de testing de software, Katalon es reconocido como Visionario por su capacidad de servir tanto automatización sin código como con scripting en una plataforma unificada. Según el informe de Katalon 2023, más de 850.000 testers en todo el mundo usan la plataforma. Katalon soporta testing web en todos los principales navegadores, testing móvil en iOS y Android vía Appium, testing de API REST/SOAP y testing de aplicaciones desktop, con self-healing basado en IA para localizadores de elementos.&lt;/p&gt;</description></item><item><title>Kitchen-Terraform para Testing: Guía de Mantenimiento Legacy y Migración</title><link>https://yrkan.com/es/blog/kitchen-terraform-for-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/kitchen-terraform-for-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Kitchen-Terraform fue &lt;strong&gt;archivado en octubre 2024&lt;/strong&gt;—no lo uses para proyectos nuevos&lt;/li&gt;
&lt;li&gt;Si heredaste un codebase con Kitchen-Terraform, esta guía te ayuda a mantenerlo mientras planificas la migración&lt;/li&gt;
&lt;li&gt;Los patrones de compliance de InSpec siguen siendo valiosos—migra a tests nativos de Terraform o InSpec standalone&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos manteniendo configuraciones legacy de Kitchen-Terraform o planificando migración&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; Empiezas desde cero—usa &lt;a href="https://yrkan.com/es/blog/terraform-testing-and-validation-strategies/"&gt;tests nativos de Terraform&lt;/a&gt; o &lt;a href="https://yrkan.com/es/blog/terratest-testing-infrastructure-as-code/"&gt;Terratest&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 10 minutos&lt;/p&gt;</description></item><item><title>Lighthouse Performance Testing: Dominando Core Web Vitals</title><link>https://yrkan.com/es/blog/lighthouse-performance-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/lighthouse-performance-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Lighthouse mide Core Web Vitals (LCP, INP, CLS) y da scores de Performance, Accessibility, Best Practices y SEO. Ejecútalo en Chrome DevTools, vía CLI o automatiza con Lighthouse CI en tu pipeline.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Google Lighthouse es la herramienta de auditoría de rendimiento web más utilizada, integrada directamente en Chrome DevTools y usada por millones de desarrolladores. Según el HTTP Archive Web Almanac 2024, solo el 43% de las páginas móviles alcanzan el estado &amp;ldquo;Bueno&amp;rdquo; en los tres Core Web Vitals — LCP, INP y CLS. Google confirmó en 2021 que los Core Web Vitals son factores de ranking, lo que vincula directamente los scores de Lighthouse con la visibilidad en búsquedas. Lighthouse proporciona scores compuestos para Performance, Accessibility, Best Practices y SEO, con cada score derivado de combinaciones de métricas ponderadas. Esta guía cubre Lighthouse desde la primera auditoría hasta la integración de presupuestos de rendimiento en pipelines CI/CD.&lt;/p&gt;</description></item><item><title>LitmusChaos 3.27.0: Novedades en Jobs y Estabilidad</title><link>https://yrkan.com/es/tools-updates/litmus-chaos-3-27-whats-new/</link><pubDate>Thu, 26 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/litmus-chaos-3-27-whats-new/</guid><description>&lt;h3 id="litmuschaos-3270-novedades-en-jobs-y-estabilidad"&gt;LitmusChaos 3.27.0: Novedades en Jobs y Estabilidad &lt;a href="#litmuschaos-3270-novedades-en-jobs-y-estabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;LitmusChaos 3.27.0, una actualización menor lanzada el 18 de marzo de 2026, ofrece mejoras significativas para los equipos de DevOps y QA que implementan la ingeniería del caos. Esta versión se centra en expandir las capacidades de los experimentos y en mejorar la estabilidad y confiabilidad general de la plataforma, asegurando un entorno de pruebas de caos más robusto y predecible.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cambios Clave&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Living Documentation: Auto-Generar Documentación desde Código y Pruebas</title><link>https://yrkan.com/es/blog/living-documentation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/living-documentation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La documentación viva se genera automáticamente desde código y tests, manteniéndose siempre actualizada. Usa Swagger para docs de API, Cucumber/Serenity para reportes BDD y Allure para visibilidad de ejecución de tests. Integra la generación en CI para que los docs se actualicen en cada build.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La documentación tradicional enfrenta un desafío persistente: se vuelve obsoleta en el momento en que cambia el código. &lt;strong&gt;Living Documentation&lt;/strong&gt; resuelve este problema generando documentación directamente desde el código fuente, pruebas y especificaciones ejecutables. Este enfoque asegura que la documentación permanezca sincronizada con la implementación, reduce la carga de mantenimiento y proporciona información siempre actual sobre el comportamiento del sistema.&lt;/p&gt;</description></item><item><title>Load Testing con JMeter: Guía Completa</title><link>https://yrkan.com/es/blog/jmeter-load-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jmeter-load-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Apache JMeter simula usuarios concurrentes para pruebas de carga. Crea planes de prueba con Thread Groups, HTTP Samplers y Assertions. Ejecuta en modo no-GUI (jmeter -n -t test.jmx) para integración CI/CD. Usa testing distribuido con nodos worker para escalar a millones de usuarios virtuales.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Apache JMeter (como se discute en &lt;a href="https://yrkan.com/es/blog/performance-testing-comprehensive-guide"&gt;Performance Testing: From Load to Stress Testing&lt;/a&gt;) es una de las herramientas open-source más populares para pruebas de rendimiento y carga. Originalmente diseñada para probar aplicaciones web, JMeter (como se discute en &lt;a href="https://yrkan.com/es/blog/k6-for-testing/"&gt;K6: Modern Load Testing with JavaScript for DevOps Teams&lt;/a&gt;) ha evolucionado en una plataforma de testing integral capaz de probar varios protocolos incluyendo HTTP, HTTPS, SOAP, REST, FTP, JDBC, JMS y más.&lt;/p&gt;</description></item><item><title>Locust Load Testing Tutorial: Guía de Testing de Performance con Python</title><link>https://yrkan.com/es/blog/locust-load-testing-python/</link><pubDate>Wed, 04 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/locust-load-testing-python/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Locust = pruebas de carga basadas en Python (los tests son solo código Python)&lt;/li&gt;
&lt;li&gt;Define comportamiento de usuario en &lt;code&gt;locustfile.py&lt;/code&gt; con decoradores &lt;code&gt;@task&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Ejecuta con web UI (&lt;code&gt;locust&lt;/code&gt;) o headless (&lt;code&gt;locust --headless&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Modo distribuido: un master + N workers para escala masiva&lt;/li&gt;
&lt;li&gt;Métricas en tiempo real: RPS, tiempos de respuesta, tasas de fallo&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos Python, pruebas de carga API, desarrolladores que prefieren código sobre GUI
&lt;strong&gt;Omite si:&lt;/strong&gt; Necesitas construcción de tests basada en GUI o extenso soporte de protocolos (usa JMeter)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;</description></item><item><title>Locust Pruebas de Carga con Python: Guía Completa de Pruebas de Rendimiento</title><link>https://yrkan.com/es/blog/locust-python-load-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/locust-python-load-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Locust es un framework de load testing Python. Escribe escenarios de usuario como clases Python, ejecuta tests vía web UI o CLI, escala con modo distribuido. Perfecto para equipos Python que quieren tests de performance basados en código con integración CI/CD.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Locust es un framework de load testing open-source basado en Python que permite a los ingenieros definir escenarios complejos de comportamiento de usuarios como código Python en lugar de configuraciones XML o flujos GUI. Con más de 24,000 estrellas en GitHub, se ha convertido en la herramienta de load testing preferida para equipos centrados en Python. Según la JetBrains Developer Ecosystem Survey 2024, Python es usado por el 51% de los desarrolladores para automatización de testing. A diferencia del modelo basado en threads de JMeter, Locust usa greenlets (coroutines ligeras) permitiendo que una sola máquina simule miles de usuarios concurrentes con memoria mínima. Esta guía completa cubre Locust desde el primer test hasta el load testing distribuido en producción.&lt;/p&gt;</description></item><item><title>Matrix Testing en Pipelines CI/CD</title><link>https://yrkan.com/es/blog/matrix-testing-in-ci-cd-pipelines/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/matrix-testing-in-ci-cd-pipelines/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El matrix testing ejecuta los mismos tests en múltiples combinaciones de entorno (OS, navegador, versiones Node.js) en jobs CI paralelos. Define con &lt;code&gt;strategy.matrix&lt;/code&gt; en GitHub Actions o &lt;code&gt;parallel&lt;/code&gt; en GitLab CI. Usa para garantizar compatibilidad cross-platform sin ejecución secuencial.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Matrix testing es una de las técnicas más poderosas para asegurar que tu aplicación funcione en múltiples entornos, configuraciones y plataformas. En pipelines CI/CD modernos, matrix testing te permite ejecutar la misma suite de pruebas en diferentes combinaciones de variables automáticamente. Este tutorial completo te guiará a través de la implementación de estrategias de matrix testing que escalan con tu flujo de desarrollo.&lt;/p&gt;</description></item><item><title>Matriz de Pruebas Cross-Browser: Guía Completa para Estrategia de Testing Multi-Navegador</title><link>https://yrkan.com/es/blog/cross-browser-test-matrix/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cross-browser-test-matrix/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Una matriz de testing cross-browser mapea tus casos de prueba contra combinaciones navegador/OS basándose en analytics de usuarios. Prioriza navegadores Tier 1 (80%+ cobertura) para automatización completa, Tier 2 para smoke tests.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="introducción-a-las-pruebas-cross-browser"&gt;Introducción a las Pruebas Cross-Browser &lt;a href="#introducci%c3%b3n-a-las-pruebas-cross-browser" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas cross-browser aseguran que las aplicaciones web funcionen consistentemente a través de diferentes navegadores, versiones, sistemas operativos y dispositivos. Con más de 15 versiones principales de navegadores y innumerables combinaciones de plataformas y tamaños de pantalla, un enfoque de testing estructurado es esencial para entregar una experiencia de usuario consistente.&lt;/p&gt;</description></item><item><title>Mejores Prácticas de Testing en CircleCI</title><link>https://yrkan.com/es/blog/circleci-testing-best-practices/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/circleci-testing-best-practices/</guid><description>&lt;p&gt;Mejores Prácticas de Testing en CircleCI es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA State of DevOps report, elite performing teams deploy 973x more frequently than low performers (DORA State of DevOps 2024). According to GitLab&amp;rsquo;s 2024 DevSecOps report, teams using CI/CD fix bugs 60% faster than those without automation (GitLab DevSecOps Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Mejores Prácticas de Testing en Pulumi: Pruebas Unitarias, de Propiedades e Integración para IaC</title><link>https://yrkan.com/es/blog/pulumi-testing-best-practices/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/pulumi-testing-best-practices/</guid><description>&lt;p&gt;Pulumi revoluciona el testing de infraestructura al permitir que los equipos usen lenguajes de programación familiares y frameworks de prueba nativos en lugar de aprender herramientas específicas de DSL. Según la encuesta Pulumi State of Cloud Engineering 2022, los equipos que implementan testing comprensivo de infraestructura reducen los fallos de despliegue en un 45% y se recuperan de incidentes un 60% más rápido. Según el Puppet State of DevOps Report 2023, las organizaciones que practican IaC con testing automatizado tienen una frecuencia de despliegue 5x mayor y una tasa de fallos 3x menor. Para los ingenieros de QA y equipos de DevOps, el enfoque de Pulumi significa que las pruebas unitarias con mocks se ejecutan 60x más rápido que las pruebas de integración — un equipo redujo su suite de 20 minutos a 20 segundos.&lt;/p&gt;</description></item><item><title>Memory Leak Testing: Encontrar y Corregir Fugas de Memoria</title><link>https://yrkan.com/es/blog/memory-leak-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/memory-leak-testing/</guid><description>&lt;p&gt;Las fugas de memoria son uno de los problemas de rendimiento más difíciles de detectar en el desarrollo moderno. Según un estudio de Google, aproximadamente el 70% de los errores críticos en navegadores están relacionados con gestión de memoria. Para los ingenieros de QA, detectar fugas temprano previene caídas en producción y mala experiencia de usuario. Una encuesta de JetBrains 2023 reveló que el 45% de los desarrolladores citan la gestión de memoria como su principal preocupación de rendimiento. Esta guía cubre técnicas prácticas para detectar, diagnosticar y prevenir fugas de memoria usando DevTools del navegador, perfiladores como Node.js clinic, Python tracemalloc y JVisualVM, más pruebas automatizadas con umbrales de crecimiento de memoria para CI/CD.&lt;/p&gt;</description></item><item><title>Mentoría de Ingenieros QA Junior: Guía Completa para Transferencia de Conocimiento Efectiva</title><link>https://yrkan.com/es/blog/mentoring-junior-qa-engineers/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mentoring-junior-qa-engineers/</guid><description>&lt;p&gt;El mentoring efectivo es una de las inversiones de mayor impacto que puede hacer un ingeniero de QA senior. Según el LinkedIn Workplace Learning Report 2023, los empleados con mentores son promovidos cinco veces más frecuentemente que quienes trabajan sin apoyo, y las organizaciones con culturas de mentoring retienen un 20% más de empleados. Para los equipos de QA, la transferencia de conocimiento es especialmente crítica: los juniors suelen llegar con formación teórica pero poca experiencia práctica en escenarios reales de testing. Un enfoque estructurado de mentoring — con plan de onboarding de 90 días, pair testing y revisiones de código — puede reducir el tiempo hasta la plena productividad de seis meses a menos de tres.&lt;/p&gt;</description></item><item><title>Metamorphic Testing: Validando Software Sin Salidas Correctas Conocidas</title><link>https://yrkan.com/es/blog/metamorphic-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/metamorphic-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;El metamorphic testing es una de las técnicas más subutilizadas en la industria. Una vez que internalizas la mentalidad de testear relaciones en lugar de valores absolutos, empiezas a encontrar bugs en lugares donde el testing tradicional simplemente no llega.&amp;rdquo; — Yuri Kan, Senior QA Lead&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — El metamorphic testing verifica relaciones entre entradas y salidas (relaciones metamórficas) en lugar de comparar con valores esperados. Es la técnica principal para testear modelos ML, compiladores y software científico. Esta guía cubre los cinco tipos principales de relaciones con ejemplos en Python y un framework reutilizable.&lt;/p&gt;</description></item><item><title>Métricas y KPIs de Testing: Midiendo Calidad y Progreso</title><link>https://yrkan.com/es/blog/testing-metrics-kpis-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testing-metrics-kpis-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
Las métricas de testing convierten evaluaciones subjetivas de calidad en decisiones basadas en datos. Las cinco métricas esenciales son: Densidad de Defectos (por KLOC), Fuga de Defectos (objetivo &amp;lt;5%), Eficiencia de Eliminación de Defectos (objetivo &amp;gt;90%), Cobertura de Automatización de Pruebas y Velocidad de Ejecución. Según investigación de SmartBear, los equipos que rastrean métricas de defectos sistemáticamente lanzan 35% menos defectos en producción que los equipos que dependen de la intuición.&lt;/p&gt;</description></item><item><title>Mobile App Security Testing: Guía Completa iOS y Android</title><link>https://yrkan.com/es/blog/mobile-security-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-security-testing/</guid><description>&lt;p&gt;Las apps móviles son cada vez más la principal superficie de ataque para brechas de datos y fraude. El IBM Cost of a Data Breach Report 2023 encontró que el costo promedio de una brecha relacionada con móviles es de $4.45 millones, un aumento del 15% en tres años. El OWASP Mobile Security Testing Guide (MSTG) identifica vulnerabilidades críticas en apps iOS y Android, con almacenamiento inseguro de datos y autenticación incorrecta encabezando consistentemente los problemas de seguridad móvil. El informe NowSecure 2023 encontró que el 83% de las apps móviles probadas tenían al menos una vulnerabilidad de seguridad. Esta guía cubre análisis estático (MobSF), dinámico (Frida, Burp Suite) y técnicas de pentesting para plataformas móviles.&lt;/p&gt;</description></item><item><title>Mobile Performance Profiling: Memoria, Batería y Más Allá</title><link>https://yrkan.com/es/blog/mobile-performance-profiling-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-performance-profiling-guide/</guid><description>&lt;p&gt;El rendimiento móvil se mide directamente en resultados de negocio. La investigación de Google Play encontró que el 53% de los usuarios abandona apps que tardan más de 3 segundos en cargar — un umbral que muchos equipos superan sin saberlo. Según las directrices del App Store de Apple, el consumo excesivo de batería y memoria están entre las principales causas de rechazo de apps. El usuario móvil promedio tiene 80+ apps instaladas pero solo usa activamente 9 por día — lo que significa que el rendimiento determina directamente si tu app está en ese conjunto activo o se desinstala. Según datos de rendimiento de Google Play, cada aumento de 6MB en el tamaño de la app se correlaciona con una caída del 1% en la conversión de instalación. El profiling de rendimiento móvil — la medición sistemática de memoria, CPU, batería, red y comportamiento de inicio — es la disciplina que cierra la brecha entre &amp;ldquo;funciona&amp;rdquo; y &amp;ldquo;los usuarios lo aman&amp;rdquo;.&lt;/p&gt;</description></item><item><title>Mocha Testing Tutorial: Guía Completa de Unit Testing en JavaScript</title><link>https://yrkan.com/es/blog/mocha-testing-tutorial/</link><pubDate>Tue, 03 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mocha-testing-tutorial/</guid><description>&lt;p&gt;Mocha es uno de los frameworks de pruebas JavaScript más populares, con más de 9 millones de descargas semanales en NPM. Según la encuesta State of JS 2023, Mocha mantiene más del 50% de uso entre desarrolladores JavaScript, especialmente para testing backend de Node.js donde ha sido el framework dominante durante casi una década. Según un estudio de npm Trends, Mocha supera consistentemente a frameworks alternativos en proyectos JavaScript del lado servidor por su flexibilidad. Este tutorial cubre desde la configuración inicial de Mocha hasta patrones avanzados incluyendo pruebas async, ciclo de vida de hooks, reporters personalizados y ejecución paralela.&lt;/p&gt;</description></item><item><title>Mocha y Chai: Guía Completa para Testing en JavaScript</title><link>https://yrkan.com/es/blog/mocha-chai-javascript/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mocha-chai-javascript/</guid><description>&lt;p&gt;Mocha y Chai siguen siendo una de las combinaciones de testing JavaScript más adoptadas, utilizadas por millones de desarrolladores para pruebas unitarias y de integración. Según la encuesta State of JS 2023, Mocha mantiene más del 50% de cuota de uso entre desarrolladores JavaScript y es la opción predeterminada en más del 60% de proyectos Node.js backend. Según estadísticas de descargas de NPM, mocha recibe más de 9 millones de descargas semanales. La combinación Mocha + Chai es particularmente poderosa por su diseño complementario: Mocha proporciona estructura flexible y ejecución de pruebas asíncronas, mientras Chai ofrece tres estilos de aserciones (assert, expect, should). Esta guía cubre setup, configuración avanzada y mejores prácticas.&lt;/p&gt;</description></item><item><title>Mock Servers para Desarrollo Móvil: Guía de WireMock, Mockoon y json-server</title><link>https://yrkan.com/es/blog/mock-servers-mobile-dev/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mock-servers-mobile-dev/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Mock servers como WireMock (15+ millones de descargas), Mockoon y json-server permiten a los equipos móviles desarrollar y testear sin backend. Esta guía cubre configuración, integración Android/iOS, CI/CD y patrones avanzados.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los servidores mock son herramientas esenciales para el desarrollo móvil, permitiendo a los equipos desarrollar y probar aplicaciones antes de que las APIs backend estén listas. Según la documentación de WireMock, la herramienta ha acumulado más de 15 millones de descargas y la usan miles de equipos en todo el mundo. Una encuesta de SmartBear sobre API mocking encontró que el 71% de los equipos que usan mocks reportan ciclos de desarrollo más rápidos y menos problemas de integración. Estas herramientas eliminan el problema de &amp;ldquo;bloqueados por el backend&amp;rdquo; que retrasa los releases móviles en toda la industria.&lt;/p&gt;</description></item><item><title>Model-Based Testing: Generación Automática de Pruebas desde Modelos</title><link>https://yrkan.com/es/blog/model-based-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/model-based-testing/</guid><description>&lt;p&gt;El Model-Based Testing (MBT) es un enfoque sistemático que genera casos de prueba automáticamente a partir de modelos formales del comportamiento del sistema. Según un estudio de investigación por IEEE, los equipos que usan MBT reportan una reducción del 40-60% en el tiempo de creación de casos de prueba mientras logran mayor cobertura estructural. Según un estudio publicado en el Journal of Software Testing, las organizaciones que adoptan MBT a nivel de sistema detectan en promedio un 23% más de defectos. Herramientas MBT como Graphwalker, Spec Explorer y Conformiq han visto una adopción creciente. Esta guía cubre conceptos centrales, herramientas MBT populares y estrategias de integración práctica.&lt;/p&gt;</description></item><item><title>Modelos OSI y TCP/IP</title><link>https://yrkan.com/es/course/module-10-networking/osi-tcp-ip-models/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/osi-tcp-ip-models/</guid><description>&lt;h2 id="el-modelo-osi-explicado"&gt;El Modelo OSI Explicado &lt;a href="#el-modelo-osi-explicado" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El modelo de Interconexión de Sistemas Abiertos (OSI) es un marco conceptual que divide la comunicación de red en siete capas distintas. Para ingenieros QA, este modelo proporciona una forma sistemática de diagnosticar dónde ocurren los problemas de red — en lugar de decir &amp;ldquo;no funciona,&amp;rdquo; puedes identificar la capa exacta que causa la falla.&lt;/p&gt;
&lt;p&gt;Piensa en el modelo OSI como un sistema postal. Cuando envías una carta, pasa por múltiples etapas: escribes el contenido (Aplicación), lo pones en un sobre con dirección (Presentación/Sesión), la oficina postal lo enruta (Transporte/Red), el camión lo entrega (Enlace de Datos), y el camino físico lleva al camión (Física). Cada capa tiene un trabajo específico.&lt;/p&gt;</description></item><item><title>Monitoring y Observabilidad para QA: Guía Completa</title><link>https://yrkan.com/es/blog/monitoring-observability-for-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/monitoring-observability-for-qa/</guid><description>&lt;p&gt;La observabilidad y el monitoreo se han convertido en competencias esenciales para los ingenieros de QA a medida que los sistemas se desplazan hacia arquitecturas de microservicios distribuidos. Según un informe de Dynatrace 2023, el 85% de las organizaciones experimentó una interrupción de servicio digital en el último año, con un tiempo medio de detección (MTTD) superior a 70 minutos en organizaciones sin prácticas maduras de observabilidad. Según el DORA State of DevOps, los equipos de alto rendimiento logran un MTTR 100 veces más rápido — y la observabilidad es el diferenciador clave. Para los ingenieros de QA, esto significa pasar de la detección reactiva de bugs a la medición proactiva de calidad.&lt;/p&gt;</description></item><item><title>Monorepo Testing Strategies</title><link>https://yrkan.com/es/blog/monorepo-testing-strategies/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/monorepo-testing-strategies/</guid><description>&lt;p&gt;Los monorepos se han convertido en la estrategia preferida de organización de código en muchas de las mayores empresas tecnológicas del mundo. Según un estudio de Google, Microsoft y Meta, las tres empresas gestionan exitosamente decenas de miles de proyectos en repositorios únicos, con el monorepo de Google conteniendo más de 2 mil millones de líneas de código. Según una encuesta de JetBrains 2023, el 34% de los desarrolladores profesionales trabaja en entornos de monorepo. El desafío de testing en monorepos es único: los cambios en una biblioteca compartida pueden afectar docenas de aplicaciones, requiriendo detección inteligente de pruebas afectadas.&lt;/p&gt;</description></item><item><title>Mutation Testing con IA: Generación Inteligente de Mutantes para Mejor Calidad de Pruebas</title><link>https://yrkan.com/es/blog/mutation-testing-ai/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mutation-testing-ai/</guid><description>&lt;p&gt;El mutation testing mide la efectividad real de tu suite de pruebas introduciendo pequeños cambios de código (mutaciones) y verificando si tus pruebas los detectan. Combinado con IA, se vuelve significativamente más poderoso. Según un estudio de la Universidad Carnegie Mellon, el mutation testing tradicional aplica alrededor de 200-300 operadores de mutación, mientras que los enfoques asistidos por IA identifican hasta 10 veces más mutaciones semánticamente significativas. Según un estudio publicado en IEEE Transactions on Software Engineering, los equipos que usan mutation testing mejorado con IA logran puntuaciones de mutación 35-50% más altas. Esta guía cubre herramientas de mutation testing e integración de enfoques de IA.&lt;/p&gt;</description></item><item><title>Mutation Testing: Midiendo Calidad de Pruebas Más Allá de Cobertura de Código</title><link>https://yrkan.com/es/blog/mutation-testing-coverage/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mutation-testing-coverage/</guid><description>&lt;p&gt;Las métricas de cobertura de código se usan ampliamente para evaluar la calidad del suite de pruebas, pero miden qué código fue ejecutado — no si las pruebas realmente verifican el comportamiento correcto. El mutation testing aborda esta brecha midiendo el kill rate: el porcentaje de defectos de código inyectados (mutaciones) que detectan tus pruebas. Según investigación de Coles et al. publicada en IEEE Software, el mutation testing identifica consistentemente entre un 60-70% más de debilidades en las pruebas que el análisis de cobertura de ramas solo. Según un estudio del Google Testing Blog, los suites de prueba con 80% de cobertura de código pero bajo mutation score frecuentemente permiten que los bugs lleguen a producción.&lt;/p&gt;</description></item><item><title>Negociación Salarial para QA Engineers: Guía Completa</title><link>https://yrkan.com/es/blog/salary-negotiation-qa-engineers/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/salary-negotiation-qa-engineers/</guid><description>&lt;p&gt;La negociacion salarial es una de las actividades con mayor ROI que puede realizar un ingeniero de QA, sin embargo, la mayoria de los profesionales dejan dinero sobre la mesa por preparacion inadecuada. Segun LinkedIn Salary Insights, los ingenieros de QA que negocian su salario reciben en promedio ofertas un 7-10% mas altas, lo que se traduce en $5,000-$15,000+ anuales. Segun Glassdoor, el 59% de los trabajadores acepta el primer salario sin negociar. Para los profesionales de QA, entender las tasas de mercado ($95K-$165K para ingenieros senior en EE.UU.), saber que componentes son negociables (base, bono, capital, trabajo remoto) y preparar estrategias especificas para roles tecnicos mejora significativamente los resultados.&lt;/p&gt;</description></item><item><title>Nightwatch.js Pruebas E2E: Guía Completa para Automatización de Navegadores con Node.js</title><link>https://yrkan.com/es/blog/nightwatch-js-e2e/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/nightwatch-js-e2e/</guid><description>&lt;p&gt;Nightwatch.js es uno de los frameworks de testing end-to-end basados en Node.js más establecidos, ofreciendo soporte WebDriver integrado y una API de pruebas limpia y legible. Según estadísticas de descargas de NPM, Nightwatch.js recibe más de 1 millón de descargas por mes, manteniendo una adopción constante durante más de una década. Según la encuesta State of JavaScript 2023, el 18% de los desarrolladores frontend usa Nightwatch.js para testing E2E. En comparación con herramientas más nuevas como Playwright y Cypress, Nightwatch ofrece las ventajas de adopción empresarial prolongada y soporte nativo de Selenium Grid.&lt;/p&gt;</description></item><item><title>Niveles de Testing: Unit, Integration, System y UAT</title><link>https://yrkan.com/es/blog/testing-levels-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testing-levels-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
El testing tiene cuatro niveles con responsables distintos: pruebas unitarias (desarrolladores), integración, sistema y UAT. Las pruebas unitarias detectan defectos de la forma más económica. Sigue la pirámide: invierte la mayor parte del esfuerzo en los niveles inferiores, donde los defectos son 100-10.000 veces más baratos de corregir.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; desarrolladores y QA engineers que construyen una estrategia de testing o estudian conceptos ISTQB
&lt;strong&gt;Puedes omitirlo si:&lt;/strong&gt; necesitas configuración de frameworks de automatización o pipelines CI/CD&lt;/p&gt;</description></item><item><title>NLP para Convertir Requisitos en Tests: De User Stories a BDD Automatizado</title><link>https://yrkan.com/es/blog/nlp-requirements-tests/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/nlp-requirements-tests/</guid><description>&lt;p&gt;El Procesamiento de Lenguaje Natural (NLP) está transformando cómo los equipos de QA extraen casos de prueba de documentos de requisitos. Según un estudio de Capgemini 2023, el proyecto de software empresarial promedio aún dedica un 20-30% del esfuerzo de QA al análisis de requisitos y derivación de casos de prueba — actividades que NLP puede acelerar significativamente. Según investigación del Testing Excellence Group, los equipos que usan generación de casos de prueba asistida por NLP reducen el tiempo de ciclo de requisitos a caso de prueba en un 40-60%. Herramientas desde plataformas comerciales hasta bibliotecas Python open-source (spaCy, transformers) ahora permiten a los ingenieros de QA parsear especificaciones en lenguaje natural y generar escenarios de prueba automáticamente.&lt;/p&gt;</description></item><item><title>Notas de Lanzamiento para QA: Qué Probar en la Nueva Versión</title><link>https://yrkan.com/es/blog/release-notes-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/release-notes-qa/</guid><description>&lt;p&gt;Las release notes enfocadas en QA cierran la brecha entre los changelogs de desarrolladores y las directivas de testing accionables, transformando qué cambió en qué probar, con qué profundidad y con qué prioridad. Según un estudio del Software Testing Institute, los equipos que usan release notes de QA estructuradas reducen el tiempo de planificación de pruebas en un 45% y logran un 30% mejor cobertura de regresión comparado con equipos que interpretan changelogs genéricos. Según la investigación del Atlassian Developer Success Lab, los equipos de QA que reciben información de cambios bien estructurada gastan 2,5 horas menos por ciclo de release en análisis de alcance de pruebas. Para los ingenieros de QA y líderes de testing, dominar las release notes enfocadas en QA significa extraer señales de riesgo de historiales de commits, mapear cambios a áreas de prueba e identificar puntos calientes de regresión.&lt;/p&gt;</description></item><item><title>Optimización de Pipelines CI/CD para Equipos QA</title><link>https://yrkan.com/es/blog/ci-cd-pipeline-optimization-for-qa-teams/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ci-cd-pipeline-optimization-for-qa-teams/</guid><description>&lt;p&gt;Optimización de Pipelines CI/CD para Equipos QA es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA State of DevOps report, elite performing teams deploy 973x more frequently than low performers (DORA State of DevOps 2024). According to GitLab&amp;rsquo;s 2024 DevSecOps report, teams using CI/CD fix bugs 60% faster than those without automation (GitLab DevSecOps Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Oratoria Pública para QA: De Charlas de Conferencias a Presentaciones en Meetups</title><link>https://yrkan.com/es/blog/public-speaking-qa-conferences/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/public-speaking-qa-conferences/</guid><description>&lt;p&gt;Las presentaciones públicas son uno de los aceleradores de carrera más poderosos para los profesionales de QA, pero la mayoría de los ingenieros las subutiliza. Según una encuesta de Toastmasters International, el 74% de las personas sufre ansiedad por hablar en público, pero quienes la superan reportan una prima salarial promedio del 20% sobre sus pares que evitan las presentaciones públicas. Según investigaciones de LinkedIn en 2022, los profesionales que hablan en conferencias de la industria reciben 3 veces más contactos de reclutadores y un 45% más de visitas a su perfil que sus pares que no presentan. Para los ingenieros de QA, la profundidad técnica requerida en nuestro trabajo — desde decisiones de arquitectura de pruebas hasta evaluaciones de herramientas — nos convierte en voces únicas valiosas en la comunidad de testing. Esta guía cubre el camino completo desde tu primera presentación en un meetup local hasta hablar en las principales conferencias.&lt;/p&gt;</description></item><item><title>OWASP ZAP Automation: Escaneo de Seguridad en CI/CD</title><link>https://yrkan.com/es/blog/owasp-zap-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/owasp-zap-automation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — OWASP ZAP es el escáner de seguridad gratuito más descargado del mundo, con más de 10 millones de descargas. Esta guía cubre integración CI/CD, escaneo de API, políticas personalizadas, configuración de autenticación y reporting automatizado para equipos QA.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;OWASP ZAP es la herramienta gratuita de testing de seguridad más popular del mundo, confiada por miles de organizaciones. Según las estadísticas del proyecto OWASP, ZAP ha sido descargado más de 10 millones de veces. Según una investigación de MarketsandMarkets, el mercado global de testing de seguridad de aplicaciones alcanzará los $10,4 mil millones en 2027, lo que hace que las habilidades de security testing sean cada vez más valiosas. Integrar ZAP en los pipelines CI/CD permite a los equipos detectar SQL injection, XSS y cabeceras inseguras antes de producción.&lt;/p&gt;</description></item><item><title>Page Objects Generados por IA: Automatizando la Automatización</title><link>https://yrkan.com/es/blog/ai-page-objects/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-page-objects/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Los generadores de page objects con IA reducen el tiempo de creación en &lt;strong&gt;70%&lt;/strong&gt; y la sobrecarga de mantenimiento en &lt;strong&gt;85%&lt;/strong&gt; mediante análisis inteligente del DOM&lt;/li&gt;
&lt;li&gt;Los localizadores auto-reparables con puntuaciones de estabilidad predichas por ML (0.92+) eliminan la causa #1 de pruebas inestables: selectores frágiles&lt;/li&gt;
&lt;li&gt;El punto óptimo: usar IA para generación inicial y optimización de selectores, pero &lt;strong&gt;la revisión humana sigue siendo crítica&lt;/strong&gt; para lógica de negocio y casos límite&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos manteniendo 50+ page objects, aplicaciones con cambios frecuentes de UI, proyectos sufriendo fallos de pruebas por localizadores&lt;/p&gt;</description></item><item><title>Pairwise Testing: Optimización Combinatoria para Cobertura de Pruebas</title><link>https://yrkan.com/es/blog/pairwise-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/pairwise-testing/</guid><description>&lt;p&gt;El pairwise testing (también conocido como all-pairs testing) es una técnica de diseño de pruebas combinatoria que reduce dramáticamente el número de casos de prueba necesarios para lograr cobertura integral. Según investigación publicada por Microsoft, el 70% de los defectos de producción pueden detectarse probando todos los pares de variables de entrada — mucho más eficiente que el testing combinatorio exhaustivo que crece exponencialmente con cada nuevo parámetro. Según un estudio de IBM, el pairwise testing reduce el número de casos de prueba en un 60-80% en comparación con el testing de todas las combinaciones mientras mantiene tasas comparables de detección de defectos.&lt;/p&gt;</description></item><item><title>Paralelización de Tests en CI/CD: Guía Completa para Builds Más Rápidos</title><link>https://yrkan.com/es/blog/test-parallelization-in-ci-cd/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-parallelization-in-ci-cd/</guid><description>&lt;p&gt;Según el DORA State of DevOps Report 2024, los equipos de ingeniería elite mantienen &lt;strong&gt;tiempos de build medianos bajo 10 minutos&lt;/strong&gt; — y la paralelización de tests es consistentemente la técnica #1 que separa los equipos que despliegan rápido de los que lo hacen despacio. La investigación del blog de ingeniería de Google encontró que su infraestructura de CI ejecuta tests con una &lt;strong&gt;reducción de tiempo superior al 88%&lt;/strong&gt; mediante sharding inteligente, permitiendo que suites de 45 minutos secuenciales se completen en menos de 8 minutos. Sin embargo, la gran mayoría de equipos de ingeniería todavía ejecuta tests secuencialmente, aceptando tiempos de pipeline de 20-60 minutos como inevitables. La paralelización de tests distribuye tu suite entre múltiples workers ejecutando simultáneamente, reduciendo el tiempo de ejecución proporcionalmente al número de workers — con la estrategia de división correcta. Esta guía cubre el stack completo de paralelización: desde sharding básico hasta distribución avanzada basada en tiempos, configuración CI multiplataforma, y los anti-patrones que causan fallos en tests cuando se ejecutan en paralelo.&lt;/p&gt;</description></item><item><title>Penetration Testing Basics para QA Testers</title><link>https://yrkan.com/es/blog/penetration-testing-basics/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/penetration-testing-basics/</guid><description>&lt;p&gt;El testing de penetración transforma el conocimiento de seguridad de teórico a práctico intentando activamente explotar vulnerabilidades en condiciones controladas. Según el Ponemon Institute Cost of a Data Breach Report 2023, las organizaciones que realizan pruebas de penetración regulares experimentan brechas que cuestan en promedio $1.6 millones menos que las que no lo hacen. Según un estudio de IBM Security, las organizaciones con programas maduros de pruebas de penetración detectan vulnerabilidades 54 días más rápido. Para los ingenieros de QA que se expanden hacia el testing de seguridad, los fundamentos del pentesting — reconocimiento, escaneo de vulnerabilidades, explotación e informes — forman una metodología sistemática.&lt;/p&gt;</description></item><item><title>Percy, Applitools &amp; BackstopJS: Comparación de Soluciones de Visual Regression Testing</title><link>https://yrkan.com/es/blog/percy-applitools-backstopjs-regresion-visual/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/percy-applitools-backstopjs-regresion-visual/</guid><description>&lt;p&gt;El testing de regresión visual se ha vuelto esencial para el desarrollo frontend moderno. Según un estudio de Applitools 2023, los bugs visuales son responsables del 60% de los problemas de UI reportados por usuarios. Según investigación de Browserstack, los equipos que implementan testing visual detectan en promedio 4 defectos visuales por cada 100 cambios de código. Herramientas como Percy, Applitools Eyes y BackstopJS ofrecen enfoques distintos.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Las herramientas de testing de regresión visual comparan snapshots de UI. Percy se integra con CI y Storybook, Applitools usa IA, BackstopJS es open-source. Los tres siguen el flujo baseline-capture/compare/approve.&lt;/p&gt;</description></item><item><title>Performance Profiling Guide: Optimización CPU, Memoria, Red</title><link>https://yrkan.com/es/blog/performance-profiling-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/performance-profiling-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
El performance profiling convierte &amp;ldquo;la app se siente lenta&amp;rdquo; en datos medibles. La investigación de Google muestra que un retraso de 100ms aumenta las tasas de abandono en un 7%, y las páginas que cumplen los umbrales de Core Web Vitals tienen un 24% menos de abandonos. Perfila la CPU con flame graphs, rastrea asignaciones de memoria, analiza consultas de base de datos con EXPLAIN y usa APM en producción.&lt;/p&gt;</description></item><item><title>Performance Testing: de Carga a Estrés</title><link>https://yrkan.com/es/blog/performance-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/performance-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Performance testing&lt;/strong&gt;: Evalúa velocidad, estabilidad y escalabilidad bajo diversas condiciones de carga&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tipos clave&lt;/strong&gt;: Carga (tráfico esperado), Estrés (punto de quiebre), Picos (aumentos repentinos), Endurance (carga sostenida)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Métricas críticas&lt;/strong&gt;: Tiempo de respuesta p95/p99, throughput (RPS), tasa de errores, utilización de recursos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Benchmark Google&lt;/strong&gt;: LCP bajo 2.5s, FID bajo 100ms, CLS bajo 0.1 para buena experiencia de usuario&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proceso&lt;/strong&gt;: Definir SLAs → Identificar escenarios → Preparar entorno → Ejecutar → Analizar → Optimizar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CI/CD&lt;/strong&gt;: Automatiza smoke tests de rendimiento en cada PR; pruebas completas antes de releases&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las pruebas de rendimiento son una práctica de aseguramiento de calidad que determina si los sistemas de software cumplen con los requisitos de velocidad, estabilidad y escalabilidad bajo condiciones reales de carga. Según Google, el 53% de las visitas móviles son abandonadas cuando las páginas tardan más de 3 segundos en cargarse. Investigación de Akamai encontró que un retraso de 100 milisegundos en el tiempo de carga puede reducir las tasas de conversión en un 7%, mientras que un retraso de 2 segundos aumenta las tasas de rebote en un 103%. A diferencia de las pruebas funcionales que validan qué hace el sistema, las pruebas de rendimiento se enfocan en qué tan rápido, estable y escalable opera bajo presión. El ISTQB define el performance testing como una disciplina estructurada que abarca pruebas de carga, estrés, picos, volumen y resistencia, cada una diseñada para exponer una clase diferente de deficiencia. Esta guía cubre los cinco tipos, las métricas que importan y un enfoque sistemático para identificar y eliminar cuellos de botella.&lt;/p&gt;</description></item><item><title>Performance Testing: De la Carga al Estrés</title><link>https://yrkan.com/es/blog/performance-testing-comprehensive-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/performance-testing-comprehensive-guide/</guid><description>&lt;p&gt;El rendimiento determina directamente si los usuarios vuelven. La investigación de Google sobre Core Web Vitals muestra que un aumento de 100ms en el tiempo de carga de página reduce las conversiones hasta un 7%, y los datos de rendimiento web de Akamai confirman que el 40% de los usuarios abandona páginas que tardan más de 3 segundos en cargar. Según el ISTQB, las pruebas de rendimiento son una disciplina de calidad distinta que cubre pruebas de carga, estrés, pico, volumen y resistencia. Sin embargo, muchos equipos tratan el rendimiento como una preocupación de última hora, descubriendo puntos de quiebre durante lanzamientos de productos en vez de durante las ejecuciones de pruebas. Esta guía cubre el panorama completo de las pruebas de rendimiento — desde la selección de herramientas hasta la identificación de cuellos de botella y métricas alineadas con SLAs.&lt;/p&gt;</description></item><item><title>Pipeline CI/CD para Testers: Guía Completa de Integración</title><link>https://yrkan.com/es/blog/cicd-pipeline-for-testers/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cicd-pipeline-for-testers/</guid><description>&lt;p&gt;Pipeline CI/CD para Testers: Guía Completa de Integración es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA State of DevOps report, elite performing teams deploy 973x more frequently than low performers (DORA State of DevOps 2024). According to GitLab&amp;rsquo;s 2024 DevSecOps report, teams using CI/CD fix bugs 60% faster than those without automation (GitLab DevSecOps Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Pirámide de Automatización de Pruebas: Construyendo la Estrategia Correcta</title><link>https://yrkan.com/es/blog/piramide-automatizacion-estrategia/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/piramide-automatizacion-estrategia/</guid><description>&lt;p&gt;La pirámide de automatización de pruebas es uno de los frameworks más duraderos en calidad de software, pero los equipos la implementan mal repetidamente: SmartBear State of Software Quality 2024 reporta que el 58% de los equipos con inversiones fallidas en automatización tienen suites dominadas por tests E2E en lugar de la base de unit tests recomendada por la pirámide — esto lleva a builds lentos (40+ minutos de CI), alto overhead de mantenimiento, y falsos negativos por tests inestables. El concepto de pirámide, introducido por Mike Cohn en &amp;ldquo;Succeeding with Agile&amp;rdquo; (2009), codifica un principio económico crítico: los unit tests son 100 veces más baratos de escribir, 100 veces más rápidos y 10 veces más fáciles de depurar que los tests E2E — por eso deben dominar tu portfolio de automatización. Esta guía cubre la estrategia completa de la pirámide.&lt;/p&gt;</description></item><item><title>Plan de Pruebas y Estrategia de Testing: Blueprint para el Éxito</title><link>https://yrkan.com/es/blog/test-plan-test-strategy-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-plan-test-strategy-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
La estrategia de testing define la filosofía de largo plazo de tu organización; el plan de pruebas la traduce en detalles de ejecución por sprint. El estándar IEEE 829 es una buena base, pero hay que adaptarlo — los equipos Ágiles necesitan documentos vivos, no PDFs estáticos. Aplica testing basado en riesgos y define siempre criterios de entrada y salida medibles.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; QA leads y test managers que crean o mejoran las prácticas de documentación del equipo
&lt;strong&gt;Puedes omitirlo si:&lt;/strong&gt; necesitas guía de configuración de frameworks de automatización o herramientas de testing&lt;/p&gt;</description></item><item><title>Plataformas de Pruebas en la Nube: Guía Completa de BrowserStack, Sauce Labs, AWS Device Farm y Más</title><link>https://yrkan.com/es/blog/cloud-testing-platforms/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cloud-testing-platforms/</guid><description>&lt;p&gt;Plataformas de Pruebas en la Nube: Guía Completa de BrowserStack, Sauce Labs, AWS Device Farm y Más es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, worldwide cloud spending will exceed $1 trillion by 2025, making cloud testing skills essential (Gartner Cloud Forecast). According to HashiCorp&amp;rsquo;s 2024 State of Cloud Strategy survey, 78% of organizations use a multi-cloud strategy (HashiCorp State of Cloud 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Playwright vs Cypress: Comparación Completa 2026</title><link>https://yrkan.com/es/blog/playwright-vs-cypress-comparison/</link><pubDate>Fri, 06 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/playwright-vs-cypress-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Playwright&lt;/strong&gt;: Multi-navegador, multi-lenguaje, ejecución paralela más rápida, mejor para escenarios complejos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cypress&lt;/strong&gt;: Setup más fácil, mejor DX para equipos JavaScript, debugging time-travel superior&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Velocidad&lt;/strong&gt;: Playwright ~40% más rápido en ejecución paralela (gratis vs Cypress Cloud $67+/mes)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Navegadores&lt;/strong&gt;: Playwright = Chromium, Firefox, WebKit nativamente; Cypress = WebKit aún experimental&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige Playwright&lt;/strong&gt; si: cross-browser es crítico, suites grandes, necesitas múltiples lenguajes, enfoque CI/CD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige Cypress&lt;/strong&gt; si: equipo solo JavaScript, apps simples, prioridad es debugging interactivo&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos decidiendo su framework E2E principal para 2026+
&lt;strong&gt;Omite si:&lt;/strong&gt; Estás comparando frameworks de testing unitario (esto es sobre E2E)&lt;/p&gt;</description></item><item><title>Postman vs Insomnia vs Bruno vs Paw: Comparación Completa de Herramientas API 2025</title><link>https://yrkan.com/es/blog/api-tools-comparison-2025/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-tools-comparison-2025/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Postman&lt;/strong&gt;: 30M+ usuarios, mejor para colaboración enterprise, mock servers y monitoreo API — pero cada vez más caro&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Insomnia&lt;/strong&gt;: UI más limpia, mejor soporte GraphQL, núcleo con licencia MIT, $7-18/usuario/mes para funciones de equipo&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bruno&lt;/strong&gt;: 100% gratuito, Git-nativo, offline-first — la mejor alternativa open-source a Postman en 2025&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Paw&lt;/strong&gt;: app nativa macOS con la mejor experiencia de diseño, ahora parte de RapidAPI&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conclusión&lt;/strong&gt;: solo/equipos pequeños → Bruno; equipos GraphQL → Insomnia; enterprise → Postman; puristas macOS → Paw&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2 id="introducción"&gt;Introducción &lt;a href="#introducci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El panorama de herramientas de testing de API ha evolucionado drásticamente, con Postman dominando la adopción enterprise mientras las alternativas open-source desafían su posición. En 2024, Postman superó los 30 millones de usuarios registrados, convirtiéndose en el cliente API más utilizado globalmente. Sin embargo, herramientas como Bruno (lanzada en 2022) ganaron más de 29.000 estrellas en GitHub en menos de dos años, señalando un fuerte apetito de los desarrolladores por alternativas open-source y Git-nativas. El mercado global de gestión de APIs se proyecta en $21.500 millones para 2027 (Allied Market Research). En 2025, elegir la herramienta correcta de testing de API significa balancear características, costo, necesidades de colaboración en equipo y capacidades de integración. Esta comparación analiza cuatro herramientas líderes — Postman, Insomnia, Bruno y Paw — para ayudar a los equipos a tomar una decisión informada.&lt;/p&gt;</description></item><item><title>Postman vs Insomnia: Comparación de Clientes API 2026</title><link>https://yrkan.com/es/blog/postman-vs-insomnia-comparison/</link><pubDate>Sun, 08 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/postman-vs-insomnia-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Postman&lt;/strong&gt; gana para colaboración de equipos, documentación API, mock servers y monitoreo&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Insomnia&lt;/strong&gt; gana para GraphQL, UI limpia, velocidad y equipos con presupuesto ajustado&lt;/li&gt;
&lt;li&gt;Ambos manejan REST, GraphQL y gRPC — la diferencia está en el flujo de trabajo, no en capacidad&lt;/li&gt;
&lt;li&gt;La migración entre ellos toma menos de 10 minutos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos eligiendo entre estas dos herramientas para testing API diario
&lt;strong&gt;Omite si:&lt;/strong&gt; Ya te comprometiste con Bruno o Thunder Client&lt;/p&gt;</description></item><item><title>Preparación para Entrevista QA: Guía Completa para Conseguir tu Próximo Rol</title><link>https://yrkan.com/es/blog/qa-interview-preparation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/qa-interview-preparation/</guid><description>&lt;p&gt;Las entrevistas de ingeniería de QA se han vuelto cada vez más rigurosas, requiriendo que los candidatos demuestren competencia en programación, pensamiento de diseño de sistemas y conocimiento profundo de testing además de las habilidades blandas tradicionales. Según un informe de LinkedIn Talent Insights, QA Engineer está entre los 10 roles tecnológicos de más rápido crecimiento con un aumento del 30% año tras año en publicaciones de empleo. Según datos de Glassdoor, la entrevista promedio de QA Engineer en las principales empresas tecnológicas involucra 4-6 rondas incluyendo screening técnico, ejercicios de codificación, diseño de sistemas y evaluaciones conductuales. Para candidatos que apuntan a posiciones senior y SDET, la preparación debe ser comprensiva — cubriendo estructuras de datos, escenarios de testing de API, arquitectura CI/CD y frameworks de storytelling conductual como STAR.&lt;/p&gt;</description></item><item><title>Principios de Testing: 7 Reglas de Oro de ISTQB</title><link>https://yrkan.com/es/blog/testing-principles/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testing-principles/</guid><description>&lt;p&gt;El plan de estudios de ISTQB Foundation Level — enseñado a más de &lt;strong&gt;1 millón de testers certificados en todo el mundo&lt;/strong&gt; — se centra en 7 principios de testing que han permanecido fundamentales desde la década de 1970 cuando Glenford Myers los documentó por primera vez en &lt;em&gt;The Art of Software Testing&lt;/em&gt;. Según el World Quality Report 2024, los equipos que aplican principios de testing estructurados (selección de pruebas basada en riesgo, detección temprana de defectos, análisis sistemático de cobertura) entregan software con &lt;strong&gt;35% menos defectos en producción&lt;/strong&gt; comparado con equipos que usan enfoques ad-hoc. Estos principios no son teoría abstracta — resuelven problemas reales recurrentes: por qué el testing exhaustivo falla matemáticamente, por qué pasar las pruebas no garantiza calidad, por qué los defectos se agrupan predeciblemente en el 20% de la base de código, y por qué tu suite de regresión pierde efectividad sin mantenimiento deliberado. Según la investigación de Gartner 2024, las organizaciones con prácticas de testing maduras basadas en estos principios tienen un 45% menos de tasa de defectos escapados.&lt;/p&gt;</description></item><item><title>Prompt Engineering para QA: Dominio de Consultas Efectivas a IA</title><link>https://yrkan.com/es/blog/prompt-engineering-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/prompt-engineering-qa/</guid><description>&lt;p&gt;El prompt engineering para QA es la disciplina de crear entradas precisas para modelos de lenguaje de IA con el fin de maximizar la calidad de los resultados en tareas de testing. Según una encuesta de GitHub en 2023, los desarrolladores que usan asistentes de codificación con IA reportan mejoras de productividad del 55%, pero la mayoría de los profesionales de QA carecen de enfoques sistemáticos para los prompts. Según investigaciones publicadas por Anthropic, la calidad de los resultados de la IA puede variar entre 3 y 5 veces según únicamente cómo están estructurados los prompts, con el razonamiento en cadena de pensamiento y los prompts basados en roles superando consistentemente las solicitudes genéricas. Para los ingenieros de QA, dominar el prompt engineering permite generar casos de prueba más rápidamente, analizar mejor los informes de bugs, redactar documentación automáticamente y realizar evaluaciones de riesgos más precisas.&lt;/p&gt;</description></item><item><title>Property-Based Testing: Testing Generativo para Invariantes del Sistema</title><link>https://yrkan.com/es/blog/property-based-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/property-based-testing/</guid><description>&lt;p&gt;El testing basado en propiedades (PBT) genera automáticamente cientos de casos de prueba definiendo invariantes — reglas que siempre deben cumplirse — en lugar de crear manualmente ejemplos individuales. Según investigaciones de John Hughes, el creador de QuickCheck, el testing basado en propiedades encontró más de 200 bugs en los sistemas de telecomunicaciones de Erlang que las pruebas tradicionales basadas en ejemplos pasaron completamente por alto. Según un estudio en IEEE Software, los equipos que usan PBT junto con pruebas basadas en ejemplos reportaron tasas de detección de defectos un 35-50% más altas para casos extremos y condiciones de frontera. Para los ingenieros de QA que trabajan con lógica de negocio compleja, transformaciones de datos o APIs, frameworks de PBT como Hypothesis (Python), QuickCheck y fast-check (JavaScript) ofrecen un poderoso complemento a los enfoques tradicionales de testing.&lt;/p&gt;</description></item><item><title>Pruebas de Accesibilidad Móvil: Cumplimiento WCAG para iOS y Android</title><link>https://yrkan.com/es/blog/mobile-accessibility-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-accessibility-testing/</guid><description>&lt;p&gt;El testing de accesibilidad móvil ya no es opcional — es un imperativo legal y ético. La Organización Mundial de la Salud reporta que más de 1.300 millones de personas en todo el mundo viven con alguna forma de discapacidad, representando el 16% de la población mundial. Solo en Estados Unidos, la ADA ha resultado en más de 4.000 demandas de accesibilidad digital anuales, con apps móviles cada vez más en la mira. Una encuesta WebAIM 2023 encontró que más del 96% de las pantallas principales móviles analizadas tenían fallos de accesibilidad detectables. Esta guía cubre estrategias integrales de testing de accesibilidad móvil, incluyendo herramientas automatizadas y verificación de cumplimiento WCAG 2.2.&lt;/p&gt;</description></item><item><title>Pruebas de Caja Blanca: Mirando Dentro del Código</title><link>https://yrkan.com/es/blog/white-box-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/white-box-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de caja blanca examina la estructura interna del código usando métricas de cobertura de sentencias, ramas, rutas y condiciones. Requiere conocimientos de programación y acceso al código fuente. Ideal para unit testing, security testing y validación de algoritmos. Objetivo: 80%+ cobertura de sentencias, 70%+ cobertura de ramas.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El testing de caja blanca es una técnica de verificación basada en código donde los ingenieros QA y desarrolladores examinan la estructura interna, lógica y algoritmos de una aplicación para diseñar casos de prueba completos. A diferencia del testing de caja negra que se enfoca solo en entradas y salidas, el testing de caja blanca — también llamado testing estructural o de caja de cristal — requiere acceso al código fuente y conocimientos de programación. Según un informe NIST de 2023, el 64% de las vulnerabilidades descubiertas en producción podrían haberse detectado antes con testing estructural durante el desarrollo. Los datos de Google Site Reliability Engineering muestran que los equipos con más del 70% de cobertura de ramas experimentan un 40% menos de incidentes en producción relacionados con errores de lógica. Las técnicas incluyen cobertura de sentencias, ramas, rutas y análisis de flujo de datos.&lt;/p&gt;</description></item><item><title>Pruebas de Caja Gris: Lo Mejor de Dos Mundos</title><link>https://yrkan.com/es/blog/grey-box-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/grey-box-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de caja gris combina conocimiento interno parcial (diagramas de arquitectura, esquemas de BD, contratos API) con ejecución externa de pruebas. Encuentra un 40% más de defectos que el testing de caja negra puro al dirigirse a los puntos de fallo probables identificados del conocimiento parcial.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El testing de caja gris encuentra un 40% más de defectos que el testing de caja negra puro en escenarios de integración, según investigaciones publicadas en IEEE Transactions on Software Engineering. La clave: los testers que conocen la arquitectura pueden apuntar a los puntos de fallo probables sin necesitar ver el código fuente. El equipo de seguridad de Google usa fuzzing de caja gris (fuzzing guiado por cobertura con conocimiento interno parcial) como su técnica principal de descubrimiento de vulnerabilidades — encontrando 5 veces más bugs de seguridad que el fuzzing de caja negra tradicional, según el Google Project Zero Report 2024. El testing de caja gris ocupa el espacio óptimo entre caja blanca (costoso, requiere acceso al código) y caja negra (efectividad limitada): los testers tienen suficiente contexto interno para diseñar tests dirigidos pero los ejecutan externamente como usuarios reales. Esta guía cubre técnicas de testing de caja gris para integración, evaluación de seguridad, identificación de cuellos de botella y testing de APIs.&lt;/p&gt;</description></item><item><title>Pruebas de Caja Negra: Técnicas y Enfoques</title><link>https://yrkan.com/es/blog/black-box-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/black-box-testing/</guid><description>&lt;p&gt;Pruebas de Caja Negra: Técnicas y Enfoques es una disciplina crítica en el aseguramiento de calidad de software moderno. According to NIST, software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to research by Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Pruebas de Colas de Mensajes: Sistemas Asíncronos y Arquitectura Event-Driven</title><link>https://yrkan.com/es/blog/message-queue-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/message-queue-testing/</guid><description>&lt;p&gt;Las colas de mensajes forman la columna vertebral de los sistemas distribuidos modernos. Según el informe State of Messaging 2024 de Confluent, más del 70% de las empresas dependen de brokers de mensajes como Apache Kafka, AWS SQS o RabbitMQ como infraestructura crítica. Para los ingenieros de QA, probar estos sistemas presenta desafíos únicos: el comportamiento asíncrono hace que las aserciones sean sensibles al tiempo, y los fallos pueden acumularse silenciosamente en dead-letter queues. Una encuesta de Postman 2023 encontró que el 41% de los equipos considera el testing de APIs async su mayor brecha. Esta guía cubre estrategias para probar orden de mensajes, idempotencia, lógica de reintentos y manejo de poison messages.&lt;/p&gt;</description></item><item><title>Pruebas de Cumplimiento para Infrastructure as Code: Guía Completa</title><link>https://yrkan.com/es/blog/compliance-testing-for-iac/</link><pubDate>Mon, 19 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/compliance-testing-for-iac/</guid><description>&lt;p&gt;Pruebas de Cumplimiento para Infrastructure as Code: Guía Completa es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, worldwide cloud spending will exceed $1 trillion by 2025, making cloud testing skills essential (Gartner Cloud Forecast). According to HashiCorp&amp;rsquo;s 2024 State of Cloud Strategy survey, 78% of organizations use a multi-cloud strategy (HashiCorp State of Cloud 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Pruebas de Estimación de Costos para Infrastructure as Code: Guía Completa</title><link>https://yrkan.com/es/blog/cost-estimation-testing-for-iac/</link><pubDate>Tue, 20 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cost-estimation-testing-for-iac/</guid><description>&lt;h2 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Qué:&lt;/strong&gt; Las pruebas de estimación de costos validan cambios de infraestructura contra umbrales de presupuesto antes del despliegue&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Por qué:&lt;/strong&gt; Previene facturas cloud sorpresa—detecta aumentos de costos durante revisión de PR, no después de recibir la factura&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas:&lt;/strong&gt; Infracost (tier gratis disponible), calculadoras nativas de cloud, análisis personalizado de terraform plan&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Métrica clave:&lt;/strong&gt; 100% de cambios IaC tienen estimaciones de costo visibles en comentarios de PR&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Empieza aquí:&lt;/strong&gt; Añade Infracost a tu pipeline CI/CD para diff de costos automático en cada PR de terraform&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En 2025, las organizaciones que usan estimación de costos automatizada en sus pipelines IaC redujeron los aumentos inesperados de costos cloud en un 64%. Una sola política de autoescalado mal configurada o un ambiente de desarrollo olvidado puede costar miles de dólares. Las pruebas de estimación de costos hacen visibles los costos de infraestructura antes del despliegue.&lt;/p&gt;</description></item><item><title>Pruebas de Infraestructura como Código: Estrategias de Validación para Terraform y Ansible</title><link>https://yrkan.com/es/blog/infrastructure-code-testing-validation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/infrastructure-code-testing-validation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; La validación de código de infraestructura combina terraform validate (sintaxis), Checkov/tfsec (seguridad), Conftest/OPA (cumplimiento personalizado) y Terratest (integración). Para Kubernetes, añade kubeval/kubeconform y kube-score. Integra todo en checks de PR en CI/CD para detectar configuraciones incorrectas antes de crear recursos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La validación de código de infraestructura detecta el 85% de las configuraciones incorrectas de seguridad antes del despliegue. El pipeline de validación para infraestructura cloud moderna tiene cuatro etapas: validación de sintaxis, escaneo de seguridad (Checkov para 1000+ reglas), aplicación de políticas personalizadas (Conftest/OPA) y testing de integración (Terratest). Según la CNCF Survey 2024, el 71% de las organizaciones con Kubernetes ejecutan validación automática de manifiestos en CI/CD. El enfoque shift-left proporciona 10x reducción de costos: detectar una mala configuración en PR cuesta minutos; detectarla post-despliegue cuesta horas.&lt;/p&gt;</description></item><item><title>Pruebas de Interfaces de Voz: QA para la Era Conversacional</title><link>https://yrkan.com/es/blog/voice-interface-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/voice-interface-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de interfaces de voz valida reconocimiento de voz, clasificación de intents, flujo de diálogo y soporte multi-idioma. Testea con acentos diversos, condiciones acústicas y contextos de conversación. Usa simuladores de plataforma para CI/CD y testing en dispositivo real antes del lanzamiento.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El testing de interfaces de voz aborda uno de los segmentos de interacción humano-computadora de más rápido crecimiento. Según el Voicebot.ai 2024 Voice Assistant Consumer Adoption Report, 145 millones de adultos en Estados Unidos usan asistentes de voz mensualmente. Las interfaces de voz introducen desafíos de testing fundamentalmente diferentes al testing de UI visual: precisión de reconocimiento de voz, clasificación de intents, gestión de estado de diálogo, manejo de conversaciones multi-turno, variabilidad acústica (acentos, ruido de fondo) y soporte multi-idioma requieren enfoques de testing especializados. Esta guía cubre testing de interfaces de voz desde validación básica de utterances hasta estrategias de monitoreo en producción.&lt;/p&gt;</description></item><item><title>Pruebas de Juegos Móviles: Guía Completa de QA para Aplicaciones de Gaming</title><link>https://yrkan.com/es/blog/mobile-game-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-game-testing/</guid><description>&lt;p&gt;Los juegos móviles son uno de los mercados de software más grandes y competitivos globalmente, generando más de $92 mil millones en ingresos en 2023 según el Newzoo Global Games Market Report. Con más de 3 mil millones de jugadores móviles en todo el mundo y sesiones promedio de 8-12 minutos, los problemas de rendimiento y los bugs que rompen el juego se traducen directamente en desinstalaciones y reseñas negativas. Los datos de Google Play muestran que las apps con calificación 4+ reciben un 200% más de instalaciones que las calificadas por debajo de 3 estrellas. Esta guía cubre estrategias de fragmentación de dispositivos, profiling de rendimiento y métricas de calidad específicas para juegos móviles.&lt;/p&gt;</description></item><item><title>Pruebas de Migración de Base de Datos: Guía de Flyway y Liquibase</title><link>https://yrkan.com/es/blog/database-migration-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/database-migration-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de migraciones valida cambios de schema con Flyway/Liquibase. Testea rollbacks, verifica integridad de datos, usa patrones expand-contract para cero tiempo de inactividad y siempre testea en snapshots de producción.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las migraciones de bases de datos son operaciones críticas que pueden hacer o romper los despliegues en producción. Las pruebas adecuadas de bases de datos son esenciales para mantener la confiabilidad del sistema. Esta guía completa cubre estrategias de pruebas para migraciones de bases de datos usando Flyway y Liquibase, asegurando cambios de esquema seguros y despliegues sin tiempo de inactividad.&lt;/p&gt;</description></item><item><title>Pruebas de Notificaciones Push: Guía Completa de Validación FCM y APNs</title><link>https://yrkan.com/es/blog/push-notifications-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/push-notifications-testing/</guid><description>&lt;p&gt;Las notificaciones push son la columna vertebral de la comunicación en tiempo real en las aplicaciones móviles, pero son notoriamente difíciles de probar debido a su dependencia de infraestructura específica de plataforma (Firebase Cloud Messaging para Android, Apple Push Notification Service para iOS). Según datos de Firebase, las notificaciones push tienen una tasa de entrega promedio del 85-90% cuando se implementan correctamente, sin embargo, las implementaciones mal probadas pueden tener tasas inferiores al 40% por formatos de payload incorrectos y problemas de gestión de tokens. Según un estudio de Airship 2023, las aplicaciones móviles con estrategias de notificaciones push correctamente probadas tienen tasas de engagement de usuario 3-4x más altas. Esta guía cubre estrategias comprensivas para probar integraciones de FCM y APNs, notificaciones locales vs remotas, validación de entrega y testing automatizado.&lt;/p&gt;</description></item><item><title>Pruebas de Policy as Code: Guía Completa de OPA y Sentinel</title><link>https://yrkan.com/es/blog/policy-as-code-testing/</link><pubDate>Sun, 18 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/policy-as-code-testing/</guid><description>&lt;p&gt;Policy as code es la práctica de definir, versionar y aplicar automáticamente reglas de gobernanza a través de código en lugar de documentación manual y revisión. Según una encuesta de CNCF 2024, el 67% de las organizaciones que usan Kubernetes ahora implementan policy as code para control de admisión, frente al 28% en 2021. Según un estudio de HashiCorp, los equipos con aplicación automatizada de políticas resuelven violaciones de cumplimiento 10 veces más rápido que los que dependen de ciclos de auditoría manual. Para los ingenieros de QA, policy as code significa probar la infraestructura de la misma forma que probarías el código de la aplicación.&lt;/p&gt;</description></item><item><title>Pruebas de Rate Limiting de API: Throttling y Estrategias de Backoff</title><link>https://yrkan.com/es/blog/api-rate-limiting-testing/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/api-rate-limiting-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Siempre prueba que las respuestas 429 incluyan headers &lt;code&gt;Retry-After&lt;/code&gt; y &lt;code&gt;X-RateLimit-*&lt;/code&gt;—los clientes dependen de ellos para backoff correcto&lt;/li&gt;
&lt;li&gt;Token bucket permite ráfagas, sliding window es más estricto—elige según el patrón de tráfico de tu API&lt;/li&gt;
&lt;li&gt;Implementa backoff exponencial con jitter en clientes para prevenir efecto manada después del reset del rate limit&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; APIs con exposición pública, sistemas multi-tenant, microservicios protegiendo recursos compartidos&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; APIs solo internas con clientes confiables, fase de prototipado&lt;/p&gt;</description></item><item><title>Pruebas de Rendimiento de Aplicaciones Móviles: Métricas, Herramientas y Mejores Prácticas</title><link>https://yrkan.com/es/blog/mobile-app-performance/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-app-performance/</guid><description>&lt;p&gt;El rendimiento de las apps móviles determina directamente la retención de usuarios y los ingresos del negocio. Según la investigación de Google 2023 sobre rendimiento móvil, el 53% de las visitas a sitios móviles se abandonan si las páginas tardan más de 3 segundos en cargar, y cada segundo adicional de retraso reduce las conversiones en un 20%. Para apps nativas, las apuestas son aún más altas: los algoritmos del App Store y Google Play degradan activamente las apps con altas tasas de crashes o eventos ANR. Un estudio de Firebase encontró que las apps con monitoreo de Crashlytics detectan un 70% más de crashes en pre-producción. Esta guía cubre herramientas de profiling de rendimiento para iOS y Android.&lt;/p&gt;</description></item><item><title>Pruebas de Seguridad con IA: Encontrar Vulnerabilidades Más Rápido</title><link>https://yrkan.com/es/blog/ai-security-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-security-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Las pruebas de seguridad con IA encuentran &lt;strong&gt;3x más vulnerabilidades&lt;/strong&gt; que las pruebas manuales reduciendo falsos positivos en &lt;strong&gt;80%&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;El fuzzing guiado por ML descubre vulnerabilidades críticas &lt;strong&gt;60% más rápido&lt;/strong&gt; que enfoques de mutación aleatoria tradicionales&lt;/li&gt;
&lt;li&gt;El pentesting automatizado reduce costos de evaluación de seguridad en &lt;strong&gt;50%&lt;/strong&gt; proporcionando cobertura continua&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Organizaciones con &amp;gt;50 endpoints de aplicación, equipos con releases semanales+, industrias reguladas que requieren auditorías de seguridad&lt;/p&gt;</description></item><item><title>Pruebas de Service Mesh: Guía de Pruebas de Istio y Linkerd</title><link>https://yrkan.com/es/blog/service-mesh-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/service-mesh-testing/</guid><description>&lt;p&gt;Los service meshes se han convertido en componentes de infraestructura esenciales para la comunicación de microservicios. Según la Encuesta Anual CNCF 2024, el 42% de los despliegues de producción de Kubernetes incluyen un service mesh, con Istio teniendo el 64% de cuota de mercado y Linkerd el 27%. A diferencia de las pruebas a nivel de aplicación, las pruebas de service mesh validan el comportamiento del plano de control: políticas de enrutamiento de tráfico, circuit breakers, lógica de reintentos, configuraciones de mTLS e inyección de fallos, asegurando que los patrones de resiliencia funcionen exactamente como están configurados. Una política de reintentos mal configurada puede cascadear fallos a través de docenas de servicios. Esta guía cubre estrategias de pruebas prácticas para Istio y Linkerd, incluyendo configuración local con kind, validación de enrutamiento, pruebas de circuit breaker y chaos testing.&lt;/p&gt;</description></item><item><title>Pruebas de Sistemas AI/ML: Nuevos Desafíos para QA</title><link>https://yrkan.com/es/blog/testing-ai-ml-systems/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testing-ai-ml-systems/</guid><description>&lt;p&gt;Según el World Quality Report 2024, el &lt;strong&gt;68% de organizaciones&lt;/strong&gt; que han desplegado sistemas AI/ML reportan que los métodos tradicionales de QA son insuficientes para validar el comportamiento del modelo — un cambio fundamental de testear lógica determinística a testear sistemas probabilísticos. La investigación de Google sobre prácticas de ingeniería ML encontró que &lt;strong&gt;los problemas de calidad de datos causan el 70-80% de las fallas de producción ML&lt;/strong&gt;, haciendo que la validación de datos sea la actividad de testing con mayor ROI para equipos de IA. A diferencia del software tradicional donde los bugs existen en el código, los defectos ML pueden estar embebidos en las distribuciones de datos de entrenamiento, los pesos del modelo, o la brecha entre los entornos de entrenamiento y producción — problemas que los unit tests y las aserciones funcionales no pueden detectar. La investigación de Gartner sobre despliegue AI 2024 encontró que las organizaciones con prácticas maduras de testing ML experimentan &lt;strong&gt;un 45% menos de incidentes en producción&lt;/strong&gt; y detectan la degradación del modelo 3 veces antes.&lt;/p&gt;</description></item><item><title>Pruebas de Sistemas de Pago Móvil: Guía Completa para Ingenieros QA</title><link>https://yrkan.com/es/blog/mobile-payment-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-payment-testing/</guid><description>&lt;p&gt;Los pagos móviles son uno de los dominios más críticos en seguridad y regulación en el testing de software. El valor global de transacciones de pago móvil alcanzó $2.1 billones en 2023 y se proyecta que supere los $12 billones para 2028 según Statista. Con los requisitos PCI DSS 4.0 ahora vigentes y mayor escrutinio regulatorio de las apps fintech, los fallos de testing de pagos tienen consecuencias más allá de la experiencia de usuario: multas regulatorias y pérdida de certificación de procesador de pagos. Un informe Verizon Payment Security 2023 encontró que solo el 43% de las organizaciones mantuvo cumplimiento total PCI DSS. Esta guía cubre estrategias integrales de testing de pagos móviles.&lt;/p&gt;</description></item><item><title>Pruebas Funcionales: Guía Completa de la A a la Z</title><link>https://yrkan.com/es/blog/guia-completa-pruebas-funcionales/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/guia-completa-pruebas-funcionales/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pruebas funcionales&lt;/strong&gt;: Verificar que el software hace lo que debe (enfoque de caja negra)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tipos&lt;/strong&gt;: Smoke → Sanity → Regression → Integration → System → UAT&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Práctica clave&lt;/strong&gt;: Escribir casos de prueba que se tracen directamente a requisitos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automatizá&lt;/strong&gt;: Smoke y regression tests; mantené exploratory y UAT manuales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SmartBear 2025&lt;/strong&gt;: El 91% de los equipos usa pruebas funcionales como su principal control de calidad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Checklist crítico&lt;/strong&gt;: Validación de inputs, manejo de errores, lógica de negocio, persistencia de datos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 18 minutos&lt;/p&gt;</description></item><item><title>Pruebas Móviles Multiplataforma: Estrategias para el Éxito Multi-Dispositivo</title><link>https://yrkan.com/es/blog/cross-platform-mobile-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cross-platform-mobile-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing móvil cross-platform requiere una matriz de dispositivos priorizada basada en analytics de usuarios. Usa Appium o device farms cloud para automatización, y enfoca suites completas en las principales combinaciones dispositivo/OS que cubren el 80% de tu base de usuarios.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="introducción-a-los-desafíos-de-las-pruebas-multiplataforma"&gt;Introducción a los Desafíos de las Pruebas Multiplataforma &lt;a href="#introducci%c3%b3n-a-los-desaf%c3%ados-de-las-pruebas-multiplataforma" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En el ecosistema móvil actual, las aplicaciones deben funcionar perfectamente en cientos de combinaciones de dispositivos. Las pruebas móviles multiplataforma abordan la complejidad de garantizar funcionalidad, rendimiento y experiencia de usuario consistentes en diferentes sistemas operativos, fabricantes de dispositivos, tamaños de pantalla y versiones de OS.&lt;/p&gt;</description></item><item><title>Pruebas No Funcionales: Más Allá de la Funcionalidad</title><link>https://yrkan.com/es/blog/guia-pruebas-no-funcionales/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/guia-pruebas-no-funcionales/</guid><description>&lt;p&gt;Las pruebas no funcionales determinan si los usuarios realmente disfrutan y confían en tu software — no solo si técnicamente funciona. Según la taxonomía de testing del ISTQB, las pruebas no funcionales cubren el modelo de calidad completo definido por ISO 25010, incluyendo rendimiento, usabilidad, confiabilidad, compatibilidad, seguridad, accesibilidad y localización. Las consecuencias son medibles: el 88% de los usuarios no vuelve después de una mala experiencia, un segundo de retraso en la carga reduce las conversiones de e-commerce en un 7%, y el incumplimiento de accesibilidad ha generado miles de demandas en Estados Unidos. Con el 15% de la población mundial viviendo con alguna forma de discapacidad, las pruebas de accesibilidad no son opcionales — son un requisito legal y ético. Esta guía te da un framework práctico y completo para los cuatro pilares de las pruebas no funcionales: usabilidad, compatibilidad, localización y accesibilidad.&lt;/p&gt;</description></item><item><title>Puppeteer vs Playwright: Comparación Exhaustiva para Automatización de Pruebas</title><link>https://yrkan.com/es/blog/puppeteer-vs-playwright-comparison/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/puppeteer-vs-playwright-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Elegí Puppeteer&lt;/strong&gt; para: web scraping, generación de PDF, automatización específica de Chrome, tareas ligeras&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elegí Playwright&lt;/strong&gt; para: testing E2E, cobertura cross-browser, test runner integrado, debugging avanzado&lt;/li&gt;
&lt;li&gt;Ambos tienen ~90% de compatibilidad de API para operaciones básicas — la migración es directa&lt;/li&gt;
&lt;li&gt;Playwright ha superado a Puppeteer en descargas de npm para casos de uso de testing&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 18 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Puppeteer y Playwright son las dos herramientas dominantes de automatización de navegadores en Node.js, pero han divergido fundamentalmente en propósito: Puppeteer destaca en tareas específicas de Chrome mientras Playwright se ha convertido en el framework líder para testing E2E cross-browser. Puppeteer, lanzado por Google en 2017, ha acumulado aproximadamente 89.000 estrellas en GitHub y fue pionero en automatización directa del Chrome DevTools Protocol. Playwright, construido por Microsoft en 2020 con un equipo de ex-ingenieros de Puppeteer, tiene aproximadamente 68.000 estrellas en GitHub pero ha superado a Puppeteer en descargas semanales de npm para proyectos de testing E2E. Según las tendencias de descargas npm, las descargas semanales de Playwright para casos de uso de testing ahora superan las de Puppeteer. Según el informe SmartBear State of Software Quality 2025, la adopción de testing cross-browser creció un 28% interanual — un factor clave en la adopción de Playwright. Playwright parchea navegadores en tiempo de compilación para entregar APIs consistentes en Chromium, Firefox y WebKit — Puppeteer se enfoca en Chrome/Chromium con soporte experimental de Firefox.&lt;/p&gt;</description></item><item><title>Pytest Tutorial: Guía Completa de Testing en Python para Principiantes</title><link>https://yrkan.com/es/blog/pytest-tutorial-python-testing/</link><pubDate>Tue, 27 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/pytest-tutorial-python-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pytest es el framework estándar de testing en Python — sintaxis simple, características poderosas&lt;/li&gt;
&lt;li&gt;Escribe tests como funciones: &lt;code&gt;def test_something():&lt;/code&gt; con expresiones &lt;code&gt;assert&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixtures manejan setup/teardown con decorador &lt;code&gt;@pytest.fixture&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Parametriza para ejecutar mismo test con diferentes datos: &lt;code&gt;@pytest.mark.parametrize&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Rico ecosistema de plugins: pytest-cov (cobertura), pytest-xdist (paralelo), pytest-mock&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Desarrolladores Python, proyectos Django/Flask/FastAPI, testing de data science
&lt;strong&gt;Omite si:&lt;/strong&gt; No usas Python (usa Jest para JS, JUnit para Java)&lt;/p&gt;</description></item><item><title>QA para Computación Cuántica: Probando lo Improbable</title><link>https://yrkan.com/es/blog/quantum-computing-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/quantum-computing-qa/</guid><description>&lt;p&gt;La computación cuántica representa un cambio de paradigma que desafía cada suposición fundamental del testing de software tradicional. A diferencia de la computación clásica donde los bits son deterministas 0s y 1s, los qubits existen en estados de superposición — y probar salidas probabilísticas requiere metodologías completamente nuevas. Según el informe de IBM Quantum Network 2023, el volumen cuántico para procesadores cuánticos comerciales se duplicó a 1024, convirtiendo el testing de software cuántico en una preocupación práctica inmediata. Según un estudio del McKinsey Global Institute, se proyecta que la computación cuántica genere $700 mil millones en valor para 2035 en farmacéutica, finanzas y logística — los ingenieros de QA que desarrollen expertise en testing cuántico ahora serán de los profesionales más valiosos del campo.&lt;/p&gt;</description></item><item><title>Qase JavaScript Commons v2.5.10: Refactor de HostData</title><link>https://yrkan.com/es/tools-updates/qase-qase-javascript-commons-v2-5-whats-new/</link><pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/qase-qase-javascript-commons-v2-5-whats-new/</guid><description>&lt;h2 id="qase-javascript-commons-v2510-refactor-de-hostdata"&gt;Qase JavaScript Commons v2.5.10: Refactor de HostData &lt;a href="#qase-javascript-commons-v2510-refactor-de-hostdata" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Refactor interno para los nombres de campo de &lt;code&gt;HostData&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Mejora la consistencia entre los reporters de Qase JavaScript.&lt;/li&gt;
&lt;li&gt;Optimiza la mantenibilidad y el desarrollo futuro.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;La librería Qase JavaScript Commons se actualiza a la versión v2.5.10, enfocándose en mejoras internas. El cambio principal es un refactor para unificar los nombres de campo de &lt;code&gt;HostData&lt;/code&gt; en todos los reporters. Esta estandarización simplifica el manejo interno de datos dentro de la librería.&lt;/p&gt;</description></item><item><title>Qué es API Testing: Guía Completa 2026</title><link>https://yrkan.com/es/blog/what-is-api-testing-guide/</link><pubDate>Wed, 11 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/what-is-api-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;API testing&lt;/strong&gt;: Testear interfaces de aplicación directamente, sin UI&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Por qué importa&lt;/strong&gt;: Más rápido, detecta bugs más temprano, testea lógica de negocio directamente&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tipos&lt;/strong&gt;: Funcional, performance, security, contract testing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas populares&lt;/strong&gt;: Postman, REST Assured, SuperTest, k6&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica&lt;/strong&gt;: Testea APIs antes de construir UI&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROI&lt;/strong&gt;: Tests API corren 10-100x más rápido que tests UI&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;API testing es la práctica de validar que las interfaces de programación de aplicaciones funcionan correctamente, enviando requests directamente a los endpoints y verificando las respuestas de forma completamente independiente a cualquier interfaz de usuario. Las APIs se han convertido en la columna vertebral de las aplicaciones modernas: según el reporte SmartBear State of Software Quality 2025, el 72% de los equipos de desarrollo hoy priorizan el API testing como práctica central, frente al 49% en 2021. Las cifras de tráfico son reveladoras: investigaciones de Akamai muestran que el 83% de todo el tráfico web actual viaja a través de APIs. A diferencia del testing de UI, el API testing opera en la capa de lógica de negocio — lo que significa que podés comenzar a testear desde la primera semana de desarrollo, ejecutar suites en milisegundos en lugar de segundos, y cubrir escenarios de error que son imposibles de alcanzar desde un navegador. Para cualquier equipo que practique entrega continua o trabaje con microservicios, el API testing no es opcional: es el ciclo de retroalimentación más rápido disponible.&lt;/p&gt;</description></item><item><title>Qué es el Testing de Software: Guía Completa para Principiantes</title><link>https://yrkan.com/es/blog/what-is-software-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/what-is-software-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Testing de software&lt;/strong&gt;: Proceso sistemático de encontrar defectos y verificar que el software cumple requisitos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Por qué importa&lt;/strong&gt;: La mala calidad del software cuesta $2,41 billones/año a la economía (CISQ 2022)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;QA vs QC vs Testing&lt;/strong&gt;: QA previene defectos, QC los identifica, el testing ejecuta software para encontrar bugs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Niveles de testing&lt;/strong&gt;: Unit → Integration → System → Acceptance&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Inicio de carrera&lt;/strong&gt;: Sin título necesario — empezá con ISTQB Foundation + práctica&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Habilidades clave&lt;/strong&gt;: SQL, API testing (Postman), diseño de casos de prueba, reporte de bugs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 15 minutos&lt;/p&gt;</description></item><item><title>Qué es Load Testing: Guía Completa 2026</title><link>https://yrkan.com/es/blog/what-is-load-testing-explained/</link><pubDate>Thu, 12 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/what-is-load-testing-explained/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Load testing&lt;/strong&gt;: Medir rendimiento del sistema bajo tráfico esperado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Objetivo&lt;/strong&gt;: Verificar que aplicación maneja cargas normales y pico&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Métricas clave&lt;/strong&gt;: Tiempo de respuesta (p95), throughput, tasa de error&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas populares&lt;/strong&gt;: k6 (moderno), JMeter (GUI), Gatling (Scala)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica&lt;/strong&gt;: Testea en ambientes production-like con datos realistas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cuándo ejecutar&lt;/strong&gt;: Antes de releases, después de cambios mayores, regularmente en CI/CD&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Load testing es la práctica de medir cómo un sistema se desempeña bajo tráfico esperado y pico de usuarios, simulando usuarios concurrentes y verificando que la aplicación mantiene tiempos de respuesta aceptables sin degradación. Los problemas de rendimiento tienen un costo medible: la investigación de Google Core Web Vitals encontró que un incremento de 100ms en el tiempo de carga reduce las tasas de conversión hasta un 7%, y los sitios que cargan en menos de 1 segundo convierten hasta 3 veces mejor que los que tardan 5 segundos. Los datos de Akamai confirman que el 40% de los usuarios abandona una página que tarda más de 3 segundos en cargar. Sin load testing, los equipos descubren estos puntos de quiebre en producción — durante lanzamientos de productos, campañas de marketing o temporadas pico — cuando arreglarlos cuesta reputación, ingresos y horas de ingeniería. El ISTQB define el load testing como un tipo de test de performance distinto, enfocado en los niveles de tráfico normal y anticipado. Todo equipo con SLAs, productos orientados a usuarios o flujos críticos para el negocio necesita load testing antes del release.&lt;/p&gt;</description></item><item><title>Qué es Regression Testing: Guía Completa 2026</title><link>https://yrkan.com/es/blog/what-is-regression-testing-guide/</link><pubDate>Thu, 12 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/what-is-regression-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Regression testing&lt;/strong&gt;: Verificar que funcionalidad existente sigue funcionando después de cambios&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cuándo correr&lt;/strong&gt;: Después de cada cambio de código, antes de releases, después de bug fixes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Objetivo clave&lt;/strong&gt;: Detectar bugs introducidos por código nuevo que rompe funcionalidad vieja&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Estrategia&lt;/strong&gt;: Automatiza paths críticos, prioriza por riesgo, corre en CI/CD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica&lt;/strong&gt;: Suites pequeños y enfocados superan suites masivos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROI&lt;/strong&gt;: Regresión automatizada habilita continuous delivery&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; QA engineers, desarrolladores manteniendo codebases crecientes
&lt;strong&gt;Omite si:&lt;/strong&gt; Estás construyendo un prototipo desechable sin usuarios&lt;/p&gt;</description></item><item><title>Qué es Unit Testing: Guía Completa 2026</title><link>https://yrkan.com/es/blog/what-is-unit-testing-explained/</link><pubDate>Wed, 11 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/what-is-unit-testing-explained/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unit testing&lt;/strong&gt;: Testear funciones/métodos individuales de forma aislada&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Por qué importa&lt;/strong&gt;: Detecta bugs temprano, permite refactoring seguro, documenta comportamiento&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Principio clave&lt;/strong&gt;: Cada test verifica UNA cosa funciona correctamente&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Frameworks populares&lt;/strong&gt;: Jest (JavaScript), pytest (Python), JUnit (Java)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica&lt;/strong&gt;: Escribe tests antes de arreglar bugs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROI&lt;/strong&gt;: Bugs detectados a nivel unit cuestan 10-100x menos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 10 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Unit testing es la práctica de testear funciones o métodos individuales en completo aislamiento del resto del sistema, verificando que cada pequeña pieza de código produce el output correcto para los inputs dados. Según el StackOverflow Developer Survey 2024, el unit testing es la práctica de testing más ampliamente adoptada entre todas las categorías de desarrolladores, con un 74% de los desarrolladores profesionales escribiendo unit tests regularmente. Martin Fowler define un unit test como &amp;ldquo;un test que ejecuta una pequeña pieza de código en aislamiento del resto del código&amp;rdquo;. El argumento financiero es convincente: según ISTQB, los bugs encontrados en la etapa de unit testing cuestan aproximadamente 10-100 veces menos de corregir que los descubiertos en producción. Los unit tests también sirven como documentación viva — muestran exactamente cómo deben comportarse las funciones, haciendo el onboarding de nuevos desarrolladores más rápido y el refactoring más seguro. En JavaScript (Jest), Python (pytest) y Java (JUnit), escribir el primer unit test lleva minutos, y el ciclo de retroalimentación — desde el cambio de código hasta el resultado del test — corre en segundos.&lt;/p&gt;</description></item><item><title>Ranorex Studio: Automatización Sin Código para Apps Desktop Windows</title><link>https://yrkan.com/es/blog/ranorex-studio-codeless-windows/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ranorex-studio-codeless-windows/</guid><description>&lt;p&gt;Ranorex Studio es una plataforma comercial de automatización de pruebas específicamente diseñada para el testing de aplicaciones de escritorio Windows, ofreciendo capacidades de grabación sin código junto con automatización completa con código para escenarios complejos. Según las reseñas de G2 Crowd, Ranorex Studio se ubica entre las 3 mejores herramientas de automatización de escritorio con una calificación promedio de 4,2/5, especialmente elogiada por su tecnología de reconocimiento de objetos que maneja aplicaciones Delphi, MFC, WinForms y WPF. Según una encuesta de clientes de Ranorex, los equipos que usan la grabación sin código de Ranorex reducen el tiempo de creación de pruebas en un 60% para flujos de trabajo de UI simples. Para los equipos de QA que prueban aplicaciones de escritorio Windows heredadas, Ranorex representa una solución específica para la automatización corporativa de escritorio.&lt;/p&gt;</description></item><item><title>RapidAPI Client: Probando APIs Públicas desde el Marketplace</title><link>https://yrkan.com/es/blog/rapidapi-client-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/rapidapi-client-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;RapidAPI&lt;/strong&gt;: Marketplace de APIs (40,000+) y cliente de testing con autenticación unificada&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ventaja clave&lt;/strong&gt;: Una sola API key funciona con todas las APIs del marketplace — sin gestión de credenciales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Descubrimiento&lt;/strong&gt;: Navega APIs por categoría (Clima, Finanzas, AI/ML), filtra por latencia y precio&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing&lt;/strong&gt;: Testeador de endpoints integrado con inspección request/response y generación de código&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Monitoreo&lt;/strong&gt;: Salud de APIs, tendencias de latencia y uso de cuotas en un solo dashboard&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor para&lt;/strong&gt;: Prototipado con APIs de terceros, comparación de APIs, reducir tiempo de integración&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;RapidAPI ocupa una posición única en el ecosistema de APIs — es simultáneamente el marketplace de APIs más grande del mundo y un cliente de testing completo. Según RapidAPI, la plataforma aloja más de 40,000 APIs públicas usadas por más de 4 millones de desarrolladores. La economía global de APIs fue valorada en $4.5 billones en 2023, con empresas API-first creciendo un 59% más rápido según investigación de Postman. A diferencia de clientes tradicionales como Postman o Insomnia que requieren configuración manual de endpoints y gestión de credenciales separadas para cada servicio, RapidAPI proporciona APIs preconfiguradas con inyección automática de autenticación, facturación unificada y generación de código instantánea. Esta guía cubre cómo usar RapidAPI eficazmente para descubrir, probar, monitorear e integrar APIs de terceros.&lt;/p&gt;</description></item><item><title>React Native Testing Library: Mejores Prácticas y Técnicas Avanzadas</title><link>https://yrkan.com/es/blog/react-native-testing-library/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/react-native-testing-library/</guid><description>&lt;p&gt;React Native Testing Library (RNTL) se ha convertido en el estándar para el testing de componentes en aplicaciones React Native, proporcionando utilidades de prueba que fomentan buenas prácticas haciendo que las pruebas se asemejen a cómo los usuarios interactúan con los componentes. Según la encuesta React Native Community 2023, el 68% de los desarrolladores de React Native ahora usa RNTL para testing de componentes, frente al 31% en 2020, convirtiéndola en la herramienta de testing de más rápido crecimiento en el ecosistema. Según investigaciones publicadas en el Journal of Systems and Software, las aplicaciones probadas con el enfoque centrado en el usuario de RNTL muestran un 35% menos de bugs de regresión en componentes de UI. Para los ingenieros de QA y desarrolladores de React Native, dominar las utilidades async, consultas personalizadas, mocking de módulos nativos e integración con Jest permite un testing comprensivo de componentes.&lt;/p&gt;</description></item><item><title>Registro de Deuda de Pruebas: Gestión de Áreas No Testeadas y Gaps de Automatización</title><link>https://yrkan.com/es/blog/test-debt-register/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-debt-register/</guid><description>&lt;p&gt;La deuda de pruebas es el equivalente de calidad de la deuda financiera: acumula intereses con el tiempo en forma de incidentes de producción, entrega lenta y agotamiento de ingenieros. Según la Encuesta de Ingeniería de Gartner 2024, las organizaciones que rastrean la deuda de pruebas en un registro formal experimentan un 52% menos de incidentes de producción inesperados de áreas no probadas y toman decisiones 3 veces mejores sobre inversión en testing. El desafío es la visibilidad: la mayoría de los equipos tienen deuda significativa pero no tienen forma sistemática de comunicarla a los stakeholders. Un registro de deuda transforma el riesgo invisible en un backlog gestionado con impacto de negocio cuantificado.&lt;/p&gt;</description></item><item><title>Registro de Ejecución de Pruebas: Guía Completa de Documentación y Recopilación de Evidencias</title><link>https://yrkan.com/es/blog/test-execution-log/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-execution-log/</guid><description>&lt;p&gt;Según SmartBear&amp;rsquo;s State of Software Quality 2024, los equipos con registros de ejecución de pruebas estructurados resuelven defectos &lt;strong&gt;2,4 veces más rápido&lt;/strong&gt; que los equipos que se basan en notas informales de testing, y reducen la tasa de bugs &amp;ldquo;no se puede reproducir&amp;rdquo; en un &lt;strong&gt;58%&lt;/strong&gt;. La investigación del Software Testing Institute encontró que la recopilación automatizada de evidencias (capturas de pantalla, logs, capturas del entorno) reduce el tiempo promedio de investigación de defectos en &lt;strong&gt;35 minutos por bug&lt;/strong&gt;. Sin embargo, la mayoría de los equipos de QA tratan el registro de ejecución como secundario a encontrar bugs, perdiendo la documentación que luego ahorraría horas de investigación. Un registro de ejecución de pruebas no es solo una tabla de aprobación/fallo — es el rastro de evidencias que habilita la reproducción, el análisis de tendencias, la auditoría de cumplimiento y la transferencia de conocimiento institucional. Cuando un bug crítico aparece seis meses después de un lanzamiento, son los registros de ejecución los que te dicen exactamente qué se probó y cuál era el estado del sistema en ese momento.&lt;/p&gt;</description></item><item><title>Registro de Riesgos en Testing: Guía Completa de Documentación y Gestión de Riesgos</title><link>https://yrkan.com/es/blog/risk-register-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/risk-register-testing/</guid><description>&lt;p&gt;Un registro de riesgos es el documento central que transforma la conciencia informal de riesgos en un sistema de gestión estructurado y rastreable. Según un estudio del PMI (Project Management Institute), los proyectos que mantienen registros formales de riesgos reducen los fallos en un 28% y manejan problemas inesperados un 45% más rápido. Según investigaciones de Gartner, el 80% de los fallos de proyectos puede rastrearse a riesgos que eran conocidos pero no rastreados formalmente. Para los QA leads, un registro de riesgos comprensivo documenta cada riesgo con puntuaciones de probabilidad, evaluaciones de impacto y estrategias de mitigación.&lt;/p&gt;</description></item><item><title>Reporte de Cobertura de Pruebas: Guía Completa de Análisis y Visualización de Cobertura</title><link>https://yrkan.com/es/blog/test-coverage-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-coverage-report/</guid><description>&lt;p&gt;El reporte de cobertura de pruebas es una de las métricas de calidad más mal entendidas en ingeniería de software. Según SmartBear State of Software Quality 2024, el 68% de los equipos rastrea cobertura de código, pero solo el 31% rastrea cobertura de requisitos — la métrica que correlaciona directamente con la tasa de escape de defectos. La investigación de Capers Jones (Software Engineering Best Practices) muestra que los equipos con cobertura de trazabilidad de requisitos superior al 90% experimentan un 45% menos de defectos post-release que quienes solo rastrean cobertura de código. La distinción importa: 85% de cobertura de líneas significa que las pruebas ejecutan el 85% del código, pero no dice nada sobre si se están probando los escenarios correctos.&lt;/p&gt;</description></item><item><title>Reporte de Sesión de Pruebas Exploratorias: Documentando Notas, Hallazgos y Acciones de Seguimiento</title><link>https://yrkan.com/es/blog/exploratory-session-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/exploratory-session-report/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Estructura los reportes con charter, notas con timestamps, evidencia de bugs (capturas/grabaciones) y acciones de seguimiento&lt;/li&gt;
&lt;li&gt;Usa sesiones timeboxed de 90 minutos (metodología SBTM): 70 min exploración + 15 min documentación&lt;/li&gt;
&lt;li&gt;Convierte los hallazgos en tickets accionables de inmediato — los insights no documentados se pierden&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Ingenieros QA que realizan sesiones exploratorias y necesitan un framework de documentación repetible
&lt;strong&gt;Omite si:&lt;/strong&gt; Solo ejecutas pruebas con scripts sin práctica de testing exploratorio&lt;/p&gt;</description></item><item><title>ReportPortal: Agregación de Resultados de Pruebas Powered por IA</title><link>https://yrkan.com/es/blog/reportportal-ai-test-aggregation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/reportportal-ai-test-aggregation/</guid><description>&lt;p&gt;ReportPortal es una plataforma de reporte de testing open-source impulsada por IA que agrega resultados de pruebas de múltiples frameworks, aplica aprendizaje automático para detectar patrones de fallos y auto-triages defectos para reducir la sobrecarga de análisis manual. Según los benchmarks propios de ReportPortal, los equipos que usan ReportPortal reducen el tiempo de análisis de pruebas en un 70% a través del triage de fallos basado en IA comparado con el análisis manual de logs. Según un caso de estudio publicado por EPAM Systems, una implementación a gran escala de ReportPortal en 50 pipelines CI/CD redujo el tiempo desde el fallo de prueba hasta la identificación de la causa raíz de 45 minutos a 8 minutos. Para los equipos de QA que ejecutan miles de pruebas automatizadas diariamente, ReportPortal transforma datos brutos de pruebas en inteligencia de calidad accionable.&lt;/p&gt;</description></item><item><title>Requestly: Intercepción y Modificación de Solicitudes HTTP</title><link>https://yrkan.com/es/blog/requestly-http-intercept/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/requestly-http-intercept/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; — Requestly es un interceptor HTTP nativo del navegador usado por más de 300.000 desarrolladores. Permite redirigir URLs, mockear respuestas de API, modificar headers e inyectar scripts sin tocar el código. Esta guía cubre los 6 tipos de reglas con escenarios reales.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Requestly es una potente extensión de navegador que permite a desarrolladores e ingenieros de QA interceptar, modificar y redirigir solicitudes y respuestas HTTP en tiempo real. Requestly cuenta con más de 300.000 usuarios instalados en la Chrome Web Store. Según una encuesta de Requestly, los equipos que usan interceptores HTTP nativos del navegador reportan un 40% menos de bloqueos de integración durante el desarrollo paralelo. Opera a nivel del navegador sin necesidad de proxy de sistema, siendo ideal para testear casos extremos y estados de error sin cambios en el código.&lt;/p&gt;</description></item><item><title>Requirements Traceability Matrix (RTM): Vinculando Requisitos con Tests</title><link>https://yrkan.com/es/blog/requirements-traceability-matrix/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/requirements-traceability-matrix/</guid><description>&lt;p&gt;Una Matriz de Trazabilidad de Requisitos (RTM) es el artefacto único que vincula los requisitos de negocio con los casos de prueba y defectos, proporcionando trazabilidad bidireccional que garantiza que cada requisito sea probado y cada caso de prueba se remonte a una necesidad de negocio. Según un estudio de IEEE Software, los proyectos que mantienen trazabilidad formal de requisitos experimentan un 45% menos de defectos relacionados con requisitos en producción y un 30% más de rapidez en el análisis de impacto cuando los requisitos cambian. Según el ISTQB, la trazabilidad de requisitos es una práctica obligatoria para sistemas críticos para la seguridad (IEC 62304, DO-178C, ISO 26262). Para los equipos de QA, una RTM proporciona evidencia concreta de cobertura de pruebas para auditorías y sirve como puente de comunicación crítico entre analistas de negocio, desarrolladores e ingenieros de calidad.&lt;/p&gt;</description></item><item><title>REST API vs GraphQL vs gRPC: Elegir el Protocolo Adecuado para Aplicaciones Móviles</title><link>https://yrkan.com/es/blog/rest-graphql-grpc-mobile/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/rest-graphql-grpc-mobile/</guid><description>&lt;p&gt;La elección del protocolo de API para aplicaciones móviles impacta directamente en la experiencia del usuario, la vida de la batería y la velocidad de desarrollo — y la elección incorrecta puede costar un esfuerzo significativo de refactorización más adelante. Según un estudio de rendimiento de Coursera Engineering, migrar de REST a GraphQL redujo la transferencia de datos móviles en un 50% y mejoró los tiempos de respuesta de API en un 30% para su plataforma de aprendizaje. Según investigaciones de Google sobre gRPC, la serialización de protocol buffers es 3-10x más rápida que la deserialización JSON, haciendo que gRPC sea 2-4x más eficiente en ancho de banda que REST. Para desarrolladores móviles e ingenieros de QA, entender las implicaciones de testing de cada protocolo es esencial para diseñar estrategias de prueba efectivas.&lt;/p&gt;</description></item><item><title>REST Assured Tutorial: Guía Completa de Testing de API con Java</title><link>https://yrkan.com/es/blog/rest-assured-tutorial-java/</link><pubDate>Wed, 04 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/rest-assured-tutorial-java/</guid><description>&lt;p&gt;REST Assured es una poderosa biblioteca Java para probar APIs RESTful, proporcionando un lenguaje específico del dominio que hace que escribir pruebas HTTP sea tan natural como escribir requisitos de negocio. Según el JetBrains State of Developer Ecosystem 2023, REST Assured es usado por aproximadamente el 65% de los desarrolladores Java que escriben pruebas de API, convirtiéndolo en el framework dominante de testing de API en el mundo Java. Según un estudio de Sauce Labs, los equipos que adoptan REST Assured reportan un 40% de mayor velocidad de escritura de pruebas y un 25% menos de sobrecarga de mantenimiento. Este tutorial cubre REST Assured desde cero hasta configuración lista para producción, incluyendo configuración Maven/Gradle, construcción de solicitudes, validación de respuestas con JSONPath y patrones de autenticación.&lt;/p&gt;</description></item><item><title>REST Assured: Framework de Pruebas de API Basado en Java para Aplicaciones Modernas</title><link>https://yrkan.com/es/blog/rest-assured-pruebas-api/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/rest-assured-pruebas-api/</guid><description>&lt;p&gt;REST Assured se ha convertido en el estándar de facto para el testing de APIs en el ecosistema Java, ofreciendo un DSL fluido que hace que la validación de solicitudes HTTP complejas sea legible y mantenible. Según el JetBrains State of Developer Ecosystem 2023, Java sigue siendo el lenguaje líder para desarrollo backend con un 45% de adopción, y REST Assured es usado por más del 60% de los proyectos Java con pruebas de API automatizadas. Según el ThoughtWorks Technology Radar, REST Assured ha sido listado consistentemente como herramienta de &amp;lsquo;Trial&amp;rsquo; o &amp;lsquo;Adopt&amp;rsquo; desde 2015. Para los ingenieros de QA en Java, la sintaxis given-when-then BDD, las aserciones integradas de JSON/XML path, la validación de esquemas y la integración con JUnit y TestNG hacen de REST Assured la elección más productiva.&lt;/p&gt;</description></item><item><title>Resumen de Ranorex Studio: Automatización de Escritorio y Plataforma de Pruebas Empresarial</title><link>https://yrkan.com/es/blog/ranorex-studio-overview/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ranorex-studio-overview/</guid><description>&lt;p&gt;Ranorex Studio es una plataforma integral de automatización de pruebas empresariales diseñada para testing multi-tecnología de aplicaciones de escritorio Windows, web y móviles desde un único entorno. Según G2 Crowd, Ranorex Studio es utilizado por más de 4,000 empresas en todo el mundo, con una adopción particularmente fuerte en industrias con sistemas de escritorio heredados como manufactura, salud y servicios financieros. Según los benchmarks publicados por Ranorex, los equipos que usan el repositorio de objetos y las capacidades de testing basado en datos de Ranorex reportan una reducción del 70% en el tiempo de mantenimiento de pruebas comparado con enfoques basados en localizadores de elementos. Para los equipos de QA empresariales que gestionan portfolios de aplicaciones diversas, Ranorex Studio es una opción práctica para la gestión de calidad unificada.&lt;/p&gt;</description></item><item><title>Risk-Based Testing: Priorizando el Esfuerzo de Pruebas para Máximo Impacto</title><link>https://yrkan.com/es/blog/risk-based-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/risk-based-testing/</guid><description>&lt;p&gt;El testing basado en riesgos es un enfoque de prueba donde las actividades de testing se seleccionan, priorizan y ejecutan en base a los niveles de riesgo evaluados del software que se está probando. Según un estudio publicado en IEEE Transactions on Software Engineering, el testing basado en riesgos identifica un 25-40% más de defectos críticos por hora de ejecución de pruebas comparado con el testing basado en cobertura de requisitos. Según el plan de estudios de ISTQB Advanced Level Test Manager, el testing basado en riesgos está entre las cinco técnicas de testing más importantes para gestores de QA profesionales. Para los profesionales de QA en todos los niveles, aplicar testing basado en riesgos requiere entender dos dimensiones: riesgo del producto (qué podría salir mal con el software) y riesgo del proyecto (qué podría salir mal con el proceso de testing).&lt;/p&gt;</description></item><item><title>Robot Framework Tutorial: Guía Completa de Keyword-Driven Testing</title><link>https://yrkan.com/es/blog/robot-framework-tutorial/</link><pubDate>Sun, 01 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/robot-framework-tutorial/</guid><description>&lt;p&gt;Robot Framework es un framework de automatización open-source basado en Python que popularizó el testing basado en palabras clave, haciendo la automatización de pruebas accesible a miembros técnicos y no técnicos del equipo. Según la encuesta anual de la Robot Framework Foundation, Robot Framework tiene más de 1,5 millones de descargas por mes y es usado en 100+ países, con un crecimiento del 34% año tras año. Según un estudio de Sauce Labs, los equipos que usan Robot Framework reportan un 50% más de velocidad en la creación de pruebas. Este tutorial cubre Robot Framework desde la instalación hasta la integración CI/CD.&lt;/p&gt;</description></item><item><title>Robot Framework vs Selenium: Comparación de Test Automation 2026</title><link>https://yrkan.com/es/blog/robot-framework-vs-selenium/</link><pubDate>Tue, 10 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/robot-framework-vs-selenium/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Robot Framework&lt;/strong&gt;: Framework de tests keyword-driven — usa libraries (Selenium, Playwright, etc.) para la automatización&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Selenium&lt;/strong&gt;: Library de automatización de browser — requiere programación, da control máximo&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dato clave&lt;/strong&gt;: No son competidores. RF usa Selenium bajo el capó via SeleniumLibrary&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para no-programadores&lt;/strong&gt;: Robot Framework (keywords legibles, sin código)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para developers&lt;/strong&gt;: Selenium puro con pytest/JUnit (control total, IDE nativo)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Opción moderna&lt;/strong&gt;: Robot Framework + Browser library (usa Playwright, no Selenium)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos eligiendo entre automatización keyword-driven y basada en código
&lt;strong&gt;Omite si:&lt;/strong&gt; Estás comparando Selenium con Playwright o Cypress (comparación diferente)&lt;/p&gt;</description></item><item><title>Robot Framework: Dominando la Automatización de Pruebas Basada en Palabras Clave</title><link>https://yrkan.com/es/blog/robot-framework-automatizacion-palabras-clave/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/robot-framework-automatizacion-palabras-clave/</guid><description>&lt;p&gt;La arquitectura keyword-driven de Robot Framework lo distingue de otros frameworks al permitir escribir pruebas en sintaxis legible por humanos usando palabras clave de alto nivel que abstraen los detalles de implementación, permitiendo la colaboración entre miembros técnicos y no técnicos. Segun el State of Testing Report 2023 de SmartBear, Robot Framework es usado por el 22% de los profesionales de QA que usan herramientas open-source. Segun QAComplete, los proyectos con keyword-driven testing ven un 40% mas de reutilizacion de pruebas y un 30% menos de costos de mantenimiento. Dominar la arquitectura de palabras clave de Robot Framework y su ecosistema de bibliotecas proporciona una base escalable para la automatizacion.&lt;/p&gt;</description></item><item><title>ROI de Pruebas con IA: Medición del Valor de Negocio</title><link>https://yrkan.com/es/blog/roi-ai-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/roi-ai-testing/</guid><description>&lt;p&gt;Medir el ROI de las inversiones en testing de IA se ha vuelto critico a medida que las organizaciones adoptan herramientas de IA para generacion de pruebas, prediccion de defectos y optimizacion. Segun el Capgemini World Quality Report 2023, las organizaciones con IA en testing reportan ahorros promedio del 20-30%, pero solo el 35% tiene marcos formales para medirlos. Segun Gartner, el testing aumentado por IA proyecta automatizar el 75% de las actividades de regresion para 2025, con mejoras de productividad de 2-4x. Para QA leads y CTOs que evaluan inversiones, construir un marco riguroso de ROI es esencial para justificar el presupuesto y demostrar valor estrategico.&lt;/p&gt;</description></item><item><title>SDLC vs STLC: Comprendiendo Procesos de Desarrollo y Testing</title><link>https://yrkan.com/es/blog/sdlc-vs-stlc/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/sdlc-vs-stlc/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Elige SDLC&lt;/strong&gt; cuando necesitas un marco para todo el proceso de creación de software — desde el concepto hasta el mantenimiento&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige STLC&lt;/strong&gt; cuando necesitas un enfoque estructurado específicamente para las actividades de testing dentro de ese ciclo&lt;/li&gt;
&lt;li&gt;El STLC no está separado del SDLC: corre dentro de él, comenzando desde el análisis de requisitos&lt;/li&gt;
&lt;li&gt;En Agile, ambos ciclos se comprimen en sprints; en Waterfall, permanecen como fases secuenciales&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;</description></item><item><title>Security Headers Testing: Protección de Aplicaciones Web</title><link>https://yrkan.com/es/blog/security-headers-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/security-headers-testing/</guid><description>&lt;p&gt;Los headers de seguridad son cabeceras de respuesta HTTP que instruyen a los navegadores a aplicar politicas de seguridad, protegiendo las aplicaciones web contra XSS, clickjacking, sniffing de tipos MIME y otros ataques comunes con un esfuerzo minimo de implementacion. Segun Mozilla Web Security Observatory, solo el 35% de los sitios web implementa correctamente la Content Security Policy (CSP), y el 45% carece de HTTP Strict Transport Security (HSTS). Segun OWASP, los headers de seguridad faltantes o mal configurados son responsables de aproximadamente el 30% de las vulnerabilidades de seguridad en aplicaciones web encontradas durante pruebas de penetracion. Las pruebas automatizadas con Mozilla Observatory o scripts de Playwright proporcionan validacion reproducible.&lt;/p&gt;</description></item><item><title>Security Testing para QA: Guía Práctica</title><link>https://yrkan.com/es/blog/security-testing-for-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/security-testing-for-qa/</guid><description>&lt;p&gt;Las pruebas de seguridad se han convertido en una competencia central de QA a medida que las aplicaciones enfrentan amenazas cada vez mas sofisticadas y requisitos regulatorios. Segun el IBM Cost of a Data Breach Report 2023, el costo promedio de una brecha de datos alcanzo $4,45 millones globalmente, un aumento del 15% en tres anos, con el 82% de las brechas involucrando datos almacenados en la nube. Segun OWASP, los 10 riesgos de seguridad mas criticos de aplicaciones web permanecen consistentes ano tras ano, lo que significa que los ingenieros de QA que dominan estos patrones de vulnerabilidad obtienen experiencia duradera y de alto valor. Esta guia practica cubre el OWASP Top 10, fundamentos de pruebas de penetracion, tecnicas de testing de SQL Injection y XSS, validacion CSRF y como integrar herramientas como OWASP ZAP y Burp Suite.&lt;/p&gt;</description></item><item><title>Security Testing para QA: OWASP Top 10</title><link>https://yrkan.com/es/blog/security-testing-owasp/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/security-testing-owasp/</guid><description>&lt;p&gt;El OWASP Top 10 representa los riesgos de seguridad de aplicaciones web mas criticos identificados por expertos en seguridad de todo el mundo, proporcionando a los ingenieros de QA un marco definitivo para la planificacion de pruebas de seguridad y cobertura. Segun el propio analisis de OWASP, las categorias del Top 10 cubren vulnerabilidades responsables de mas del 90% de las brechas de aplicaciones web del mundo real. Segun el Veracode State of Software Security 2023, el 76% de las aplicaciones tiene al menos una vulnerabilidad del OWASP Top 10, y el 24% tiene vulnerabilidades criticas. Para los ingenieros de QA que desarrollan capacidades de pruebas de seguridad, entender las 10 categorias del OWASP Top 10 2021 y saber como probar cada una proporciona una cobertura comprensiva de las clases de vulnerabilidades mas peligrosas.&lt;/p&gt;</description></item><item><title>Selección Predictiva de Tests: Optimización de Pruebas con IA</title><link>https://yrkan.com/es/blog/predictive-test-selection/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/predictive-test-selection/</guid><description>&lt;p&gt;La selección predictiva de pruebas usa aprendizaje automático para determinar qué pruebas ejecutar según los cambios de código, reduciendo drásticamente los tiempos de los pipelines CI/CD. Según un estudio de Google Engineering Productivity Research, la ejecución selectiva de pruebas puede reducir los tiempos de ejecución de suites de pruebas entre un 60-80% manteniendo tasas de detección de defectos superiores al 95%. Según el DORA State of DevOps Report 2023, los equipos de alto rendimiento despliegan 208 veces más frecuentemente y se recuperan 2.604 veces más rápido que los equipos de bajo rendimiento. Para los ingenieros de QA que gestionan grandes suites de pruebas, la selección predictiva significa ciclos de retroalimentación más rápidos, menores costos de cómputo y la capacidad de ejecutar pruebas de regresión completas sin frenar la velocidad de desarrollo.&lt;/p&gt;</description></item><item><title>Selenium Grid 4: Arquitectura de Ejecución de Pruebas Distribuida</title><link>https://yrkan.com/es/blog/selenium-grid-4-distributed-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/selenium-grid-4-distributed-testing/</guid><description>&lt;p&gt;Selenium Grid 4 es un rediseño arquitectónico completo del framework de ejecución distribuida de pruebas usado por miles de equipos de ingeniería en todo el mundo. Según el reporte &amp;ldquo;State of Testing 2024&amp;rdquo; de SmartBear, Selenium sigue siendo la herramienta de automatización de navegadores más adoptada, con un 61% de los equipos utilizándola en producción. A diferencia de Grid 3, esta versión divide el Hub monolítico en seis componentes independientes —Router, Distributor, Session Map, Queue, Event Bus y Node— cada uno desplegable y escalable por separado. La trazabilidad nativa con OpenTelemetry, una API GraphQL de introspección y las imágenes Docker oficiales con charts de Helm resuelven los tres principales puntos de dolor de Grid 3: poca observabilidad, escalado horizontal limitado y dificultad con contenedores. El equipo de infraestructura de Google ha documentado que los grids de pruebas distribuidos con cientos de sesiones paralelas pueden reducir el tiempo de feedback de CI hasta un 80% comparado con la ejecución secuencial. Esta guía cubre la arquitectura de Grid 4, el despliegue en Docker y Kubernetes, el stack de observabilidad y patrones de configuración reales.&lt;/p&gt;</description></item><item><title>Selenium vs Playwright: Cuál Elegir en 2026</title><link>https://yrkan.com/es/blog/selenium-vs-playwright-comparison/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/selenium-vs-playwright-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Playwright&lt;/strong&gt;: Moderno, 2-3x más rápido, auto-waiting, Trace Viewer, respaldado por Microsoft&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Selenium&lt;/strong&gt;: Veterano de 20 años, ecosistema más grande, más lenguajes, probado en enterprise&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Velocidad&lt;/strong&gt;: Playwright gana — protocolos nativos del navegador vs WebDriver basado en HTTP&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Estabilidad&lt;/strong&gt;: Auto-waiting de Playwright reduce tests flaky de ~8% a ~1%&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige Playwright&lt;/strong&gt; para: proyectos nuevos, apps web modernas, equipos TypeScript/Python, velocidad CI/CD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige Selenium&lt;/strong&gt; para: navegadores legacy, infraestructura Grid existente, móvil via Appium, Ruby/Kotlin&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mi opinión:&lt;/strong&gt; Para cualquier proyecto nuevo en 2026, empezaría con Playwright. Selenium tiene sentido solo con restricciones específicas — navegadores legacy, Appium, o un test suite existente grande.&lt;/p&gt;</description></item><item><title>Selenium WebDriver en 2026: ¿Sigue Siendo Relevante?</title><link>https://yrkan.com/es/blog/selenium-webdriver-2025-sigue-relevante/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/selenium-webdriver-2025-sigue-relevante/</guid><description>&lt;p&gt;Selenium WebDriver sigue siendo uno de los frameworks de automatización de navegadores más utilizados en 2026, a pesar del surgimiento de herramientas más nuevas como Playwright y Cypress. Según la encuesta &amp;ldquo;State of Testing 2024&amp;rdquo; de SmartBear, el 61% de los equipos de QA todavía usa Selenium en producción—una cifra que se ha mantenido estable por cinco años. La longevidad del framework se debe a factores que las herramientas más nuevas simplemente no pueden replicar: soporte nativo para todos los principales lenguajes de programación (Java, Python, C#, Ruby, JavaScript), el mayor ecosistema de proveedores de cloud testing (Sauce Labs, BrowserStack, LambdaTest) y la única herramienta mainstream con soporte production-grade para Safari via SafariDriver. Selenium 4, lanzado en octubre de 2021 y mejorado continuamente desde entonces, abordó las principales críticas de la versión 3: adoptó el estándar W3C WebDriver, añadió localizadores relativos, integró Chrome DevTools Protocol y rediseñó Grid con soporte de Kubernetes. Esta guía analiza si esas mejoras son suficientes para mantener a Selenium competitivo y exactamente cuándo elegirlo sobre Playwright, Cypress o WebdriverIO.&lt;/p&gt;</description></item><item><title>Semgrep v1.156.0: Soporte Kotlin Mejorado y Correcciones</title><link>https://yrkan.com/es/tools-updates/semgrep-v1-156-whats-new/</link><pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/semgrep-v1-156-whats-new/</guid><description>&lt;h2 id="semgrep-v11560-soporte-kotlin-mejorado-y-correcciones"&gt;Semgrep v1.156.0: Soporte Kotlin Mejorado y Correcciones &lt;a href="#semgrep-v11560-soporte-kotlin-mejorado-y-correcciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Semgrep v1.156.0, lanzado el 17 de marzo de 2026, se centra en mejorar el soporte de lenguajes y abordar problemas clave de rendimiento y estabilidad. Esta actualización menor se clasifica en Rendimiento y Seguridad.&lt;/p&gt;
&lt;h3 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Soporte mejorado para Kotlin gracias a la actualización del parser.&lt;/li&gt;
&lt;li&gt;Correcciones en Semgrep Pro para análisis de Ruby y parsing de &lt;code&gt;tsconfig.json&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Solucionado un crash en &lt;code&gt;semgrep ci&lt;/code&gt; sin origen remoto en Git.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Mejoras:&lt;/strong&gt; Semgrep v1.156.0 optimiza el análisis de código Kotlin mediante una actualización del parser tree-sitter, lo que resulta en una mayor precisión para proyectos Kotlin.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Correcciones:&lt;/strong&gt; Se han resuelto varias incidencias. Semgrep Pro ahora diferencia correctamente entre accesos a variables y llamadas a métodos sin argumentos en Ruby para el tainting interfile experimental. También se ha optimizado el parsing de &lt;code&gt;tsconfig.json&lt;/code&gt; al memorizar los resultados, evitando re-parsing redundante. Una corrección general previene un crash en &lt;code&gt;semgrep ci&lt;/code&gt; cuando se ejecuta en un repositorio Git sin un origen remoto configurado.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impact-for-qa-teams"&gt;Impact for QA Teams &lt;a href="#impact-for-qa-teams" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los equipos de QA que trabajan con proyectos Kotlin verán análisis estáticos más precisos, lo que puede ayudar a identificar defectos antes. Las mejoras de rendimiento en Semgrep Pro para Ruby y TypeScript pueden acelerar los tiempos de escaneo. La corrección de &lt;code&gt;semgrep ci&lt;/code&gt; asegura una integración más fluida en pipelines de CI, incluso en configuraciones Git menos comunes.&lt;/p&gt;</description></item><item><title>Session-Based Test Management: Enfoque Estructurado al Testing Exploratorio</title><link>https://yrkan.com/es/blog/session-based-test-management/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/session-based-test-management/</guid><description>&lt;p&gt;Session-Based Test Management (SBTM) une las ventajas de la exploración no estructurada con la responsabilidad del testing scriptado. Según el reporte &amp;ldquo;State of Testing 2024&amp;rdquo; de SmartBear, el testing exploratorio es usado por el 62% de los equipos de QA, pero el 41% cita la falta de estructura y trazabilidad como su mayor desafío. Desarrollado por Jon Bach y James Bach como parte de la metodología Rapid Software Testing (RST), SBTM organiza el trabajo exploratorio en sesiones de 60-120 minutos guiadas por un charter escrito que define la misión sin prescribir pasos exactos. La Encuesta de Testing Exploratorio 2023 de Maaret Pyhäjärvi encontró que los equipos que usan métodos estructurados como SBTM encuentran 30-50% más bugs de alta severidad por hora que equipos con enfoques ad-hoc. Esta guía cubre escritura de charters, ejecución de sesiones, debriefing, métricas e integración con CI/CD.&lt;/p&gt;</description></item><item><title>Shift-Left Testing: Estrategia de Detección Temprana de Problemas</title><link>https://yrkan.com/es/blog/shift-left-testing-early-detection/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/shift-left-testing-early-detection/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;
El shift-left testing mueve las actividades de calidad más temprano en el ciclo de desarrollo. La investigación de IBM muestra que los defectos cuestan 100-200x más en producción que durante el desarrollo. Empieza con pre-commit hooks, agrega análisis estático en CI/CD, establece umbrales de cobertura y tiene QA participando en code reviews. El objetivo es atrapar bugs en la etapa de costo 1x, no 100x.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; QA leads y managers de ingeniería que implementan prácticas DevOps de calidad en el SDLC
&lt;strong&gt;Puedes omitirlo si:&lt;/strong&gt; necesitas guía de pruebas de rendimiento o monitoreo en producción&lt;/p&gt;</description></item><item><title>Shift-Left Testing: Integración Temprana de Calidad para Ahorro de Costos</title><link>https://yrkan.com/es/blog/shift-left-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/shift-left-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Shift-left testing&lt;/strong&gt;: Mover actividades de calidad más temprano en el SDLC&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dato clave&lt;/strong&gt;: Un defecto en requisitos cuesta 1x; el mismo defecto en producción cuesta 100x+&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Prácticas clave&lt;/strong&gt;: TDD (test primero), BDD (escenarios de negocio), revisiones de requisitos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Datos IBM&lt;/strong&gt;: El costo de un defecto se multiplica 10x por etapa desde requisitos hasta producción&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Encuesta SmartBear&lt;/strong&gt;: Los equipos con shift-left reducen defectos post-release hasta un 60%&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Camino de adopción&lt;/strong&gt;: Revisiones de requisitos → Tests unitarios → TDD → BDD&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Shift-left testing mueve las actividades de calidad más temprano en el ciclo de vida de desarrollo de software, capturando defectos cuando son más baratos y fáciles de corregir. Según investigación del IBM System Science Institute, un defecto encontrado durante la revisión de requisitos cuesta 1x para corregir, mientras que el mismo defecto descubierto en producción cuesta más de 100x — un aumento de 100 veces que convierte la detección temprana en un imperativo financiero, no solo de calidad. La encuesta State of Software Quality de SmartBear encontró que los equipos que practican enfoques shift-left reducen la densidad de defectos post-release hasta un 60% y recortan las correcciones de emergencia en producción en más del 40%. En lugar de tratar el testing como una puerta final antes del release, shift-left integra verificaciones de calidad en cada fase: revisiones de requisitos que detectan especificaciones ambiguas, inspecciones de diseño que identifican fallas arquitectónicas, TDD que hace el código testeable por diseño, y escenarios BDD que alinean la intención de negocio con la implementación.&lt;/p&gt;</description></item><item><title>Sistemas de Gestión de Pruebas: Jira vs TestRail vs Zephyr</title><link>https://yrkan.com/es/blog/test-management-systems-comparison/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-management-systems-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Jira + Zephyr Scale&lt;/strong&gt;: Lo mejor para equipos que ya usan Jira — QA y desarrollo en un solo lugar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;TestRail&lt;/strong&gt;: Propósito específico, más fácil de usar, mejor reporting — ideal para equipos QA dedicados&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zephyr Enterprise&lt;/strong&gt;: Grandes empresas, entornos con cumplimiento normativo estricto, opción on-premises&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elige según el tamaño del equipo&lt;/strong&gt;: Pequeños → TestRail o Zephyr Scale; Enterprise → Zephyr Enterprise&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dato clave&lt;/strong&gt;: Más de 10.000 organizaciones en todo el mundo usan TestRail; Jira tiene más de 300K clientes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos QA evaluando herramientas de gestión de pruebas para 2026&lt;/p&gt;</description></item><item><title>Smoke vs Sanity vs Regression Testing: ¿Cuál es la Diferencia?</title><link>https://yrkan.com/es/blog/smoke-sanity-regression/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/smoke-sanity-regression/</guid><description>&lt;p&gt;Las pruebas smoke, sanity y regression son tres de los términos más confundidos en QA de software, aunque cada uno sirve un propósito fundamentalmente diferente. Según el Syllabus del ISTQB Foundation Level, la confusión entre estos tipos de pruebas es uno de los cinco principales errores conceptuales en equipos de QA globalmente. El smoke testing (Build Verification Testing) toma 15-30 minutos y responde una pregunta: &amp;ldquo;¿Este build es estable para pruebas adicionales?&amp;rdquo; El sanity testing toma 30-60 minutos y verifica que una corrección específica funciona. El regression testing es comprensivo—horas o días para verificar que la funcionalidad existente no se rompió. El reporte &amp;ldquo;State of Testing 2024&amp;rdquo; de SmartBear encontró que el 73% de equipos automatizan sus suites de regresión, pero solo el 45% tiene gates formalizados de smoke en sus pipelines de CI/CD. Esta guía clarifica cada tipo con ejemplos y criterios de decisión para construir una estrategia de pruebas eficiente.&lt;/p&gt;</description></item><item><title>SoapUI Tutorial: Guía Completa de Testing REST y SOAP API</title><link>https://yrkan.com/es/blog/soapui-tutorial-api-testing/</link><pubDate>Tue, 03 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/soapui-tutorial-api-testing/</guid><description>&lt;p&gt;SoapUI sigue siendo la herramienta de referencia para testing enterprise de APIs: según SmartBear API Testing Report 2024, el protocolo SOAP maneja el 22% del tráfico de integraciones enterprise, y SoapUI es la herramienta principal para el 41% de los especialistas QA en grandes organizaciones. Su ventaja diferencial es el soporte nativo de WSDL — parsea automáticamente todas las operaciones, genera sample requests y maneja XML namespaces sin configuración manual. A diferencia de Postman, SoapUI fue diseñado desde el principio para escenarios SOAP complejos: estructuras XML anidadas, WS-Security y mock services dinámicos con Groovy. Para testing REST también es funcional: JSONPath assertions, OAuth, data-driven tests con CSV y scripting avanzado. Este tutorial cubre el ciclo completo — desde importar un WSDL hasta ejecutar tests en CI/CD — con ejemplos prácticos para equipos que trabajan con SOAP y REST.&lt;/p&gt;</description></item><item><title>SoapUI vs ReadyAPI: Comparación de Soluciones Enterprise de Testing de API</title><link>https://yrkan.com/es/blog/soapui-vs-readyapi/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/soapui-vs-readyapi/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;SoapUI (gratis)&lt;/strong&gt;: mejor opción para testing SOAP con presupuesto cero&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ReadyAPI&lt;/strong&gt;: suite enterprise con módulos de performance, security y virtualización — desde $1.899/usuario/año&lt;/li&gt;
&lt;li&gt;SmartBear adquirió SoapUI en 2011 y construyó ReadyAPI como su sucesor comercial&lt;/li&gt;
&lt;li&gt;Para APIs REST puras, considera alternativas modernas como Postman o Bruno&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conclusión&lt;/strong&gt;: usa SoapUI para sistemas SOAP legacy; pasa a ReadyAPI cuando necesites load testing o escaneo de seguridad&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;SoapUI y ReadyAPI representan el tier enterprise de herramientas de testing de API, diseñadas originalmente para servicios web SOAP y flujos QA complejos. SmartBear adquirió SoapUI en 2011 y lo transformó en la plataforma ReadyAPI, hoy utilizada por más de 10.000 equipos enterprise en todo el mundo (SmartBear, 2024). El mercado global de testing de API fue valorado en $1.100 millones en 2023 y se proyecta un crecimiento del 18% CAGR hasta 2028, según MarketsandMarkets. Más del 70% de las organizaciones enterprise mantienen integraciones SOAP junto a servicios REST, lo que hace que herramientas como SoapUI y ReadyAPI sean esenciales para equipos QA que trabajan con sistemas legacy. SoapUI sigue siendo la base open-source para testing SOAP, mientras ReadyAPI añade testing de carga (LoadUI Pro), escaneo de seguridad (Secure Pro) y virtualización de API (ServiceV Pro) en una única plataforma integrada. Esta comparación ayuda a elegir entre la herramienta open-source gratuita y la suite enterprise comercial.&lt;/p&gt;</description></item><item><title>Soft Skills para QA Engineers: Dominando la Comunicación en Equipo en 2025</title><link>https://yrkan.com/es/blog/soft-skills-team-communication/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/soft-skills-team-communication/</guid><description>&lt;p&gt;En 2025, los soft skills se han convertido en el principal diferenciador para los ingenieros QA: según LinkedIn Workplace Learning Report 2024, el 73% de los gerentes de contratación citan la comunicación y colaboración como la principal brecha en candidatos técnicos, y los profesionales QA con soft skills sólidos alcanzan roles senior un 40% más rápido. La transición al trabajo remoto e híbrido ha amplificado esta brecha — los equipos ahora dependen de la comunicación escrita, herramientas asíncronas y la construcción deliberada de relaciones. Para los ingenieros QA en particular, la capacidad de presentar la calidad como un objetivo compartido, explicar resultados de pruebas a stakeholders no técnicos y resolver conflictos sobre severidad de bugs e idoneidad para el lanzamiento impacta directamente la calidad del producto. Esta guía cubre las habilidades fundamentales: colaboración con desarrolladores, presentación de resultados de pruebas, resolución de conflictos y trabajo en equipos distribuidos.&lt;/p&gt;</description></item><item><title>Specification by Example: Documentación Viva a Través de Ejemplos Colaborativos</title><link>https://yrkan.com/es/blog/specification-by-example/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/specification-by-example/</guid><description>&lt;p&gt;Specification by Example (SbE) está ganando terreno como práctica central en equipos de alto rendimiento: según Digital.ai State of Agile Report 2024, el 67% de las organizaciones que practican BDD o ATDD reportan una reducción significativa en la ambigüedad entre requisitos de negocio y software entregado, y los equipos con especificaciones ejecutables registran entre un 30-40% menos de defectos post-lanzamiento causados por malentendidos en los requisitos. El método aborda un problema fundamental: los documentos de requisitos tradicionales quedan obsoletos en el momento en que el código cambia, mientras que los ejemplos concretos que se ejecutan sobre código real se mantienen sincronizados por definición. SbE elimina la brecha de comunicación entre el negocio y la ingeniería usando un lenguaje compartido e inequívoco — escenarios concretos que todos pueden leer, verificar y ampliar. Esta guía cubre el flujo completo: desde talleres Three Amigos hasta implementaciones en FitNesse y Concordion.&lt;/p&gt;</description></item><item><title>SQL Injection y XSS: Encontrar Vulnerabilidades</title><link>https://yrkan.com/es/blog/sql-injection-xss/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/sql-injection-xss/</guid><description>&lt;p&gt;SQL injection y XSS siguen siendo las vulnerabilidades más explotadas en aplicaciones web: según OWASP Top 10 2021, los ataques de inyección (A03) afectan al 94% de las aplicaciones testeadas, y XSS se encuentra en el 41% de las aplicaciones web durante evaluaciones de seguridad. Verizon DBIR 2024 reporta que el 40% de las brechas de datos confirmadas involucran ataques a aplicaciones web, con SQL injection como vector principal. A pesar de décadas de concientización, estas vulnerabilidades persisten porque los desarrolladores mezclan el input del usuario con la lógica de consultas y renderizan contenido sin sanitizar en el navegador. Para los equipos QA, testear SQL injection y XSS debe ser parte de cada sprint — tanto en verificaciones exploratorias manuales como en escaneos DAST automatizados en pipelines CI/CD. Esta guía cubre técnicas de detección, testing manual con payloads, herramientas automatizadas con sqlmap y ZAP, y patrones de prevención que los ingenieros QA deben verificar.&lt;/p&gt;</description></item><item><title>Static Testing: Encontrando Defectos Sin Ejecutar Código</title><link>https://yrkan.com/es/blog/static-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/static-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Static testing&lt;/strong&gt;: Analizar artefactos de software sin ejecutar código — reviews, inspecciones, análisis estático&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Beneficio clave&lt;/strong&gt;: Encuentra defectos 10-100x más barato que el dynamic testing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tipos&lt;/strong&gt;: Revisiones informales, walkthroughs, revisiones técnicas, inspecciones formales, herramientas de análisis estático&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas&lt;/strong&gt;: SonarQube, ESLint, Checkstyle, PyLint — integrar en CI/CD para quality gates automáticos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Datos ISTQB&lt;/strong&gt;: El static testing puede detectar el 60-80% de los defectos antes de que comience el dynamic testing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica&lt;/strong&gt;: Combinar code reviews manuales con análisis estático automatizado para máxima cobertura&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;El static testing es la disciplina de examinar artefactos de software — código, requisitos, documentos de diseño y casos de prueba — sin ejecutar el software. Según investigación del ISTQB, el static testing puede detectar el 60-80% de todos los defectos antes de que se ejecute una sola línea de código, reduciendo drásticamente el costo de la calidad. Investigación de SonarQube muestra que los desarrolladores gastan el 23% de su tiempo corrigiendo bugs que podrían haberse prevenido si el análisis estático automatizado los hubiera detectado en el momento del commit. A diferencia del dynamic testing que valida lo que ocurre cuando el software se ejecuta, el static testing analiza la estructura, sintaxis, lógica y consistencia de los productos de trabajo para encontrar problemas invisibles en tiempo de ejecución pero costosos a escala. Esta guía cubre el espectro completo del static testing — desde revisiones informales hasta inspecciones formales y herramientas SAST automatizadas.&lt;/p&gt;</description></item><item><title>Storybook v10.3.0: IA, Ecosistema y Mejoras para QA</title><link>https://yrkan.com/es/tools-updates/storybook-v10-3-whats-new/</link><pubDate>Tue, 24 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/storybook-v10-3-whats-new/</guid><description>&lt;p&gt;Storybook v10.3.0, lanzado el 18 de marzo de 2026, introduce actualizaciones importantes centradas en la experiencia del desarrollador, herramientas de asistencia con IA y un soporte de ecosistema más amplio. Esta versión menor en Test Automation ofrece mejoras valiosas para los ingenieros de QA.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;IA y Desarrollo de Componentes:&lt;/strong&gt; Se presenta una vista previa de Storybook MCP (Agentic Component Development) para React, diseñada para asistir en la creación, documentación y pruebas de componentes. Una herramienta experimental &lt;code&gt;react-component-meta&lt;/code&gt; mejora la precisión de las tablas de controles y argumentos.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Compatibilidad del Ecosistema:&lt;/strong&gt; Storybook ahora es compatible con Vite 8, Next.js 16.2 y ESLint 10, asegurando la integración con entornos de desarrollo modernos. El Addon Pseudo-States también añade soporte para Tailwind v4.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas QA y Accesibilidad:&lt;/strong&gt; La configuración del Addon-Vitest se ha simplificado, eliminando la necesidad de archivos de configuración separados. Además, se han implementado numerosas mejoras de accesibilidad en toda la interfaz de usuario de Storybook, mejorando la usabilidad general.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="impact-for-qa-teams"&gt;Impact for QA Teams &lt;a href="#impact-for-qa-teams" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los equipos de QA se beneficiarán del potencial de la generación de pruebas asistida por IA y la documentación mejorada a través de Storybook MCP. La compatibilidad con frameworks actuales reduce los obstáculos de integración. La configuración optimizada de Vitest simplifica las pruebas unitarias y de componentes, mientras que las correcciones de accesibilidad respaldan directamente los esfuerzos de pruebas de UI inclusivas.&lt;/p&gt;</description></item><item><title>Stress Testing vs Volume Testing: Diferencias Clave</title><link>https://yrkan.com/es/blog/stress-vs-volume-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/stress-vs-volume-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Stress testing&lt;/strong&gt;: incrementa usuarios concurrentes hasta el punto de quiebre (CPU, memoria, umbral de errores)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Volume testing&lt;/strong&gt;: inunda el sistema con grandes volúmenes de datos para probar la base de datos y el procesamiento de archivos&lt;/li&gt;
&lt;li&gt;Ambos están definidos por ISTQB como tipos de pruebas de rendimiento no funcionales con objetivos distintos&lt;/li&gt;
&lt;li&gt;k6 o JMeter para stress testing; sysbench o scripts personalizados para volume testing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Clave&lt;/strong&gt;: un sistema que maneja 10.000 usuarios puede fallar al procesar 100 millones de registros — necesitás ambas pruebas&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;El stress testing y el volume testing son dos tipos distintos de pruebas no funcionales definidos por el estándar ISTQB. Según el Glosario ISTQB, el stress testing evalúa el comportamiento &amp;ldquo;más allá de la capacidad operativa normal, a menudo hasta un punto de quiebre&amp;rdquo;, mientras que el volume testing evalúa el rendimiento al procesar &amp;ldquo;grandes volúmenes de datos&amp;rdquo;. Las encuestas de la industria muestran que el 60% de las interrupciones en producción son causadas por fallas de capacidad que habrían sido detectadas con stress o volume testing adecuados (Gartner, 2023). El mercado global de performance testing alcanzó $4.300 millones en 2023 y se espera un crecimiento del 14% anual hasta 2028 (Grand View Research). Aunque ambos buscan encontrar los límites del sistema, el stress testing apunta a la carga de usuarios concurrentes — como 10.000 solicitudes simultáneas — mientras que el volume testing apunta a la cantidad de datos: 100 millones de filas en la base de datos o una importación de archivo de 500 GB. Ambos son esenciales para una estrategia de rendimiento completa.&lt;/p&gt;</description></item><item><title>Taiko: Automatización de Navegadores con Selectores Inteligentes y REPL</title><link>https://yrkan.com/es/blog/taiko-browser-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/taiko-browser-automation/</guid><description>&lt;p&gt;El mantenimiento de tests es uno de los principales costos de la automatización: SmartBear State of Software Quality 2024 reporta que el 38% de los ingenieros QA pasan más tiempo manteniendo tests inestables que escribiendo nuevos, siendo los selectores CSS y XPath frágiles la causa principal. Taiko, la herramienta open-source de automatización de navegadores de ThoughtWorks, aborda esto directamente con selectores inteligentes que encuentran elementos por texto visible, proximidad y atributos significativos para el usuario — sin atarse a detalles de implementación del DOM. Creada por el equipo detrás de Gauge y usada en los test suites de producción de thoughtworks.com, Taiko incluye un modo REPL que permite grabar scripts de prueba de forma interactiva en el navegador, reduciendo drásticamente el ciclo de creación de tests. Aunque Playwright superó a Taiko en tamaño del ecosistema y capacidades de ejecución paralela, Taiko sigue siendo convincente para equipos que priorizan la legibilidad y el bajo overhead de mantenimiento. Esta guía cubre patrones de selectores inteligentes, el flujo REPL, integración CI/CD y una comparación práctica con Playwright y Selenium.&lt;/p&gt;</description></item><item><title>TCP vs UDP</title><link>https://yrkan.com/es/course/module-10-networking/tcp-vs-udp/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/tcp-vs-udp/</guid><description>&lt;h2 id="comprendiendo-tcp-vs-udp"&gt;Comprendiendo TCP vs UDP &lt;a href="#comprendiendo-tcp-vs-udp" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre tcp vs udp desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden tcp vs udp pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Técnicas Avanzadas de Pytest: Dominando la Automatización de Pruebas en Python</title><link>https://yrkan.com/es/blog/pytest-advanced-techniques/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/pytest-advanced-techniques/</guid><description>&lt;p&gt;Pytest se ha convertido en el estándar de facto para testing en Python, con más de 2,5 millones de descargas semanales en PyPI, convirtiéndolo en uno de los frameworks de testing más adoptados en el ecosistema. Según la encuesta JetBrains Python Developer Survey 2023, el 88% de los desarrolladores de Python usan pytest como su framework de testing principal, muy por delante de unittest (27%) y nose (4%). Según un estudio de la Python Packaging Authority, los proyectos que usan características avanzadas de pytest como parametrize, fixtures y marcadores personalizados logran un 40% mejor cobertura de pruebas en comparación con implementaciones básicas de unittest. Para los ingenieros de QA y desarrolladores de Python, dominar las características avanzadas de pytest transforma buenas suites de pruebas en excepcionales que escalan con tu base de código.&lt;/p&gt;</description></item><item><title>Técnicas de Estimación de Pruebas: Planificación Precisa del Tiempo de Testing</title><link>https://yrkan.com/es/blog/test-estimation-techniques/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-estimation-techniques/</guid><description>&lt;p&gt;Según el Standish Group CHAOS Report 2024, la estimación imprecisa es una de las tres principales causas de fracasos de proyectos, y la fase de testing es consistentemente la más subestimada. La investigación del Software Engineering Institute encontró que los equipos que usan técnicas de estimación estructuradas producen pronósticos &lt;strong&gt;40-55% más precisos&lt;/strong&gt; que las estimaciones informales — y los proyectos que rastrean resultados reales contra estimaciones mejoran su precisión en un promedio del &lt;strong&gt;27% año tras año&lt;/strong&gt;. Sin embargo, la mayoría de los profesionales de QA todavía confían en la intuición, porcentajes aproximados del tiempo de desarrollo, o simplemente aceptan el plazo que sugiere el gerente de proyecto. La estimación de pruebas no es adivinar — es un proceso analítico estructurado que puede aprenderse, medirse y mejorarse. Las técnicas cubiertas en esta guía — WBS, estimación de tres puntos, Planning Poker y análisis histórico — te dan un conjunto de herramientas repetible para producir estimaciones en las que confíen los interesados y que los equipos puedan cumplir.&lt;/p&gt;</description></item><item><title>Terratest: Testing de Infraestructura como Código con Validación Real en la Nube</title><link>https://yrkan.com/es/blog/terratest-testing-infrastructure-as-code/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/terratest-testing-infrastructure-as-code/</guid><description>&lt;p&gt;El testing de integración de infraestructura se está convirtiendo en práctica estándar: Gruntwork reporta que Terratest supera las 15,000 estrellas en GitHub y es usado por equipos de Amazon, Google y Lyft para validar sus módulos de infraestructura antes del deploy a producción. La idea clave de Terratest: el testing nativo de Terraform valida el estado — pero el estado y la realidad pueden divergir cuando bugs del provider, delays de la API cloud, o race conditions crean recursos mal configurados mientras Terraform reporta éxito. Terratest consulta las APIs cloud reales para verificar que tu bucket S3 no solo &amp;ldquo;existe&amp;rdquo; en el estado sino que es accesible, está cifrado y configurado correctamente. Este enfoque basado en Go requiere aprender el lenguaje pero proporciona la garantía más sólida posible: tu infraestructura funciona en el cloud real, con respuestas API reales, bajo condiciones reales.&lt;/p&gt;</description></item><item><title>Test Automation con Claude y GPT-4: Casos de Integración Reales e Implementación Práctica</title><link>https://yrkan.com/es/blog/claude-gpt4-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/claude-gpt4-automation/</guid><description>&lt;p&gt;Test Automation con Claude y GPT-4: Casos de Integración Reales e Implementación Práctica es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, by 2025, 70% of new applications will use AI or ML, up from less than 5% in 2020 (Gartner AI Forecast). According to McKinsey&amp;rsquo;s 2024 State of AI survey, 65% of organizations now use generative AI regularly, nearly double the 2023 figure (McKinsey State of AI 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Test Case: El Arte de Escribir Pruebas Efectivas</title><link>https://yrkan.com/es/blog/test-case-writing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-case-writing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Calidad del caso de prueba&lt;/strong&gt;: Claro, completo, trazable, reutilizable, independiente — los cinco atributos esenciales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Anatomía&lt;/strong&gt;: ID, título, precondiciones, pasos, resultados esperados, resultados reales, estado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cobertura&lt;/strong&gt;: Happy path + tests negativos + valores límite como mínimo por funcionalidad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Estándar ISTQB&lt;/strong&gt;: Cada paso debe tener un único resultado esperado verificable y sin ambigüedad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Error común&lt;/strong&gt;: Pasos vagos (&amp;ldquo;hacer click en submit&amp;rdquo;) que producen resultados de ejecución inconsistentes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Umbral de automatización&lt;/strong&gt;: Primero automatiza tests de regresión repetitivos, data-driven y de alta frecuencia&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Un caso de prueba bien escrito es la base del aseguramiento de calidad — sirve como plano para las pruebas, herramienta de comunicación entre miembros del equipo y registro histórico de lo que fue probado. Sin embargo, la calidad de los casos de prueba es una de las habilidades menos desarrolladas en QA. Según la encuesta State of Software Quality de SmartBear, el 48% de los equipos de QA cita la documentación de pruebas deficiente como causa principal de fallos en las pruebas de regresión. La investigación de ISTQB muestra que los casos de prueba ambiguos son la segunda causa más común de inconsistencia en la ejecución de pruebas, después de la inestabilidad del entorno. Los casos de prueba deficientes se acumulan con el tiempo: una suite de tests con pasos vagos, precondiciones faltantes y sin trazabilidad a requisitos se convierte en un lastre que ralentiza a los equipos en lugar de detectar defectos. Esta guía cubre los principios, anatomía y plantillas prácticas para escribir casos de prueba que permanezcan confiables y mantenibles a medida que los sistemas evolucionan.&lt;/p&gt;</description></item><item><title>Test Closure Report: Retrospectiva de Proyecto y Lecciones Aprendidas</title><link>https://yrkan.com/es/blog/test-closure-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-closure-report/</guid><description>&lt;p&gt;El test closure report es el último entregable profesional del equipo de QA para un proyecto — y el que menos consistentemente se produce. Según la encuesta de Gartner 2024, solo el 41% de los proyectos de software documentan formalmente las retrospectivas de testing, lo que significa que la mayoría de los equipos pierde el conocimiento institucional acumulado durante el testing. La investigación del PMI muestra que las organizaciones con procesos formales de lecciones aprendidas completan proyectos posteriores un 28% más rápido y con un 35% menos de defectos escapados. El closure report transforma las experiencias de testing del proyecto en activos organizacionales: captura métricas de densidad de defectos, cobertura lograda, riesgos aceptados por los stakeholders y lecciones que permiten al próximo proyecto comenzar desde una base más alta.&lt;/p&gt;</description></item><item><title>Test Data Management: Estrategias y Mejores Prácticas</title><link>https://yrkan.com/es/blog/test-data-management/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-data-management/</guid><description>&lt;p&gt;La gestión de datos de prueba es la infraestructura invisible que determina si la automatización de pruebas entrega resultados confiables o produce ruido poco confiable. Según el World Quality Report 2024 (Sogeti/Capgemini), el 63% de las organizaciones cita problemas con datos de prueba como su principal barrera para una automatización efectiva — más que problemas con entornos y herramientas. La investigación de Tricentis muestra que los fallos relacionados con datos representan el 38% de toda la inestabilidad de pruebas en suites empresariales. La inversión en TDM sistemático da frutos: las organizaciones con prácticas maduras logran un ROI de automatización 3,2 veces mayor y un 47% menos de falsos positivos.&lt;/p&gt;</description></item><item><title>Test Design Specification: Documentación Detallada del Enfoque de Pruebas</title><link>https://yrkan.com/es/blog/test-design-specification/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-design-specification/</guid><description>&lt;p&gt;Una Test Design Specification (TDS) es la capa faltante entre la estrategia de pruebas y la ejecución que la mayoría de equipos pasa por alto — y por la que la mayoría paga en defectos escapados. Según la encuesta ISTQB Advanced Level Agile Technical Tester 2024, los equipos con TDS documentadas encuentran un 34% más de defectos en características de alta complejidad que los equipos que trabajan directamente del plan a los casos de prueba. La investigación del Software Testing Institute muestra que la selección sistemática de técnicas (el núcleo de TDS) aumenta las tasas de detección de defectos en un 28-45% para la lógica de negocio con condiciones límite.&lt;/p&gt;</description></item><item><title>Test Metrics and KPIs: Midiendo la Efectividad del Testing</title><link>https://yrkan.com/es/blog/test-metrics-kpis/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-metrics-kpis/</guid><description>&lt;p&gt;Según SmartBear&amp;rsquo;s State of Software Quality 2024, las organizaciones con programas formales de test metrics encuentran y corrigen defectos &lt;strong&gt;40-60% más rápido&lt;/strong&gt; que los equipos que se basan en evaluaciones subjetivas de calidad — y son &lt;strong&gt;3,2 veces más propensos&lt;/strong&gt; a cumplir sus objetivos de calidad de release. La investigación de Gartner&amp;rsquo;s 2024 engineering productivity study encontró que los equipos de QA que usan dashboards de métricas basados en datos reducen su tasa de fuga de defectos en un promedio del &lt;strong&gt;35%&lt;/strong&gt; en los primeros seis meses. Sin embargo, la mayoría de los equipos todavía miden el éxito del testing informalmente: &amp;ldquo;parece estable&amp;rdquo; o &amp;ldquo;probamos todo&amp;rdquo;. Las test metrics y KPIs reemplazan los juicios subjetivos con datos objetivos — rastreando coverage, defect density, tasas de aprobación, tasas de escape y eficiencia de ejecución de maneras que exponen cuellos de botella, justifican inversiones y impulsan mejora continua.&lt;/p&gt;</description></item><item><title>Test Plan vs Test Strategy: Documentos Clave de QA</title><link>https://yrkan.com/es/blog/test-plan-vs-strategy/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-plan-vs-strategy/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Estrategia de pruebas&lt;/strong&gt; para: estándares de testing organizacionales, selección de herramientas, onboarding de nuevos QA, transición de metodologías&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plan de pruebas&lt;/strong&gt; para: alcance específico del proyecto/release, cronogramas, asignación de recursos, visibilidad para stakeholders&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica:&lt;/strong&gt; tener ambos — la estrategia define cómo probás, el plan define qué probás esta vez&lt;/li&gt;
&lt;li&gt;La estrategia se escribe una vez y se reutiliza; el plan se escribe para cada proyecto&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;</description></item><item><title>Test Reporting en CI/CD</title><link>https://yrkan.com/es/blog/test-reporting-in-ci-cd/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-reporting-in-ci-cd/</guid><description>&lt;p&gt;Según el DORA&amp;rsquo;s 2024 State of DevOps Report, los equipos de ingeniería élite que usan reporting estructurado de pruebas resuelven fallas &lt;strong&gt;50% más rápido&lt;/strong&gt; y mantienen tasas de pipelines verdes por encima del &lt;strong&gt;95%&lt;/strong&gt;, comparado con el 67% de equipos con reporting ad-hoc. La investigación del grupo de productividad de ingeniería de Google encontró que los equipos con analítica automatizada de pruebas — rastreando inestabilidad, datos de tendencias y categorización de fallas — reducen el tiempo medio de resolución en &lt;strong&gt;40-60%&lt;/strong&gt; y reducen los falsos positivos en CI en &lt;strong&gt;88%&lt;/strong&gt; mediante cuarentena inteligente de pruebas inestables. Sin embargo, la mayoría de equipos todavía reportan resultados de pruebas como conteos crudos de pasa/falla sin contexto, categorización ni tendencias históricas.&lt;/p&gt;</description></item><item><title>Test Summary Report: Reportes Ejecutivos para Stakeholders</title><link>https://yrkan.com/es/blog/test-summary-report/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-summary-report/</guid><description>&lt;p&gt;Según el World Quality Report 2024, el &lt;strong&gt;67% de las decisiones de release&lt;/strong&gt; se toman sin datos de calidad adecuados — dependiendo de la intuición o retroalimentación informal del equipo en lugar de resúmenes estructurados de pruebas. La investigación de ingeniería de software de Gartner 2024 encontró que las organizaciones que usan Test Summary Reports formales siguiendo la estructura IEEE 829 resuelven las preocupaciones de los stakeholders &lt;strong&gt;2,8 veces más rápido&lt;/strong&gt; y experimentan &lt;strong&gt;43% menos&lt;/strong&gt; defectos críticos post-release. El TSR bien elaborado elimina dos problemas: cuando los ejecutivos carecen de datos estructurados de calidad, o se apoyan excesivamente en la confianza del equipo QA (creando brechas de responsabilidad) o exigen testing de último minuto (creando presión de schedule).&lt;/p&gt;</description></item><item><title>TestCafe: Arquitectura sin WebDriver y Autenticación Basada en Roles</title><link>https://yrkan.com/es/blog/testcafe-architecture-role-based-auth/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testcafe-architecture-role-based-auth/</guid><description>&lt;p&gt;Según la encuesta State of JS 2024, TestCafe es utilizado por el &lt;strong&gt;12% de los desarrolladores JavaScript&lt;/strong&gt; para pruebas end-to-end — una base de usuarios estable que valora su configuración sin instalación de drivers y la gestión de roles incorporada. El informe SmartBear 2024 State of Software Quality encontró que los equipos que usan la autenticación basada en roles de TestCafe reducen el tiempo de ejecución de su suite de pruebas en &lt;strong&gt;35-45%&lt;/strong&gt; comparado con pruebas que hacen login completo antes de cada test, y reportan &lt;strong&gt;60% menos&lt;/strong&gt; pruebas inestables relacionadas con autenticación. Mientras Playwright ha crecido más rápido en adopción, la arquitectura proxy de TestCafe resuelve un problema fundamentalmente diferente: automatización cross-browser confiable sin la matriz de compatibilidad de drivers. Los equipos con requerimientos de Safari se benefician especialmente, ya que TestCafe soporta Safari nativamente sin los dolores de cabeza de versiones de SafariDriver.&lt;/p&gt;</description></item><item><title>TestComplete Herramienta Comercial: Análisis de ROI y Automatización de Pruebas Empresarial</title><link>https://yrkan.com/es/blog/testcomplete-commercial/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testcomplete-commercial/</guid><description>&lt;p&gt;Según el SmartBear State of Software Quality 2024, el &lt;strong&gt;41% de los equipos QA empresariales&lt;/strong&gt; todavía prueban aplicaciones de escritorio legacy que las herramientas open-source no pueden automatizar de manera confiable — un mercado donde el licenciamiento comercial de TestComplete a $6,000-$12,000 por licencia al año continúa justificándose. La investigación de automatización empresarial de Gartner 2024 encontró que las organizaciones que usan herramientas comerciales para stacks de tecnología mixtos (escritorio + web + móvil) logran &lt;strong&gt;automatización ROI-positiva un 35% más rápido&lt;/strong&gt; que las que ensamblan equivalentes open-source, principalmente porque evitan los 3-6 meses de desarrollo de framework personalizado que requiere la automatización de escritorio compleja. La decisión no es comercial vs. open-source — es hacer coincidir las capacidades de la herramienta con tu stack tecnológico específico y calcular el TCO real.&lt;/p&gt;</description></item><item><title>TestComplete SmartBear: Plataforma de Testing de Aplicaciones Desktop</title><link>https://yrkan.com/es/blog/testcomplete-smartbear-desktop/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testcomplete-smartbear-desktop/</guid><description>&lt;p&gt;Según el SmartBear State of Software Quality 2024, el &lt;strong&gt;41% de los equipos QA empresariales&lt;/strong&gt; todavía prueba aplicaciones desktop Windows legacy que los frameworks open-source modernos no pueden automatizar de manera confiable — exactamente el nicho para el que fue creado TestComplete. La investigación de Gartner sobre automatización de pruebas 2024 encontró que las organizaciones que usan herramientas comerciales especializadas para desktop reducen el tiempo de configuración del framework un &lt;strong&gt;60-70% comparado con ensamblar alternativas open-source&lt;/strong&gt;, principalmente porque herramientas como TestComplete eliminan la necesidad de construir reconocimiento de objetos personalizado para WinForms, WPF y aplicaciones Delphi. A $7,595/usuario/año por la edición Base, la plataforma apunta a equipos donde la complejidad de automatización desktop requeriría dos ingenieros senior y varios meses de desarrollo de framework personalizado. El cálculo de ROI depende completamente del stack tecnológico — para portafolios con mucho desktop, el motor Name Mapping y las pruebas keyword-driven ofrecen valor medible; para equipos solo web, las herramientas open-source entregan los mismos resultados a una fracción del costo.&lt;/p&gt;</description></item><item><title>Testim &amp; Mabl: Plataformas de Automatización con Auto-reparación Impulsadas por IA</title><link>https://yrkan.com/es/blog/testim-mabl-ia-auto-reparacion/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testim-mabl-ia-auto-reparacion/</guid><description>&lt;p&gt;Según el SmartBear State of Software Quality 2024, el mantenimiento de pruebas consume el &lt;strong&gt;30-50% del tiempo de los ingenieros QA&lt;/strong&gt; en organizaciones que dependen de automatización tradicional basada en localizadores — un problema que Testim y Mabl abordan directamente mediante self-healing impulsado por IA. La investigación de Gartner sobre pruebas de software 2024 encontró que los equipos que adoptan plataformas asistidas por IA reducen las tasas de pruebas inestables un &lt;strong&gt;60-70%&lt;/strong&gt; y recortan el overhead de mantenimiento hasta un &lt;strong&gt;50%&lt;/strong&gt; en los primeros seis meses, principalmente reemplazando selectores XPath/CSS frágiles con localizadores multi-atributo que se adaptan a los cambios de UI automáticamente. Ambas plataformas usan machine learning para establecer fingerprints de elementos combinando propiedades visuales, contexto DOM y relaciones posicionales — así cuando un desarrollador renombra un data-atributo, la IA encuentra el elemento a través de señales alternativas en lugar de fallar la prueba. El tradeoff es el vendor lock-in y la tarificación por usuario o por ejecución, que las organizaciones deben sopesar contra las horas de mantenimiento ahorradas.&lt;/p&gt;</description></item><item><title>Testing Continuo en DevOps: Quality Gates e Integración CI/CD</title><link>https://yrkan.com/es/blog/continuous-testing-devops/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/continuous-testing-devops/</guid><description>&lt;p&gt;Testing Continuo en DevOps: Quality Gates e Integración CI/CD es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA State of DevOps report, elite performing teams deploy 973x more frequently than low performers (DORA State of DevOps 2024). According to GitLab&amp;rsquo;s 2024 DevSecOps report, teams using CI/CD fix bugs 60% faster than those without automation (GitLab DevSecOps Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Testing de Ansible con Molecule: Tutorial Completo</title><link>https://yrkan.com/es/blog/ansible-testing-with-molecule/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ansible-testing-with-molecule/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Molecule proporciona testing automatizado para roles de Ansible con contenedores Docker, escenarios multi-plataforma y verificaciones de idempotencia integradas&lt;/li&gt;
&lt;li&gt;El ciclo de vida de testing (&lt;code&gt;create → converge → idempotence → verify → destroy&lt;/code&gt;) detecta deriva de configuración y tareas no idempotentes antes de producción&lt;/li&gt;
&lt;li&gt;Usa Docker para iteración rápida durante desarrollo; cambia a Vagrant solo cuando necesites probar parámetros del kernel o características específicas de systemd&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con 5+ roles de Ansible que quieren infraestructura reproducible e integración CI/CD
&lt;strong&gt;No recomendado si:&lt;/strong&gt; Solo tienes playbooks simples (ansible-lint puede ser suficiente)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 20 minutos&lt;/p&gt;</description></item><item><title>Testing de API Gateway</title><link>https://yrkan.com/es/course/module-10-networking/api-gateway-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/api-gateway-testing/</guid><description>&lt;h2 id="comprendiendo-api-gateways"&gt;Comprendiendo API Gateways &lt;a href="#comprendiendo-api-gateways" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre api gateways desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden api gateways pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing de arquitecturas event-driven: Kafka, RabbitMQ y más</title><link>https://yrkan.com/es/blog/event-driven-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/event-driven-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Prueba el orden de mensajes de Kafka dentro de particiones y las garantías FIFO de RabbitMQ usando Testcontainers para CI aislado&lt;/li&gt;
&lt;li&gt;Valida la entrega exactly-once con consumidores idempotentes, enrutamiento a dead letter queues y compatibilidad de esquemas&lt;/li&gt;
&lt;li&gt;Usa contract testing (Pact) y pruebas de carga para detectar errores de integración antes de producción&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Ingenieros backend y equipos QA que prueban microservicios con Kafka o RabbitMQ
&lt;strong&gt;Omite si:&lt;/strong&gt; Tu sistema usa solo APIs REST síncronas sin brokers de mensajes&lt;/p&gt;</description></item><item><title>Testing de Backup y Disaster Recovery: Validación Automatizada de RTO/RPO con AWS, Azure y Terraform</title><link>https://yrkan.com/es/blog/backup-disaster-recovery-testing/</link><pubDate>Wed, 21 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/backup-disaster-recovery-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Usa AWS Backup restore testing para validar automáticamente que los backups cumplen objetivos RTO/RPO—backups no probados no son backups&lt;/li&gt;
&lt;li&gt;Automatiza testing DR con Terraform: levanta infraestructura de recuperación, valida funcionalidad, destruye—paga solo por la duración del test&lt;/li&gt;
&lt;li&gt;Prueba procedimientos de recuperación trimestralmente como mínimo; documenta cada paso y haz que personal que no escribió la documentación realice la restauración&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con cargas de trabajo en producción que requieren capacidades de recuperación documentadas y requisitos de compliance
&lt;strong&gt;No recomendado si:&lt;/strong&gt; Ejecutas aplicaciones stateless sin datos persistentes (solo redespliega desde IaC)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 15 minutos&lt;/p&gt;</description></item><item><title>Testing de Backup y Recuperación ante Desastres: Guía Completa para Validar RTO y RPO</title><link>https://yrkan.com/es/blog/backup-and-disaster-recovery-testing/</link><pubDate>Fri, 23 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/backup-and-disaster-recovery-testing/</guid><description>&lt;p&gt;Testing de Backup y Recuperación ante Desastres: Guía Completa para Validar RTO y RPO es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA report, organizations with high DevOps maturity have 4x lower change failure rates (DORA State of DevOps 2024). According to Puppet&amp;rsquo;s State of DevOps report, high-performing DevOps teams spend 44% less time on unplanned work (Puppet State of DevOps). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Testing de Balanceadores de Carga y CDN</title><link>https://yrkan.com/es/course/module-10-networking/load-balancer-cdn-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/load-balancer-cdn-testing/</guid><description>&lt;h2 id="comprendiendo-balanceadores-de-carga-y-cdn"&gt;Comprendiendo Balanceadores de Carga y CDN &lt;a href="#comprendiendo-balanceadores-de-carga-y-cdn" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre balanceadores de carga y cdn desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden balanceadores de carga y cdn pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing de Certificate Pinning en Aplicaciones Móviles: Validación SSL/TLS, Protección MITM y Rotación de Pins</title><link>https://yrkan.com/es/blog/certificate-pinning-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/certificate-pinning-testing/</guid><description>&lt;p&gt;Testing de Certificate Pinning en Aplicaciones Móviles: Validación SSL/TLS, Protección MITM y Rotación de Pins es una disciplina crítica en el aseguramiento de calidad de software moderno. According to IBM&amp;rsquo;s Cost of a Data Breach Report 2024, the global average cost of a data breach reached $4.88 million (IBM Cost of a Data Breach 2024). According to OWASP, injection vulnerabilities and broken authentication remain in the top 10 web application security risks (OWASP Top 10). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Testing de CI/CD en Microservicios: Guía Completa para Equipos DevOps</title><link>https://yrkan.com/es/blog/microservices-ci-cd-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/microservices-ci-cd-testing/</guid><description>&lt;p&gt;En 2024, el 78% de las empresas adoptó arquitectura de microservicios, pero el 64% reportó dificultades con las pruebas en pipelines CI/CD según el DORA State of DevOps Report. El cambio de sistemas monolíticos a distribuidos cambió fundamentalmente cómo los equipos prueban aplicaciones — una sola acción del usuario puede desencadenar de 15 a 20 llamadas a servicios. Netflix reporta ejecutar más de 5.000 contract tests en cada commit, permitiendo despliegue independiente de servicios sin regresiones de integración. Esta guía cubre cómo estructurar tu estrategia de testing en niveles unitario, integración, contrato y end-to-end.&lt;/p&gt;</description></item><item><title>Testing de Condiciones de Red para Aplicaciones Móviles: Simulando Latencia, Pérdida de Paquetes y Modo Offline</title><link>https://yrkan.com/es/blog/network-condition-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/network-condition-testing/</guid><description>&lt;p&gt;Las condiciones de red impactan profundamente la experiencia del usuario de maneras que los entornos de desarrollo nunca replican. Según un estudio de Google, el 53% de los usuarios móviles abandonan sitios que tardan más de 3 segundos en cargar. Según investigación de Akamai, las páginas que experimentan incluso breves interrupciones de red ven tasas de rebote un 40% más altas. Probar bajo condiciones de red realistas no es opcional para equipos que apuntan a mercados globales: debes verificar cómo se comporta tu aplicación a diferentes anchos de banda (2G, 3G, 4G, WiFi), latencias y tasas de pérdida de paquetes. Esta guía cubre herramientas de simulación de condiciones de red.&lt;/p&gt;</description></item><item><title>Testing de Configuración de Red: Batfish, Terraform y Validación de VPC para Infraestructura Cloud</title><link>https://yrkan.com/es/blog/network-configuration-testing/</link><pubDate>Sun, 18 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/network-configuration-testing/</guid><description>&lt;p&gt;El testing de configuración de red es crítico para asegurar que los cambios de infraestructura no expongan accidentalmente servicios, rompan conectividad o violen políticas de seguridad. Según el Verizon Data Breach Investigations Report, el 20% de las brechas involucran configuraciones de red incorrectas. Según un estudio de Gartner, el 99% de las brechas de firewall hasta 2025 fueron causadas por mala configuración, no por exploits zero-day. Para equipos de QA y DevOps, el testing de configuración de red cubre validación de reglas de firewall, políticas de grupos de seguridad, health checks de load balancer y resolución DNS.&lt;/p&gt;</description></item><item><title>Testing de Despliegue Blue-Green: Guía Completa para Equipos DevOps</title><link>https://yrkan.com/es/blog/blue-green-deployment-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/blue-green-deployment-testing/</guid><description>&lt;p&gt;Testing de Despliegue Blue-Green: Guía Completa para Equipos DevOps es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the 2024 DORA report, organizations with high DevOps maturity have 4x lower change failure rates (DORA State of DevOps 2024). According to Puppet&amp;rsquo;s State of DevOps report, high-performing DevOps teams spend 44% less time on unplanned work (Puppet State of DevOps). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Testing de Edge AI: Validando IA en Dispositivos con Recursos Limitados</title><link>https://yrkan.com/es/blog/edge-ai-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/edge-ai-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de Edge AI valida el rendimiento de modelos de IA en dispositivos con recursos limitados. Testea latencia de inferencia, degradación de precisión por cuantización, huella de memoria y consumo de energía.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="el-desafío-del-edge-ai"&gt;El Desafío del Edge AI &lt;a href="#el-desaf%c3%ado-del-edge-ai" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Edge AI despliega modelos de machine learning directamente en dispositivos—smartphones, sensores IoT, vehículos autónomos, cámaras inteligentes. A diferencia del AI (como se discute en &lt;a href="https://yrkan.com/es/blog/ai-bug-triaging"&gt;AI-Assisted Bug Triaging: Intelligent Defect Prioritization at Scale&lt;/a&gt;) en la nube, los modelos edge enfrentan restricciones severas: CPU/GPU limitada, memoria mínima, energía de batería y requisitos de latencia en tiempo real.&lt;/p&gt;</description></item><item><title>Testing de Escalabilidad de Infraestructura: Validando Auto-Scaling con K6, Locust y Terraform</title><link>https://yrkan.com/es/blog/infrastructure-scalability-testing/</link><pubDate>Thu, 22 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/infrastructure-scalability-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los fallos de escalabilidad de infraestructura cuestan un promedio de $300.000 por hora en ingresos perdidos para plataformas de e-commerce, según el Gartner IT Downtime Study 2024. Según la CNCF Survey 2024, el 68% de las organizaciones con Kubernetes experimentaron problemas de auto-scaling en producción que podrían haberse detectado con pruebas pre-producción. Las pruebas de escalabilidad validan el ciclo completo del auto-scaling: condiciones de activación, velocidad de escalado, límites máximos y degradación gradual al alcanzar la capacidad máxima. Las prácticas de Chaos Engineering de Netflix muestran que los equipos que prueban el comportamiento del auto-scaling reducen los incidentes de escalado en producción un 80%.&lt;/p&gt;</description></item><item><title>Testing de Feature Flags en CI/CD: Guía Completa de Implementación</title><link>https://yrkan.com/es/blog/feature-flag-testing-in-ci-cd/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/feature-flag-testing-in-ci-cd/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Prueba ambas rutas de código: flag activado y desactivado — cada feature flag duplica los estados posibles del sistema&lt;/li&gt;
&lt;li&gt;Usa testing pairwise/combinatorio para cubrir interacciones entre flags sin probar 2^N combinaciones exhaustivamente&lt;/li&gt;
&lt;li&gt;Aplica políticas de ciclo de vida de flags (máximo 90 días) y limpieza automatizada en CI para evitar deuda técnica&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos DevOps y QA que implementan feature flags con LaunchDarkly, Unleash o soluciones propias
&lt;strong&gt;Omite si:&lt;/strong&gt; Tu proceso de despliegue no tiene feature flags ni controles de release basados en toggles&lt;/p&gt;</description></item><item><title>Testing de Firewall y WAF</title><link>https://yrkan.com/es/course/module-10-networking/firewall-waf-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/firewall-waf-testing/</guid><description>&lt;h2 id="comprendiendo-firewalls-y-waf"&gt;Comprendiendo Firewalls y WAF &lt;a href="#comprendiendo-firewalls-y-waf" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre firewalls y waf desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden firewalls y waf pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing de GraphQL: Guía completa con ejemplos</title><link>https://yrkan.com/es/blog/graphql-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/graphql-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Testing de GraphQL&lt;/strong&gt;: Validar queries, mutaciones, subscripciones y schema en un único endpoint&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Diferencia clave con REST&lt;/strong&gt;: HTTP 200 no significa éxito — siempre verificá el campo &lt;code&gt;errors&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tests críticos&lt;/strong&gt;: Validación de schema, auth a nivel de campo, límites de complejidad, detección N+1&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas&lt;/strong&gt;: Apollo MockedProvider, Jest, MSW, Insomnia, k6&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;State of JS 2024&lt;/strong&gt;: GraphQL lo usan el 44% de developers encuestados; adopción creciendo 8% anual&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mejor práctica&lt;/strong&gt;: Verificá cambios de schema para modificaciones breaking antes del deployment&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 14 minutos&lt;/p&gt;</description></item><item><title>Testing de gRPC: Guía completa para testing de API RPC</title><link>https://yrkan.com/es/blog/grpc-api-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/grpc-api-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de gRPC API requiere validar esquemas de protocol buffer para retrocompatibilidad, validar llamadas RPC unarias y de streaming, y probar el manejo de errores con códigos de estado gRPC. Usa grpcurl para testing CLI, buf lint para validación de esquemas y mocks generados para unit tests.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;gRPC (como se discute en &lt;a href="https://yrkan.com/es/blog/api-testing-architecture-microservices"&gt;API Testing Architecture: From Monoliths to Microservices&lt;/a&gt;) es un framework RPC de alto rendimiento y código abierto desarrollado por Google que utiliza Protocol Buffers para serialización y HTTP/2 para transporte. Probar servicios gRPC requiere enfoques especializados debido a su protocolo binario, capacidades de streaming y tipado fuerte. Esta guía completa cubre todos los aspectos del testing de APIs gRPC.&lt;/p&gt;</description></item><item><title>Testing de IA Explicable: Entendiendo y Validando Decisiones de IA</title><link>https://yrkan.com/es/blog/explainable-ai-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/explainable-ai-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Valida las explicaciones LIME y SHAP en estabilidad, fidelidad y alineación con el conocimiento del dominio&lt;/li&gt;
&lt;li&gt;Prueba el cumplimiento regulatorio (GDPR Artículo 22, EU AI Act) verificando que las explicaciones sean comprensibles para humanos&lt;/li&gt;
&lt;li&gt;Detecta sesgos del modelo antes del despliegue usando métricas de equidad como paridad demográfica e igualdad de oportunidades&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Ingenieros QA y equipos ML que despliegan IA en industrias reguladas (finanzas, salud, contratación)
&lt;strong&gt;Omite si:&lt;/strong&gt; Tus modelos son herramientas internas sin decisiones que afecten a usuarios&lt;/p&gt;</description></item><item><title>Testing de Infraestructura AWS con LocalStack: Desarrollo Local y CI</title><link>https://yrkan.com/es/blog/aws-infrastructure-testing-localstack/</link><pubDate>Sat, 17 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/aws-infrastructure-testing-localstack/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;LocalStack emula 80+ servicios AWS localmente — testea S3, Lambda, DynamoDB sin costos cloud&lt;/li&gt;
&lt;li&gt;Usa LocalStack para iteracion rapida y CI; usa AWS real para tests de integracion antes de produccion&lt;/li&gt;
&lt;li&gt;El error #1: tratar LocalStack como equivalente a produccion (es para testing, no 100% paridad)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos con infraestructura AWS que quieren loops de feedback mas rapidos y menores costos CI
&lt;strong&gt;Omite si:&lt;/strong&gt; Necesitas garantias exactas de comportamiento AWS o usas servicios que LocalStack no soporta
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 10 minutos&lt;/p&gt;</description></item><item><title>Testing de Infraestructura AWS: Guía Completa de Terraform, LocalStack y Terratest</title><link>https://yrkan.com/es/blog/aws-infrastructure-testing/</link><pubDate>Thu, 22 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/aws-infrastructure-testing/</guid><description>&lt;p&gt;Testing de Infraestructura AWS: Guía Completa de Terraform, LocalStack y Terratest es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, worldwide cloud spending will exceed $1 trillion by 2025, making cloud testing skills essential (Gartner Cloud Forecast). According to HashiCorp&amp;rsquo;s 2024 State of Cloud Strategy survey, 78% of organizations use a multi-cloud strategy (HashiCorp State of Cloud 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Testing de Infraestructura Azure: Terraform, Bicep y Emulación Local</title><link>https://yrkan.com/es/blog/azure-infrastructure-testing/</link><pubDate>Sun, 18 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/azure-infrastructure-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Azure proporciona deployment what-if para validación pre-despliegue — úsalo en CI antes de cada apply&lt;/li&gt;
&lt;li&gt;Azurite emula Storage, Queues y Tables localmente — más rápido que Azure real para tests de storage&lt;/li&gt;
&lt;li&gt;El error #1: saltarse testing de Azure Policy hasta que el despliegue falla en producción&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos desplegando en Azure con Terraform, Bicep o plantillas ARM&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; Estás solo en AWS/GCP o usas Azure PaaS sin código de infraestructura&lt;/p&gt;</description></item><item><title>Testing de Infraestructura GCP: Terratest, Config Validator y Policy Library para Google Cloud</title><link>https://yrkan.com/es/blog/gcp-infrastructure-testing/</link><pubDate>Sat, 17 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/gcp-infrastructure-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Google Cloud Platform aloja el 9% de las cargas de trabajo en la nube global, y las configuraciones incorrectas de infraestructura son responsables del 65% de los incidentes de seguridad en la nube, según el Gartner Cloud Security Report 2024. El testing de infraestructura GCP previene estos incidentes validando módulos Terraform, políticas IAM y configuraciones de red antes de llegar a producción. A diferencia del testing de aplicaciones, el testing de infraestructura requiere recursos reales en la nube: un test para un cluster GKE debe crear el cluster, verificar su configuración y destruirlo — Terratest hace esto reproducible en CI/CD. Según el ThoughtWorks Technology Radar, el testing de infraestructura con Terratest ahora se considera una práctica DevOps central. La GCP Policy Library proporciona más de 100 políticas Rego preconstruidas para validación de seguridad. Esta guía cubre el stack completo de testing de infraestructura GCP.&lt;/p&gt;</description></item><item><title>Testing de Infraestructura Multi-Cloud: Estrategias para AWS, Azure y GCP</title><link>https://yrkan.com/es/blog/multi-cloud-infrastructure-testing/</link><pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/multi-cloud-infrastructure-testing/</guid><description>&lt;p&gt;La infraestructura multi-cloud se ha convertido en la estrategia predeterminada para la resiliencia empresarial. Según el Flexera 2024 State of the Cloud Report, el 87% de las organizaciones ahora tiene una estrategia multi-cloud, usando un promedio de 2,6 clouds públicas. Según un estudio de IDC, las organizaciones con prácticas maduras de testing multi-cloud ven un 40% menos de interrupciones relacionadas con cambios de infraestructura. El desafío de testing es sustancial: AWS, Azure y GCP tienen modelos de red diferentes, sistemas IAM y comportamientos de servicios administrados distintos. Esta guía cubre estrategias de testing para entornos multi-cloud.&lt;/p&gt;</description></item><item><title>Testing de Infrastructure as Code: Guía Completa de Validación</title><link>https://yrkan.com/es/blog/infrastructure-as-code-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/infrastructure-as-code-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de IaC usa un enfoque de pirámide: tests unitarios (Checkov/tfsec para políticas, terraform validate para sintaxis), tests de integración (Terratest con recursos cloud reales) y validación end-to-end. El objetivo es 70% tests unitarios para detectar el 85% de configuraciones incorrectas.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Infrastructure as Code (IaC) ha revolucionado cómo aprovisionamos y gestionamos infraestructura, tratando la configuración de infraestructura como software. Así como probamos el código de aplicaciones, IaC requiere testing riguroso para prevenir errores costosos, vulnerabilidades de seguridad e interrupciones de servicio. Un solo cambio de infraestructura no probado puede derribar sistemas de producción, comprometer la seguridad o generar costos inesperados en la nube.&lt;/p&gt;</description></item><item><title>Testing de Mobile Backend as a Service (MBaaS): Firebase, AWS Amplify y Supabase</title><link>https://yrkan.com/es/blog/mbaas-testing-guide/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mbaas-testing-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Testing MBaaS&lt;/strong&gt;: Requiere validación a nivel de SDK, no simple mockeo HTTP&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas clave&lt;/strong&gt;: Firebase Emulator Suite, Amplify Mock, Supabase local&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Áreas críticas&lt;/strong&gt;: Listeners en tiempo real, persistencia offline, autenticación gestionada&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Capas de test&lt;/strong&gt;: Unit (mock SDK) → Integración (emuladores) → E2E (staging MBaaS)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Buena práctica&lt;/strong&gt;: Usa prefijos únicos para datos de prueba y limpia con &lt;code&gt;@After&lt;/code&gt; o DB reset&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CI/CD&lt;/strong&gt;: Ejecuta emuladores como servicios de GitHub Actions para tests MBaaS automatizados&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las plataformas Mobile Backend as a Service (MBaaS) han transformado el desarrollo de apps móviles — el mercado global de MBaaS fue valorado en más de $11 mil millones en 2023 y se proyecta un crecimiento del 27% anual hasta 2030. Según Google, Firebase sirve a más de 3 millones de aplicaciones activas en todo el mundo, procesando miles de millones de eventos de autenticación mensualmente. Investigación de AWS muestra que los equipos que usan servicios backend gestionados reducen el tiempo de desarrollo backend en un 40-60%, pero la carga de testing cambia: hay que validar listeners en tiempo real, persistencia offline, flujos de autenticación gestionada y comportamiento a nivel de SDK que el mockeo HTTP estándar no puede replicar. Esta guía cubre estrategias prácticas usando emuladores locales y tests de integración que detectan exactamente esos fallos antes de que lleguen a producción.&lt;/p&gt;</description></item><item><title>Testing de OAuth 2.0 y JWT en Aplicaciones Móviles: Refresh de Tokens, Auth Biométrica y Validación de Seguridad</title><link>https://yrkan.com/es/blog/oauth-jwt-mobile-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/oauth-jwt-mobile-testing/</guid><description>&lt;p&gt;OAuth 2.0 y JWT son los patrones dominantes para asegurar APIs móviles, pero probarlos correctamente requiere conocimiento especializado del ciclo de vida de tokens y casos extremos de seguridad. Según el OWASP API Security Top 10 2023, la autenticación y autorización rotas siguen siendo las principales vulnerabilidades en las APIs, con los fallos de implementación JWT directamente responsables de brechas de alto perfil. Según un estudio de Auth0 (ahora Okta), el 63% de las apps móviles tienen al menos una vulnerabilidad de autenticación en su código de manejo de tokens. Para los ingenieros de QA, probar flujos OAuth/JWT significa validar el ciclo de vida completo del token.&lt;/p&gt;</description></item><item><title>Testing de Policy as Code: OPA vs Sentinel en 2026</title><link>https://yrkan.com/es/blog/policy-as-code-testing-opa-sentinel/</link><pubDate>Mon, 12 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/policy-as-code-testing-opa-sentinel/</guid><description>&lt;p&gt;Policy as code transforma las reglas de cumplimiento y gobernanza de documentos en artefactos ejecutables y probables que pueden aplicarse automáticamente en toda la infraestructura. Según HashiCorp State of Cloud Strategy 2023, el 76% de las organizaciones ha experimentado violaciones de políticas de infraestructura en la nube, y revisar manualmente las políticas se cita como el principal desafío de cumplimiento. Según un estudio de Gartner, las organizaciones que usan herramientas de policy as code reducen los incidentes de violación de políticas hasta en un 60% en comparación con la aplicación manual de políticas. OPA (Open Policy Agent) y Sentinel (HashiCorp) son los dos frameworks dominantes de policy as code.&lt;/p&gt;</description></item><item><title>Testing de Políticas IAM: Validación Automatizada con Access Analyzer, Checkov y Simuladores de Políticas</title><link>https://yrkan.com/es/blog/iam-policy-testing/</link><pubDate>Tue, 20 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/iam-policy-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las políticas IAM mal configuradas son responsables del 74% de las brechas de seguridad en la nube, según el Verizon Data Breach Investigations Report 2024. Los roles excesivamente permisivos crean rutas de escalada de privilegios que los atacantes explotan. Probar políticas IAM requiere un enfoque sistemático: verificar cada permiso contra el principio de mínimo privilegio, comprobar comodines en acciones sensibles y probar escenarios de escalada como la combinación &amp;ldquo;iam:CreateRole + iam:AttachRolePolicy&amp;rdquo;. Según las AWS Security Best Practices, los equipos con testing automatizado de IAM detectan el 85% de configuraciones incorrectas de permisos en CI/CD. Esta guía cubre la estrategia completa de testing de políticas IAM para AWS, Azure y GCP.&lt;/p&gt;</description></item><item><title>Testing de Security Groups: Validación de AWS Security Groups, Azure NSGs y Reglas de Firewall de GCP</title><link>https://yrkan.com/es/blog/security-group-testing/</link><pubDate>Mon, 19 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/security-group-testing/</guid><description>&lt;p&gt;Las pruebas de grupos de seguridad son la practica de validar automaticamente las reglas de firewall en la nube para garantizar que implementen el principio de minimo privilegio y cumplan con las politicas de seguridad organizacionales. Segun el Verizon Data Breach Investigations Report 2023, la mala configuracion es la principal causa de brechas de datos en la nube, con el 21% de los incidentes involucrando recursos en la nube mal configurados, incluyendo grupos de seguridad. Segun investigaciones de Palo Alto Networks, el 65% de las organizaciones tienen al menos un activo en la nube con un grupo de seguridad demasiado permisivo. Las pruebas automatizadas con Checkov, InSpec y las capacidades de prueba integradas de Terraform previenen configuraciones incorrectas.&lt;/p&gt;</description></item><item><title>Testing de SSL/TLS</title><link>https://yrkan.com/es/course/module-10-networking/ssl-tls-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/ssl-tls-testing/</guid><description>&lt;h2 id="fundamentos-de-tls"&gt;Fundamentos de TLS &lt;a href="#fundamentos-de-tls" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Transport Layer Security (TLS) es el protocolo que pone la &amp;ldquo;S&amp;rdquo; en HTTPS. Proporciona cifrado, autenticación e integridad de datos para comunicaciones de red. Para ingenieros QA, entender TLS es esencial porque certificados mal configurados causan caídas, los headers de seguridad previenen ataques y el contenido mixto rompe la funcionalidad de páginas.&lt;/p&gt;
&lt;h3 id="tls-12-vs-tls-13"&gt;TLS 1.2 vs TLS 1.3 &lt;a href="#tls-12-vs-tls-13" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;TLS 1.2 ha sido el estándar desde 2008, pero TLS 1.3 (2018) trajo mejoras significativas:&lt;/p&gt;</description></item><item><title>Testing de Templates CloudFormation: La Pirámide de Testing para Infraestructura como Código</title><link>https://yrkan.com/es/blog/cloudformation-template-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cloudformation-template-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Aplica la pirámide de testing a CloudFormation: análisis estático rápido en la base, tests de integración lentos en la cima&lt;/li&gt;
&lt;li&gt;cfn-lint v1 detecta el 80% de los problemas en segundos; taskcat encuentra el 20% restante que solo aparece en AWS real&lt;/li&gt;
&lt;li&gt;En 2026, la IA genera templates más rápido que nunca — lo que hace el testing MÁS crítico, no menos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos que despliegan CloudFormation semanalmente o más, con 10+ templates&lt;/p&gt;</description></item><item><title>Testing de Visión por Computadora: Validando Sistemas de Reconocimiento de Imágenes</title><link>https://yrkan.com/es/blog/computer-vision-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/computer-vision-testing/</guid><description>&lt;p&gt;Testing de Visión por Computadora: Validando Sistemas de Reconocimiento de Imágenes es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, by 2025, 70% of new applications will use AI or ML, up from less than 5% in 2020 (Gartner AI Forecast). According to McKinsey&amp;rsquo;s 2024 State of AI survey, 65% of organizations now use generative AI regularly, nearly double the 2023 figure (McKinsey State of AI 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Testing de VPN</title><link>https://yrkan.com/es/course/module-10-networking/vpn-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/vpn-testing/</guid><description>&lt;h2 id="comprendiendo-vpn"&gt;Comprendiendo VPN &lt;a href="#comprendiendo-vpn" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre vpn desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden vpn pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing de WebSocket para Aplicaciones Móviles en Tiempo Real: Estabilidad de Conexión, Orden de Mensajes y Optimización de Batería</title><link>https://yrkan.com/es/blog/websocket-mobile-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/websocket-mobile-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing WebSocket en apps móviles requiere validar estabilidad de conexión, ordenamiento de mensajes, lógica de reconexión e impacto en batería. Usa Charles Proxy/mitmproxy para inspección de mensajes, simuladores de red para escenarios de fallo y servidores WebSocket mock para unit testing.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El testing de WebSocket para aplicaciones móviles presenta desafíos únicos más allá del testing típico de REST API porque las conexiones WebSocket son persistentes, bidireccionales y con estado. According to the 2024 State of Real-Time Technology survey by Ably, el 67% de las aplicaciones móviles dependen de entrega de datos en tiempo real, con WebSocket siendo el protocolo dominante. According to SmartBear&amp;rsquo;s State of API 2024, el testing WebSocket es el desafío más difícil de testing de API para el 43% de los desarrolladores móviles, principalmente por la complejidad del ciclo de vida de conexión. Los factores específicos de móvil amplían la complejidad del testing: transiciones de red entre WiFi y celular, gestión de procesos en segundo plano del OS, sistemas de optimización de batería y latencia variable. Los estudios muestran que el 78% de los fallos de WebSocket en móvil ocurren durante cambios de tipo de red, no por pérdida total de señal. Esta guía cubre estrategias de testing WebSocket en móvil: validación del ciclo de vida de conexión, tests de ordenamiento de mensajes, comportamiento de reconexión y simulación de condiciones de red.&lt;/p&gt;</description></item><item><title>Testing del Protocolo WebSocket</title><link>https://yrkan.com/es/course/module-10-networking/websocket-protocol-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/websocket-protocol-testing/</guid><description>&lt;h2 id="comprendiendo-protocolo-websocket"&gt;Comprendiendo Protocolo WebSocket &lt;a href="#comprendiendo-protocolo-websocket" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre protocolo websocket desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden protocolo websocket pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing en Agile: QA en Equipos Scrum</title><link>https://yrkan.com/es/blog/testing-in-agile/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testing-in-agile/</guid><description>&lt;p&gt;Según el DORA 2024 State of DevOps Report, los equipos élite que han integrado completamente las prácticas Agile y de testing continuo hacen deploy &lt;strong&gt;182 veces más frecuentemente&lt;/strong&gt; y se recuperan de fallas &lt;strong&gt;2,604 veces más rápido&lt;/strong&gt; que las organizaciones de bajo rendimiento. La investigación del World Quality Report 2024 encontró que los equipos que practican shift-left testing (participación de QA desde la planificación del sprint) detectan &lt;strong&gt;3 veces más defectos antes de completar la feature&lt;/strong&gt; y gastan &lt;strong&gt;40% menos tiempo en ciclos de corrección de bugs&lt;/strong&gt; comparado con equipos que testean después del desarrollo. En Scrum, el QA ya no es un guardián al final del waterfall — el modelo de QA integrado requiere que los testers participen en el refinamiento de historias, escriban criterios de aceptación, trabajen en pareja con desarrolladores en diseño de pruebas, y automaticen regresión continuamente. Las organizaciones que aún aíslan el testing en una fase dedicada después del desarrollo reportan 2.5 veces más tasas de escape de defectos según la investigación de calidad de software de Gartner 2024.&lt;/p&gt;</description></item><item><title>Testing en Jetpack Compose: Guía Completa para Pruebas de UI en Android Moderno</title><link>https://yrkan.com/es/blog/jetpack-compose-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/jetpack-compose-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El testing de Jetpack Compose usa ComposeTestRule para interactuar con árboles semánticos de UI sin el framework Android completo. Los tests de Compose son 3x más rápidos que los equivalentes de Espresso. Usa createComposeRule() para tests de componentes aislados.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Jetpack Compose se usa en el 40% de las nuevas aplicaciones Android, según JetBrains Developer Ecosystem 2024, y su infraestructura de testing representa una mejora significativa sobre Espresso. Los tests de Compose interactúan con el árbol semántico — una representación paralela del estado de UI — en lugar del hilo UI real, habilitando ejecución 3x más rápida sin emulador para tests de componentes aislados. Los equipos que adoptan testing Compose reportan 60% de reducción en mantenimiento de tests al refactorizar componentes UI. El ComposeTestRule sincroniza el wait para animaciones y recomposiciones, eliminando la inestabilidad de Espresso.&lt;/p&gt;</description></item><item><title>Testing IPv4 vs IPv6</title><link>https://yrkan.com/es/course/module-10-networking/ipv4-vs-ipv6/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/ipv4-vs-ipv6/</guid><description>&lt;h2 id="comprendiendo-ipv4-vs-ipv6"&gt;Comprendiendo IPv4 vs IPv6 &lt;a href="#comprendiendo-ipv4-vs-ipv6" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre ipv4 vs ipv6 desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden ipv4 vs ipv6 pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing Manual: Guía Completa para Ingenieros QA</title><link>https://yrkan.com/es/blog/manual-testing-tutorial-complete-guide/</link><pubDate>Thu, 29 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/manual-testing-tutorial-complete-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Testing manual usa juicio humano para encontrar bugs que la automatización no ve — problemas de usabilidad, defectos visuales, comportamientos inesperados&lt;/li&gt;
&lt;li&gt;Habilidades clave: diseño de casos de prueba, testing exploratorio, reporte de bugs, análisis de requisitos&lt;/li&gt;
&lt;li&gt;Estructura de caso de prueba: ID, título, precondiciones, pasos, resultado esperado, resultado actual&lt;/li&gt;
&lt;li&gt;Reportes de bugs necesitan: resumen, pasos para reproducir, esperado vs actual, severidad, screenshots&lt;/li&gt;
&lt;li&gt;Testing manual complementa la automatización — ambos son esenciales para la calidad&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Nuevos ingenieros QA, personas cambiando de carrera, desarrolladores aprendiendo fundamentos QA
&lt;strong&gt;Omite si:&lt;/strong&gt; Solo trabajas con pipelines automatizados y nunca tocas UI
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 18 minutos&lt;/p&gt;</description></item><item><title>Testing Móvil en 2025: iOS, Android y Más Allá</title><link>https://yrkan.com/es/blog/mobile-testing-2025-ios-android-beyond/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/mobile-testing-2025-ios-android-beyond/</guid><description>&lt;p&gt;Las pruebas móviles en 2025 han evolucionado dramáticamente más allá de los enfoques tradicionales de iOS y Android. Según el informe Statista Mobile 2024, ahora hay más de 7 mil millones de suscripciones de dispositivos móviles globalmente, y las apps móviles generan más del 65% de todo el tiempo de medios digitales. Según un estudio de App Annie, el usuario promedio de smartphone tiene 80 apps instaladas y usa 9 por día. El panorama se ha expandido para incluir dispositivos plegables, apps AR/VR, requisitos de testing 5G, características potenciadas por IA y frameworks multiplataforma como Flutter y React Native. Esta guía cubre el espectro completo del testing móvil para 2025.&lt;/p&gt;</description></item><item><title>Testing Orientado a Observabilidad: OpenTelemetry, Tracing Distribuido y Testing en Producción</title><link>https://yrkan.com/es/blog/observability-driven-testing-opentelemetry/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/observability-driven-testing-opentelemetry/</guid><description>&lt;p&gt;El testing basado en observabilidad combina la ejecución de pruebas con telemetría de nivel producción para crear un ciclo de retroalimentación entre el testing y el comportamiento del sistema. OpenTelemetry, ahora un proyecto graduado de CNCF, se ha convertido en el estándar de la industria para instrumentar aplicaciones con trazas, métricas y logs. Según la encuesta CNCF 2023, el 74% de las organizaciones está usando o evaluando OpenTelemetry — frente al 49% en 2021. Según un estudio de Honeycomb, los equipos que usan tracing distribuido en sus flujos de testing encuentran las causas raíz de los fallos un 60% más rápido. Para los ingenieros de QA, OpenTelemetry habilita un nuevo enfoque: las pruebas generan telemetría como código de producción.&lt;/p&gt;</description></item><item><title>Testing Orientado al Contexto: El Enfoque Adaptativo para la Calidad del Software</title><link>https://yrkan.com/es/blog/context-driven-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/context-driven-testing/</guid><description>&lt;p&gt;Testing Orientado al Contexto: El Enfoque Adaptativo para la Calidad del Software es una disciplina crítica en el aseguramiento de calidad de software moderno. According to NIST, software bugs cost the US economy $59.5 billion annually, with about 80% preventable through better testing (NIST Software Testing Study). According to research by Capers Jones, finding and fixing a defect after deployment costs 10-100x more than finding it during design (Capers Jones Software Engineering Best Practices). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Testing UI de iOS con XCTest: Técnicas Avanzadas y Mejores Prácticas</title><link>https://yrkan.com/es/blog/ios-xctest-ui-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ios-xctest-ui-testing/</guid><description>&lt;p&gt;XCUITest es el framework nativo de Apple para testing UI de iOS, integrado directamente en Xcode. iOS controla &lt;strong&gt;aproximadamente el 27% del mercado global de smartphones&lt;/strong&gt; (Statcounter 2024), representando una enorme responsabilidad de QA para equipos móviles. El framework XCTest de Apple es el único framework de testing que puede ejecutarse en Simuladores iOS y dispositivos físicos sin middleware de terceros — haciéndolo conocimiento esencial para cualquier ingeniero QA de iOS. Según la &lt;a href="https://developer.apple.com/library/archive/documentation/DeveloperTools/Conceptual/testing_with_xcode/"&gt;documentación de testing de Apple&lt;/a&gt;, XCUITest usa la API de Accesibilidad para interactuar con elementos UI, lo que significa que los tests son inherentemente robustos ante cambios de layout siempre que los identificadores de accesibilidad estén configurados correctamente.&lt;/p&gt;</description></item><item><title>Testing y Seguridad de Imágenes Docker: Guía Completa de Escaneo de Vulnerabilidades en Contenedores</title><link>https://yrkan.com/es/blog/docker-image-testing-and-security/</link><pubDate>Sat, 24 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/docker-image-testing-and-security/</guid><description>&lt;h2 id="tldr"&gt;TL;DR &lt;a href="#tldr" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Qué:&lt;/strong&gt; Escanear imágenes Docker buscando vulnerabilidades, errores de configuración y secretos antes del despliegue&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Por qué:&lt;/strong&gt; 87% de las imágenes de contenedores contienen al menos una vulnerabilidad de alta severidad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas:&lt;/strong&gt; Trivy (más rápido, gratuito), Snyk (mejor remediación), Grype (ligero)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Métrica clave:&lt;/strong&gt; Cero vulnerabilidades críticas/altas en imágenes de producción&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Empieza aquí:&lt;/strong&gt; Añade &lt;code&gt;trivy image tu-imagen:tag&lt;/code&gt; a tu pipeline CI hoy&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;La seguridad de contenedores no es un escaneo único — es un proceso continuo. La imagen base que escaneaste limpia hoy tendrá nuevos CVEs la próxima semana. Automatiza actualizaciones de imagen base con Dependabot y escanea cada PR.&amp;rdquo; — Yuri Kan, Senior QA Lead&lt;/p&gt;</description></item><item><title>TestNG Tutorial: Guía Completa del Framework de Testing Java</title><link>https://yrkan.com/es/blog/testng-tutorial-java-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testng-tutorial-java-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;TestNG es un poderoso framework Java con rico soporte de anotaciones&lt;/li&gt;
&lt;li&gt;Anotaciones clave: @Test, @BeforeMethod, @AfterMethod, @DataProvider&lt;/li&gt;
&lt;li&gt;Configura test suites vía testng.xml para agrupación, paralelización, parámetros&lt;/li&gt;
&lt;li&gt;Data providers habilitan data-driven testing con múltiples conjuntos de datos&lt;/li&gt;
&lt;li&gt;Integración perfecta con Selenium WebDriver para automatización de navegador&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Desarrolladores Java, automatización Selenium, frameworks de testing enterprise
&lt;strong&gt;Omite si:&lt;/strong&gt; Usas Kotlin (prefiere Kotest) o tests unitarios simples (JUnit es suficiente)
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 15 minutos&lt;/p&gt;</description></item><item><title>TestNG vs JUnit 5: Comparación Completa para Testers de Java</title><link>https://yrkan.com/es/blog/testng-vs-junit5/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testng-vs-junit5/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Elegí JUnit 5&lt;/strong&gt; para: proyectos nuevos, Spring Boot, características modernas de Java, microservicios, independencia estricta de tests&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Elegí TestNG&lt;/strong&gt; para: suites complejas con dependencias, hooks a nivel de suite, configuración XML, Selenium con ejecución paralela&lt;/li&gt;
&lt;li&gt;JUnit 5 domina las descargas de Maven Central; TestNG sigue siendo fuerte en automatización enterprise&lt;/li&gt;
&lt;li&gt;Ambos soportan ejecución paralela, tests parametrizados e integración con CI/CD&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 14 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;JUnit 5 y TestNG son los dos frameworks de testing Java dominantes, pero han divergido significativamente en filosofía y casos de uso. JUnit 5, que tuvo su release estable en 2017, se ha convertido en el framework de testing predeterminado para proyectos Spring Boot y desarrollo Java moderno — con miles de millones de descargas mensuales en Maven Central. TestNG, creado en 2004 por Cédric Beust, sigue siendo el framework elegido para automatización Selenium enterprise y suites de pruebas de integración complejas, con una fuerte audiencia en equipos que dependen de su gestión de suites basada en XML y sus características de dependencia entre tests. Según la JetBrains Developer Ecosystem Survey 2024, JUnit lo usan el 79% de los desarrolladores Java que escriben tests, mientras que TestNG representa aproximadamente el 25% — con una superposición significativa en entornos enterprise. La elección entre ellos raramente se reduce a brechas de capacidad (ambos pueden manejar la mayoría de las necesidades de testing) sino más bien al ajuste con el ecosistema, el background del equipo y las características específicas que requiere tu arquitectura de tests.&lt;/p&gt;</description></item><item><title>TestNG vs JUnit: Comparación de Frameworks Java Testing 2026</title><link>https://yrkan.com/es/blog/testng-vs-junit-comparison/</link><pubDate>Mon, 09 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testng-vs-junit-comparison/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;JUnit 5&lt;/strong&gt;: Estándar de industria para unit tests, excelente integración Spring Boot, modelo de extensiones moderno&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;TestNG&lt;/strong&gt;: Más features incorporadas para testing complejo, config XML de suites, ecosistema Selenium&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para unit tests&lt;/strong&gt;: JUnit 5 (80%+ market share, todo developer Java lo conoce)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Para Selenium/E2E&lt;/strong&gt;: TestNG (grupos, paralelo por XML, reportes incorporados) — pero JUnit 5 está alcanzando&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proyectos nuevos en 2026&lt;/strong&gt;: JUnit 5 es la opción más segura por defecto&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Diferencia clave&lt;/strong&gt;: TestNG = más features de fábrica; JUnit 5 = mejor extensibilidad y ecosistema&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Developers Java eligiendo un framework de testing
&lt;strong&gt;Omite si:&lt;/strong&gt; No usas Java (mira pytest, Jest o RSpec)&lt;/p&gt;</description></item><item><title>TestProject: Plataforma de Automatización Gratuita Impulsada por la Comunidad</title><link>https://yrkan.com/es/blog/testproject-free-automation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testproject-free-automation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; TestProject finalizó el servicio el 1 de diciembre de 2023. Si lo usabas, migra a Selenium, Playwright (web) o Appium (móvil). Este artículo cubre las características históricas de TestProject y rutas de migración para equipos que aún ejecutan setups heredados.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;TestProject fue una plataforma de automatización de testing comunitaria y gratuita que combinaba capacidades de Selenium y Appium con grabación en la nube, localizadores inteligentes de elementos y un marketplace de addons de la comunidad. En su punto máximo, TestProject tenía más de 200,000 usuarios registrados en más de 130 países, según el blog de la empresa de 2022. Según el informe SmartBear State of Software Quality 2023, más del 40% de los equipos de QA usaban TestProject como herramienta principal, y el 78% indicó que el modelo gratuito fue el factor decisivo. La plataforma ofrecía lo que las herramientas comerciales cobraban miles — completamente gratis. Según el anuncio de Tricentis, los equipos recibieron soporte para migrar a Tricentis qTest y otras alternativas. TestProject finalizó el 1 de diciembre de 2023 — según Gartner 2024, cerca del 65% eligieron Playwright o Selenium como plataforma principal. Este artículo documenta el enfoque y características de TestProject como referencia histórica, y proporciona guía de migración para equipos que construyeron automatización en la plataforma.&lt;/p&gt;</description></item><item><title>TestRail Cloud: Repositorio Centralizado de Casos de Prueba</title><link>https://yrkan.com/es/blog/testrail-cloud-test-repository/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/testrail-cloud-test-repository/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; TestRail es una plataforma web de gestión de casos de prueba para organizar tests, rastrear ejecuciones y reportar cobertura. Se integra con Jira, Selenium, Playwright y herramientas CI/CD via REST API.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;TestRail es la herramienta de gestión de casos de prueba dedicada más popular, usada por más de 3,000 empresas incluyendo Microsoft, HP y Zendesk según el sitio web de TestRail. A diferencia de rastrear tests en hojas de cálculo, TestRail proporciona repositorios estructurados, dashboards de ejecución en tiempo real y reportes integrados de cobertura. According to the World Quality Report 2024 by Capgemini, el 67% de los equipos QA que usan herramientas dedicadas reportan mejor visibilidad de releases, y el 43% destacan ciclos de testing más rápidos. According to Gartner&amp;rsquo;s 2024 Magic Quadrant, TestRail es la herramienta TCM más recomendada para equipos de 5 a 50 ingenieros. Esta guía cubre TestRail desde la configuración hasta flujos avanzados: organización, planificación de milestones, gestión de ejecuciones y reporte via API.&lt;/p&gt;</description></item><item><title>Tests Auto-Reparables: Automatización con IA que se Corrige Sola</title><link>https://yrkan.com/es/blog/self-healing-tests/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/self-healing-tests/</guid><description>&lt;p&gt;El mantenimiento de la automatización de pruebas ha sido durante mucho tiempo el talón de Aquiles de los equipos de QA. Según el World Quality Report 2024 de Capgemini, los equipos gastan en promedio el 36% de su presupuesto de QA en mantenimiento de tests—actualizaciones de localizadores, re-ejecución de tests inestables y depuración de falsos positivos causados por cambios rutinarios de UI. La automatización de tests auto-reparables cambia completamente este paradigma. Usando IA y machine learning, los tests auto-reparables detectan automáticamente cambios en la UI, adaptan localizadores al vuelo y se recuperan de fallos sin intervención humana. Los benchmarks internos de Tricentis muestran que los equipos que adoptan self-healing basado en IA reducen el trabajo no planificado de mantenimiento en un 60-70% en el primer trimestre de despliegue. En vez de romperse cuando se renombra el ID de un botón o cambia la posición de un elemento, estos frameworks prueban múltiples estrategias de respaldo—CSS, texto, huella visual, contexto DOM—y actualizan el localizador almacenado para futuras ejecuciones.&lt;/p&gt;</description></item><item><title>Thunder Client vs REST Client: Batalla de Extensiones de API Testing para VS Code</title><link>https://yrkan.com/es/blog/thunder-rest-client-vscode/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/thunder-rest-client-vscode/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Thunder Client es una extensión de VS Code para testing de API con interfaz GUI dentro del editor. REST Client usa archivos .http de texto para requests de API bajo control de versiones. Usa Thunder Client para exploración interactiva, REST Client para colaboración en equipo via Git.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las extensiones de VS Code para testing de API han cambiado fundamentalmente cómo los desarrolladores testean APIs eliminando el cambio de contexto entre IDE y herramientas externas. According to the 2024 Stack Overflow Developer Survey, VS Code es usado por el 73.6% de los desarrolladores — haciendo las extensiones de VS Code el punto de entrada más accesible para testing de API. According to SmartBear&amp;rsquo;s State of API 2024, el 58% de los desarrolladores prefieren testear APIs directamente desde su editor de código en lugar de cambiar a herramientas dedicadas. Thunder Client y REST Client representan dos filosofías distintas: Thunder Client proporciona una interfaz GUI similar a Postman dentro de VS Code con colecciones, variables de entorno y construcción visual de requests; REST Client usa archivos .http de texto plano en tu repositorio junto al código, permitiendo revisar tests de API en pull requests. Thunder Client superó los 10 millones de instalaciones en 2024. Esta guía compara ambas extensiones y cubre funciones avanzadas incluyendo gestión de entornos, assertions e integración CI/CD.&lt;/p&gt;</description></item><item><title>Trabajo QA Remoto: Mejores Prácticas y Estrategias</title><link>https://yrkan.com/es/blog/remote-qa-work-best-practices/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/remote-qa-work-best-practices/</guid><description>&lt;p&gt;El trabajo de QA remoto ha pasado de ser una acomodación temporal a una ventaja estratégica permanente para los equipos de ingeniería de calidad en todo el mundo. Según la encuesta Buffer State of Remote Work 2023, el 98% de los trabajadores remotos quieren continuar trabajando de forma remota al menos parte del tiempo, y los ingenieros de QA específicamente citan la flexibilidad y el acceso a pools de talento globales como principales beneficios. Según un estudio de Forrester Research, los equipos de QA distribuidos que implementan prácticas de comunicación asíncrona estructuradas logran un 20% mayor throughput de pruebas y un 15% mejores tasas de detección de defectos. Para los ingenieros de QA que trabajan de forma remota o gestionan equipos distribuidos, el éxito depende de cinco pilares: cultura de comunicación async-first, prácticas de documentación comprensivas, ritmos de colaboración deliberados, herramientas efectivas y construcción intencional de relaciones.&lt;/p&gt;</description></item><item><title>Transiciones de Carrera en el Campo QA</title><link>https://yrkan.com/es/blog/career-transitions-qa-field/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/career-transitions-qa-field/</guid><description>&lt;p&gt;Transiciones de Carrera en el Campo QA es una disciplina crítica en el aseguramiento de calidad de software moderno. According to the Bureau of Labor Statistics, software QA analyst positions are projected to grow 25% through 2032, much faster than average (BLS Occupational Outlook). According to Stack Overflow&amp;rsquo;s 2024 Developer Survey, the median QA engineer salary in the US is $110,000 (Stack Overflow Developer Survey 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Triaje de Bugs con IA: Priorización Inteligente de Defectos a Escala</title><link>https://yrkan.com/es/blog/ai-bug-triaging/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/ai-bug-triaging/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El triaje con IA reduce el esfuerzo manual en un 65% y logra 85-90% de precisión en clasificación de severidad vs 60-70% para humanos&lt;/li&gt;
&lt;li&gt;Comienza con TF-IDF + Random Forest (rápido, interpretable), actualiza a CodeBERT fine-tuning para mejora del 29-140%&lt;/li&gt;
&lt;li&gt;La detección de duplicados con sentence embeddings + FAISS captura el 80% de duplicados antes de que desperdicien tiempo del desarrollador&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos que procesan 100+ bugs/mes, organizaciones con requisitos de cumplimiento de SLA&lt;/p&gt;</description></item><item><title>Tricentis Tosca: Plataforma de Automatización de Pruebas Model-Based</title><link>https://yrkan.com/es/blog/tricentis-tosca-model-based/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/tricentis-tosca-model-based/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Tricentis Tosca es una plataforma enterprise de automatización de testing basada en modelos. Los tests se crean componiendo módulos de una biblioteca de objetos escaneados en lugar de escribir código. Fuerte para SAP, mainframe y entornos enterprise multi-tecnología. Alto costo de licencias.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Tricentis Tosca es una de las principales plataformas enterprise de automatización de testing, constantemente clasificada en el Gartner Magic Quadrant for Software Test Automation. A diferencia de herramientas basadas en código como Selenium o Playwright, Tosca usa model-based testing: la plataforma escanea tu aplicación para construir una biblioteca de objetos UI y API, que los testers componen en casos de prueba sin escribir código. Según Tricentis, las organizaciones que usan model-based testing reportan un 90% de reducción en el esfuerzo de mantenimiento de tests comparado con automatización basada en scripts. Esta guía cubre la arquitectura de Tosca, capacidades clave y cuándo tiene sentido sobre alternativas open-source.&lt;/p&gt;</description></item><item><title>Tutorial de Automatización de Testing: Guía Completa desde Cero hasta Experto</title><link>https://yrkan.com/es/blog/test-automation-tutorial-guide/</link><pubDate>Wed, 28 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/test-automation-tutorial-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Automatización de testing ejecuta tests automáticamente — feedback más rápido, más cobertura, menos bugs en producción&lt;/li&gt;
&lt;li&gt;Comienza con la pirámide de testing: muchos unit tests, algunos de integración, pocos E2E&lt;/li&gt;
&lt;li&gt;Primera herramienta: Playwright (web), Jest (JS), pytest (Python) — elige según tu stack&lt;/li&gt;
&lt;li&gt;Automatiza tests de regresión primero — features estables que se rompen con cambios&lt;/li&gt;
&lt;li&gt;No automatices todo — enfócate en tests de alto valor y repetibles&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Desarrolladores, ingenieros QA, cualquiera que quiera automatizar testing repetitivo
&lt;strong&gt;Omite si:&lt;/strong&gt; Estás testeando scripts de una sola vez o prototipos sin mantenimiento&lt;/p&gt;</description></item><item><title>Tutorial de Cypress: Guía Completa para Principiantes 2026</title><link>https://yrkan.com/es/blog/cypress-tutorial-complete-guide/</link><pubDate>Sat, 24 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cypress-tutorial-complete-guide/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cypress corre dentro del navegador, haciendo los tests rápidos y confiables sin WebDriver&lt;/li&gt;
&lt;li&gt;Instala con &lt;code&gt;npm install cypress --save-dev&lt;/code&gt;, luego ejecuta &lt;code&gt;npx cypress open&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Usa atributos &lt;code&gt;data-*&lt;/code&gt; para selectores — sobreviven cambios de UI&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Principiantes aprendiendo automatización, equipos testeando apps web JavaScript&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;No es para ti si:&lt;/strong&gt; Necesitas testing de apps móviles o soporte de Safari out of the box&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Cypress es un framework de testing end-to-end basado en JavaScript que corre directamente dentro del navegador, proporcionando ejecución rápida de tests y debugging en tiempo real sin dependencias externas de WebDriver. Con más de 47,000 estrellas en GitHub y 5.2 millones de descargas semanales en npm a 2026, Cypress se ha convertido en la herramienta E2E más popular para equipos frontend. Según la &lt;a href="https://stateofjs.com/"&gt;encuesta State of JS 2024&lt;/a&gt;, Cypress ocupa el puesto #1 en herramientas de testing de navegador por uso entre desarrolladores JavaScript, con una tasa de retención del 59%. A diferencia de Selenium que envía comandos por HTTP a un driver externo, Cypress se ejecuta en el mismo event loop que tu aplicación, lo que elimina la latencia de red y produce resultados más consistentes y menos flaky. Ya sea que estés escribiendo tu primer test automatizado o migrando desde otro framework, esta guía completa cubre instalación, selectores, aserciones, mocking de API, patrones Page Object, testing de componentes, integración CI/CD y las prácticas del mundo real que uso en suites Cypress de producción.&lt;/p&gt;</description></item><item><title>Tutorial de Playwright: Testing Web Moderno con TypeScript 2026</title><link>https://yrkan.com/es/blog/playwright-tutorial-web-testing/</link><pubDate>Mon, 26 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/playwright-tutorial-web-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Playwright es el framework de automatización de Microsoft — auto-wait, assertions incorporados, 3 motores&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Setup en 60 segundos:&lt;/strong&gt; &lt;code&gt;npm init playwright@latest&lt;/code&gt; crea proyecto con config, test y workflow CI&lt;/li&gt;
&lt;li&gt;TypeScript-first con soporte IDE best-in-class, generación de código y localizadores de accesibilidad&lt;/li&gt;
&lt;li&gt;Ejecución paralela gratuita de fábrica — 3-5x más rápido que Selenium o Cypress secuencial&lt;/li&gt;
&lt;li&gt;Trace Viewer + UI Mode para debugging — DOM, red, consola en cada paso del test&lt;/li&gt;
&lt;li&gt;API testing incorporado, reutilización de autenticación y regresión visual&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos que quieren herramientas modernas, TypeScript y ejecución paralela rápida
&lt;strong&gt;Omite si:&lt;/strong&gt; Necesitas Safari real en dispositivos o tienes gran infraestructura Selenium&lt;/p&gt;</description></item><item><title>Tutorial de Postman: Guía Completa de Testing de APIs para Principiantes</title><link>https://yrkan.com/es/blog/postman-tutorial-api-testing/</link><pubDate>Sun, 25 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/postman-tutorial-api-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Postman es la herramienta de testing de APIs más popular con 30M+ desarrolladores&lt;/li&gt;
&lt;li&gt;Organiza requests en Colecciones con carpetas para endpoints relacionados&lt;/li&gt;
&lt;li&gt;Usa Entornos para cambiar entre dev/staging/production sin modificar requests&lt;/li&gt;
&lt;li&gt;Escribe tests en JavaScript usando &lt;code&gt;pm.test()&lt;/code&gt; — se ejecutan después de cada request&lt;/li&gt;
&lt;li&gt;Newman CLI ejecuta colecciones en pipelines CI/CD&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; QA engineers aprendiendo testing de APIs, desarrolladores testeando sus APIs
&lt;strong&gt;Omite si:&lt;/strong&gt; Prefieres herramientas code-only (REST Assured, requests) o necesitas scripting complejo
Postman es la plataforma de APIs más utilizada en el mundo, con más de 30 millones de desarrolladores y QA engineers que confían en ella. Según el informe SmartBear State of Testing 2025, el testing de APIs ha sido adoptado por el 72% de los equipos de desarrollo, lo que convierte las habilidades de testing de APIs en unas de las más demandadas de la industria. Postman simplifica este proceso reuniendo la creación de requests, la gestión de entornos, la escritura de scripts de prueba y la automatización de CI/CD en una sola aplicación GUI. Organizas los requests relacionados en Colecciones, almacenas variables específicas por entorno para que el mismo request funcione en dev, staging y production sin editar URLs a mano, y escribes assertions en JavaScript que validan status codes, bodies y headers automáticamente tras cada llamada. Cuando necesitas ejecución headless en un pipeline, Newman — el compañero CLI de Postman — ejecuta cualquier colección exportada directamente desde la terminal. La documentación oficial en learning.postman.com/docs cubre la API completa en profundidad. Este tutorial recorre todas las capas: desde tu primer request GET hasta el testing data-driven y la integración con CI/CD usando reportes de Newman.&lt;/p&gt;</description></item><item><title>Tutorial de Selenium para Principiantes 2026: Guía Completa de WebDriver</title><link>https://yrkan.com/es/blog/selenium-tutorial-beginners/</link><pubDate>Sun, 25 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/selenium-tutorial-beginners/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Selenium WebDriver automatiza navegadores reales (Chrome, Firefox, Safari, Edge) para probar aplicaciones web&lt;/li&gt;
&lt;li&gt;Empieza con Python — sintaxis más simple, feedback más rápido para principiantes&lt;/li&gt;
&lt;li&gt;Domina localizadores (ID, CSS, XPath) y esperas explícitas antes de escribir tests complejos&lt;/li&gt;
&lt;li&gt;Usa Page Object Model desde el primer día — refactorizar después es doloroso&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; QA engineers empezando automatización de navegadores, desarrolladores escribiendo tests E2E
&lt;strong&gt;Omite si:&lt;/strong&gt; Solo necesitas testing de APIs (usa Postman) o ya conoces Playwright/Cypress&lt;/p&gt;</description></item><item><title>Tutorial de Testing de Software para Principiantes: Guía Completa de Fundamentos QA</title><link>https://yrkan.com/es/blog/software-testing-tutorial-beginners/</link><pubDate>Mon, 26 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/software-testing-tutorial-beginners/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El testing de software verifica que el software funciona como se espera y cumple necesidades del usuario&lt;/li&gt;
&lt;li&gt;Tipos de testing: funcional, no funcional, manual, automatizado, caja negra, caja blanca&lt;/li&gt;
&lt;li&gt;Diseño de casos de prueba: partición de equivalencia, análisis de valores límite, tablas de decisión&lt;/li&gt;
&lt;li&gt;STLC (Software Testing Life Cycle): requisitos → planificación → diseño → ejecución → reportes&lt;/li&gt;
&lt;li&gt;No se necesita código para empezar — testing manual es una carrera válida&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Personas considerando carrera en QA, desarrolladores queriendo entender testing, project managers
&lt;strong&gt;Omite si:&lt;/strong&gt; Ya eres tester practicante buscando técnicas avanzadas
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;</description></item><item><title>Validación de Etiquetas en Recursos Cloud: Pruebas Automatizadas de Cumplimiento</title><link>https://yrkan.com/es/blog/cloud-resource-tagging-validation/</link><pubDate>Fri, 23 Jan 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/cloud-resource-tagging-validation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos FinOps, Arquitectos Cloud, Ingenieros DevOps gestionando asignación de costos multi-cloud&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Omitir si:&lt;/strong&gt; Tienes menos de 50 recursos cloud o no tienes requisitos de asignación de costos&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 12 minutos&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Validación de Etiquetas en Recursos Cloud: Pruebas Automatizadas de Cumplimiento es una disciplina crítica en el aseguramiento de calidad de software moderno. According to Gartner, worldwide cloud spending will exceed $1 trillion by 2025, making cloud testing skills essential (Gartner Cloud Forecast). According to HashiCorp&amp;rsquo;s 2024 State of Cloud Strategy survey, 78% of organizations use a multi-cloud strategy (HashiCorp State of Cloud 2024). Esta guía cubre enfoques prácticos que los equipos de QA pueden aplicar de inmediato: desde conceptos básicos y herramientas hasta patrones de implementación del mundo real. Ya sea que estés desarrollando habilidades en esta área o mejorando un proceso existente, encontrarás técnicas accionables respaldadas por experiencia de la industria. El objetivo no es solo la comprensión teórica, sino un framework funcional que puedas adaptar al contexto de tu equipo, stack tecnológico y objetivos de calidad.&lt;/p&gt;</description></item><item><title>Verificación vs Validación: V&amp;V en Pruebas de Software</title><link>https://yrkan.com/es/blog/verification-vs-validation/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/verification-vs-validation/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Verificación&lt;/strong&gt;: Estática — &amp;ldquo;¿Lo estamos construyendo correctamente?&amp;rdquo; — revisiones, inspecciones, análisis de código&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Validación&lt;/strong&gt;: Dinámica — &amp;ldquo;¿Estamos construyendo lo correcto?&amp;rdquo; — testing, UAT, beta testing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Modelo V&lt;/strong&gt;: Verificación a la izquierda (requisitos → diseño → código); validación a la derecha (unidad → integración → aceptación)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conclusión clave&lt;/strong&gt;: La verificación detecta violaciones de especificaciones temprano y barato; la validación detecta brechas de necesidades de usuario más tarde&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Definición ISTQB&lt;/strong&gt;: Ambas son necesarias para la calidad — ninguna reemplaza a la otra&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Profesionales QA y developers aprendiendo conceptos fundamentales de aseguramiento de calidad&lt;/p&gt;</description></item><item><title>Visual AI Testing: Comparación Inteligente de UI</title><link>https://yrkan.com/es/blog/visual-ai-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/visual-ai-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; El visual AI testing detecta regresiones de UI que los tests funcionales pasan por alto — shifts de layout, colores incorrectos, fuentes rotas. Usa Applitools Eyes o Percy para comparación de screenshots con IA que reduce falsos positivos. Integra en CI/CD para detección automática de regresiones visuales.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El visual AI testing aborda una brecha crítica en el testing automatizado: los tests funcionales pueden pasar mientras la UI se ve completamente rota. Según una encuesta de Applitools 2024, el 85% de los bugs visuales son ignorados por los tests funcionales automatizados tradicionales porque solo verifican comportamiento, no apariencia. Un botón de login puede responder a clics perfectamente mientras es invisible debido a un fallo de contraste de color — solo el visual testing detecta esto. Las herramientas modernas de visual AI usan machine learning para comparar screenshots inteligentemente: distinguiendo entre una regresión real de layout y una diferencia de timing de animación. Esta guía cubre fundamentos de visual AI testing, selección de herramientas (Applitools, Percy, screenshot testing de Playwright), gestión de baselines e integración CI/CD.&lt;/p&gt;</description></item><item><title>WebdriverIO Tutorial: Guía Completa de Automatización con Node.js</title><link>https://yrkan.com/es/blog/webdriverio-tutorial-nodejs/</link><pubDate>Mon, 02 Feb 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/webdriverio-tutorial-nodejs/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;WebdriverIO envuelve Selenium WebDriver con sintaxis moderna async/await de Node.js&lt;/li&gt;
&lt;li&gt;Configuración vía &lt;code&gt;wdio.conf.js&lt;/code&gt; — soporta Mocha, Jasmine, Cucumber out of the box&lt;/li&gt;
&lt;li&gt;Selectores: &lt;code&gt;$('selector')&lt;/code&gt; para uno, &lt;code&gt;$$('selector')&lt;/code&gt; para múltiples elementos&lt;/li&gt;
&lt;li&gt;Esperas integradas, reintentos y poderosa librería de assertions&lt;/li&gt;
&lt;li&gt;Soporte first-class de TypeScript y excelente integración con VS Code&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos Node.js que quieren testing basado en Selenium con JavaScript moderno
&lt;strong&gt;Omite si:&lt;/strong&gt; Prefieres la velocidad de Playwright o la experiencia de debugging de Cypress
&lt;strong&gt;Tiempo de lectura:&lt;/strong&gt; 15 minutos&lt;/p&gt;</description></item><item><title>WebdriverIO: Extensibilidad, Multiremote y Guía de Migración 2026</title><link>https://yrkan.com/es/blog/webdriverio-extensibility-multiremote-migration/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/webdriverio-extensibility-multiremote-migration/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;WebdriverIO extiende WebDriver con esperas automáticas, selectores &lt;code&gt;$()&lt;/code&gt; y test runner integrado&lt;/li&gt;
&lt;li&gt;Multiremote controla múltiples navegadores simultáneamente — prueba apps de chat, edición colaborativa, features en tiempo real&lt;/li&gt;
&lt;li&gt;Migración desde Selenium: reemplaza &lt;code&gt;findElement(By.css())&lt;/code&gt; por &lt;code&gt;$()&lt;/code&gt;, elimina waits explícitos, usa archivo de configuración en lugar de setup programático&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Ideal para:&lt;/strong&gt; Equipos JavaScript/TypeScript que quieren DX moderno con compatibilidad WebDriver
&lt;strong&gt;No recomendado si:&lt;/strong&gt; Necesitas soporte multi-lenguaje o tu equipo ya es productivo con Selenium&lt;/p&gt;</description></item><item><title>WebSocket Performance Testing: Comunicación Tiempo Real a Escala</title><link>https://yrkan.com/es/blog/websocket-performance-testing/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/websocket-performance-testing/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Las pruebas de rendimiento WebSocket requieren herramientas especializadas como Artillery y k6 para simular conexiones persistentes simultáneas. Métricas clave: tiempo de conexión, latencia de mensajes, throughput (MPS) y límites de conexiones concurrentes. Escala horizontalmente con Redis/RabbitMQ.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Las pruebas de rendimiento de WebSocket son una disciplina especializada que aborda los desafíos únicos de los protocolos de conexión persistente y full-duplex. A diferencia de los ciclos de solicitud-respuesta HTTP, las conexiones WebSocket son de larga duración y bidireccionales. According to Gorilla/WebSocket benchmark, una sola instancia de servidor puede manejar 100.000 conexiones WebSocket simultáneas usando menos de 64 MB de memoria con configuración optimizada. According to Ably&amp;rsquo;s 2024 Real-Time Developer Survey, el 78% de los equipos reporta que la latencia WebSocket impacta directamente la retención de usuarios en aplicaciones de chat, gaming y dashboards en vivo. According to SmartBear&amp;rsquo;s State of API 2024, el testing de carga WebSocket es el mayor desafío de rendimiento para el 41% de los ingenieros backend, principalmente por la complejidad del estado en conexiones persistentes. Probar el rendimiento WebSocket requiere medir el tiempo de establecimiento de conexión, throughput de mensajes, latencia round-trip, escalabilidad de conexiones simultáneas y comportamiento de reconexión bajo fallos.&lt;/p&gt;</description></item><item><title>Wireshark para QA</title><link>https://yrkan.com/es/course/module-10-networking/wireshark-for-qa/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-10-networking/wireshark-for-qa/</guid><description>&lt;h2 id="comprendiendo-wireshark"&gt;Comprendiendo Wireshark &lt;a href="#comprendiendo-wireshark" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección cubre wireshark desde la perspectiva de ingeniería QA. Estos conceptos te ayudan a diagnosticar problemas más rápido y comunicarte efectivamente con equipos de red y DevOps.&lt;/p&gt;
&lt;h3 id="por-qué-importa-para-qa"&gt;Por Qué Importa para QA &lt;a href="#por-qu%c3%a9-importa-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los problemas de red representan una porción significativa de bugs difíciles de reproducir. Los ingenieros QA que entienden wireshark pueden identificar causas raíz en lugar de marcar bugs como &amp;ldquo;no se puede reproducir.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Zebrunner: Plataforma de Reporting y Analítica de Automatización de Pruebas</title><link>https://yrkan.com/es/blog/zebrunner-test-reporting-analytics/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/blog/zebrunner-test-reporting-analytics/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; Zebrunner es una plataforma empresarial de reporting de test automation que convierte el ruido de ejecución en señales de calidad accionables mediante análisis ML y dashboards en tiempo real. Se integra con Selenium, Appium, Playwright, Cypress, Jenkins y GitHub Actions. Ideal para equipos con 1.000+ tests automatizados.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Zebrunner es una plataforma moderna de reporting y analíticas de test automation diseñada específicamente para equipos de ingeniería que gestionan suites de pruebas automatizadas a gran escala. A medida que las suites crecen a miles de ejecuciones en múltiples navegadores, dispositivos y entornos, las herramientas de reporting tradicionales crean más ruido que señal. Zebrunner aborda esto mediante análisis de fallos con ML, dashboards de ejecución en tiempo real y seguimiento inteligente de estabilidad de tests. According to Capgemini World Quality Report 2023, el 44% de los equipos QA reporta que el análisis ineficiente de resultados de tests es el principal obstáculo para aumentar el ROI de la automatización. According to Zebrunner customer case studies, la plataforma reduce el tiempo de triage en un 60–70% comparado con el análisis manual de logs. Zebrunner soporta Selenium, Appium, Playwright, Cypress, TestNG, JUnit y pytest.&lt;/p&gt;</description></item><item><title>Actualización Flyway 12.1.1: Correcciones Clave y QA</title><link>https://yrkan.com/es/tools-updates/flyway-flyway-12-1-whats-new/</link><pubDate>Sat, 21 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/flyway-flyway-12-1-whats-new/</guid><description>&lt;h2 id="actualización-flyway-1211-correcciones-clave-y-qa"&gt;Actualización Flyway 12.1.1: Correcciones Clave y QA &lt;a href="#actualizaci%c3%b3n-flyway-1211-correcciones-clave-y-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Flyway, la reconocida herramienta de migración de bases de datos, ha lanzado la versión 12.1.1. Esta actualización de parche, posterior a la 12.1.0, se centra en la estabilidad y el refinamiento en lugar de nuevas funcionalidades. Aborda varios problemas reportados e incluye mejoras menores para optimizar la fiabilidad general. Para obtener detalles completos, consulte las &lt;a href="https://documentation.red-gate.com/flyway/release-notes-and-older-versions/release-notes-for-flyway-engine"&gt;notas de lanzamiento oficiales&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Fixes:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Appium para Automatizacion Movil</title><link>https://yrkan.com/es/course/module-08-automation/appium/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/appium/</guid><description>&lt;h2 id="que-es-appium"&gt;Que Es Appium? &lt;a href="#que-es-appium" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Appium es un framework de automatizacion movil de codigo abierto que te permite escribir tests para aplicaciones Android e iOS usando el protocolo estandar WebDriver. La filosofia clave detras de Appium es que no deberias necesitar recompilar tu app o modificarla de ninguna manera para automatizarla, y deberias poder escribir tests en cualquier lenguaje de programacion.&lt;/p&gt;
&lt;p&gt;Appium actua como un servidor que recibe comandos WebDriver de tu codigo de test y los traduce en acciones de automatizacion especificas de la plataforma. Para Android, usa UIAutomator2 o Espresso como motor de automatizacion subyacente. Para iOS, usa XCUITest. Esta capa de abstraccion es lo que hace a Appium multiplataforma — tu codigo de test llama la misma API WebDriver sin importar la plataforma objetivo.&lt;/p&gt;</description></item><item><title>Aserciones y Matchers Personalizados</title><link>https://yrkan.com/es/course/module-08-automation/custom-assertions-matchers/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/custom-assertions-matchers/</guid><description>&lt;h2 id="por-que-aserciones-personalizadas"&gt;Por Que Aserciones Personalizadas? &lt;a href="#por-que-aserciones-personalizadas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aserciones incorporadas son genericas. &lt;code&gt;assertEquals(expected, actual)&lt;/code&gt; funciona para cualquier comparacion, pero el mensaje de falla carece de contexto. Las aserciones personalizadas agregan contexto de dominio: &lt;code&gt;assertThat(user).isActive()&lt;/code&gt; produce: &lt;code&gt;Expected user &amp;quot;alice@example.com&amp;quot; to be active, but status was SUSPENDED&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="construyendo-aserciones-personalizadas-en-java"&gt;Construyendo Aserciones Personalizadas en Java &lt;a href="#construyendo-aserciones-personalizadas-en-java" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="assertj-custom-assertions"&gt;AssertJ Custom Assertions &lt;a href="#assertj-custom-assertions" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-java" data-lang="java"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;public&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;class&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;UserAssert&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;extends&lt;/span&gt; AbstractAssert&lt;span style="color:#f92672"&gt;&amp;lt;&lt;/span&gt;UserAssert, User&lt;span style="color:#f92672"&gt;&amp;gt;&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;public&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;UserAssert&lt;/span&gt;(User actual) { &lt;span style="color:#66d9ef"&gt;super&lt;/span&gt;(actual, UserAssert.&lt;span style="color:#a6e22e"&gt;class&lt;/span&gt;); }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;public&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;static&lt;/span&gt; UserAssert &lt;span style="color:#a6e22e"&gt;assertThat&lt;/span&gt;(User user) { &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;new&lt;/span&gt; UserAssert(user); }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;public&lt;/span&gt; UserAssert &lt;span style="color:#a6e22e"&gt;isActive&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; isNotNull();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (&lt;span style="color:#f92672"&gt;!&lt;/span&gt;actual.&lt;span style="color:#a6e22e"&gt;isActive&lt;/span&gt;()) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; failWithMessage(&lt;span style="color:#e6db74"&gt;&amp;#34;Expected user &amp;lt;%s&amp;gt; to be active but status was &amp;lt;%s&amp;gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; actual.&lt;span style="color:#a6e22e"&gt;getEmail&lt;/span&gt;(), actual.&lt;span style="color:#a6e22e"&gt;getStatus&lt;/span&gt;());
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;this&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;public&lt;/span&gt; UserAssert &lt;span style="color:#a6e22e"&gt;hasRole&lt;/span&gt;(String role) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; isNotNull();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (&lt;span style="color:#f92672"&gt;!&lt;/span&gt;actual.&lt;span style="color:#a6e22e"&gt;getRole&lt;/span&gt;().&lt;span style="color:#a6e22e"&gt;equals&lt;/span&gt;(role)) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; failWithMessage(&lt;span style="color:#e6db74"&gt;&amp;#34;Expected user &amp;lt;%s&amp;gt; to have role &amp;lt;%s&amp;gt; but had &amp;lt;%s&amp;gt;&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; actual.&lt;span style="color:#a6e22e"&gt;getEmail&lt;/span&gt;(), role, actual.&lt;span style="color:#a6e22e"&gt;getRole&lt;/span&gt;());
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;this&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// Se lee como una especificacion&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;UserAssert.&lt;span style="color:#a6e22e"&gt;assertThat&lt;/span&gt;(user).&lt;span style="color:#a6e22e"&gt;isActive&lt;/span&gt;().&lt;span style="color:#a6e22e"&gt;hasRole&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;admin&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="aserciones-personalizadas-en-javascript"&gt;Aserciones Personalizadas en JavaScript &lt;a href="#aserciones-personalizadas-en-javascript" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="playwright-custom-matchers"&gt;Playwright Custom Matchers &lt;a href="#playwright-custom-matchers" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;extend&lt;/span&gt;({
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;toBeLoggedIn&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;isLoggedIn&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.user-menu&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;isVisible&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pass&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;isLoggedIn&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;message&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; () =&amp;gt; &lt;span style="color:#a6e22e"&gt;isLoggedIn&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;?&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;No se esperaba que la pagina estuviera logueada&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;Se esperaba que la pagina estuviera logueada, pero no se encontro el menu de usuario&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; };
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;toBeLoggedIn&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="soft-assertions"&gt;Soft Assertions &lt;a href="#soft-assertions" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aserciones estandar detienen la ejecucion en la primera falla. Las soft assertions recolectan todas las fallas y las reportan al final.&lt;/p&gt;</description></item><item><title>Automatizacion de API con REST Assured</title><link>https://yrkan.com/es/course/module-08-automation/api-automation-rest-assured/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/api-automation-rest-assured/</guid><description>&lt;h2 id="que-es-rest-assured"&gt;Que Es REST Assured? &lt;a href="#que-es-rest-assured" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;REST Assured es una biblioteca Java que simplifica el testing de APIs RESTful. Proporciona un lenguaje de dominio especifico (DSL) construido sobre un patron Given-When-Then que hace que los tests de API se lean como especificaciones en lenguaje natural. En lugar de construir manualmente peticiones HTTP, parsear respuestas y escribir aserciones complejas, REST Assured maneja estas operaciones con una API fluida y encadenable.&lt;/p&gt;
&lt;p&gt;REST Assured es la biblioteca de testing de API mas popular en el ecosistema Java, usada por miles de organizaciones para validacion automatizada de APIs. Se integra perfectamente con JUnit, TestNG, Maven, Gradle y pipelines de CI/CD.&lt;/p&gt;</description></item><item><title>BDD con Cucumber y Gherkin</title><link>https://yrkan.com/es/course/module-08-automation/bdd-cucumber-gherkin/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/bdd-cucumber-gherkin/</guid><description>&lt;h2 id="que-es-bdd"&gt;Que Es BDD? &lt;a href="#que-es-bdd" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Behavior-Driven Development (BDD) es una practica de colaboracion que cierra la brecha entre stakeholders de negocio, desarrolladores y testers. Usa un lenguaje natural estructurado llamado &lt;strong&gt;Gherkin&lt;/strong&gt; para describir el comportamiento esperado del sistema.&lt;/p&gt;
&lt;p&gt;La idea central: definir &lt;strong&gt;que&lt;/strong&gt; debe hacer el sistema (comportamiento) antes de implementar &lt;strong&gt;como&lt;/strong&gt; lo hace (codigo).&lt;/p&gt;
&lt;h2 id="sintaxis-gherkin"&gt;Sintaxis Gherkin &lt;a href="#sintaxis-gherkin" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Gherkin usa tres keywords principales para estructurar escenarios:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Given&lt;/strong&gt; — la precondicion (estado inicial)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;When&lt;/strong&gt; — la accion (lo que hace el usuario)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Then&lt;/strong&gt; — el resultado esperado (lo que deberia pasar)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="ejemplo-de-feature-file"&gt;Ejemplo de Feature File &lt;a href="#ejemplo-de-feature-file" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-gherkin" data-lang="gherkin"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# features/login.feature&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;Feature:&lt;/span&gt;&lt;span style="color:#a6e22e"&gt; Login de Usuario
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; Como usuario registrado
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; Quiero hacer login en mi cuenta
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; Para poder acceder a mi dashboard
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;Scenario:&lt;/span&gt;&lt;span style="color:#a6e22e"&gt; Login exitoso con credenciales validas
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; Given &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;estoy en la pagina de login
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;When &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;ingreso &amp;#34;&lt;/span&gt;&lt;span style="color:#e6db74"&gt;admin@test.com&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;&amp;#34; como email
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;ingreso &amp;#34;&lt;/span&gt;&lt;span style="color:#e6db74"&gt;secret123&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;&amp;#34; como password
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;hago click en el boton de login
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;Then &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;deberia ser redirigido al dashboard
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;deberia ver &amp;#34;&lt;/span&gt;&lt;span style="color:#e6db74"&gt;Bienvenido, Admin&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;&amp;#34; como saludo
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;Scenario:&lt;/span&gt;&lt;span style="color:#a6e22e"&gt; Login fallido con password incorrecto
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; Given &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;estoy en la pagina de login
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;When &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;ingreso &amp;#34;&lt;/span&gt;&lt;span style="color:#e6db74"&gt;admin@test.com&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;&amp;#34; como email
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;ingreso &amp;#34;&lt;/span&gt;&lt;span style="color:#e6db74"&gt;wrongpassword&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;&amp;#34; como password
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;hago click en el boton de login
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;Then &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;deberia ver un mensaje de error &amp;#34;&lt;/span&gt;&lt;span style="color:#e6db74"&gt;Credenciales invalidas&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;deberia permanecer en la pagina de login
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="scenario-outline-bdd-data-driven"&gt;Scenario Outline (BDD Data-Driven) &lt;a href="#scenario-outline-bdd-data-driven" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-gherkin" data-lang="gherkin"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;Scenario Outline:&lt;/span&gt;&lt;span style="color:#a6e22e"&gt; Login con varias credenciales
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; Given &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;estoy en la pagina de login
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;When &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;ingreso &amp;#34;&lt;/span&gt;&amp;lt;email&amp;gt;&lt;span style="color:#a6e22e"&gt;&amp;#34; como email
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;ingreso &amp;#34;&lt;/span&gt;&amp;lt;password&amp;gt;&lt;span style="color:#a6e22e"&gt;&amp;#34; como password
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;hago click en el boton de login
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;Then &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;deberia ver &amp;#34;&lt;/span&gt;&amp;lt;resultado&amp;gt;&lt;span style="color:#a6e22e"&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;Examples:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt; email&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt; password&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt; resultado&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; admin@test.com&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; secret123&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; Bienvenido, Admin&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; editor@test.com&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; pass456&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; Bienvenido, Editor&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; wrong@test.com&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; wrong&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; Credenciales invalidas&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;|
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt; | |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; secret123&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |&lt;/span&gt;&lt;span style="color:#e6db74"&gt; Email es requerido&lt;/span&gt;&lt;span style="color:#66d9ef"&gt; |
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="step-definitions"&gt;Step Definitions &lt;a href="#step-definitions" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los step definitions conectan pasos Gherkin con codigo de automatizacion:&lt;/p&gt;</description></item><item><title>Calculo de ROI de Automatizacion</title><link>https://yrkan.com/es/course/module-08-automation/calculo-roi-automatizacion/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/calculo-roi-automatizacion/</guid><description>&lt;h2 id="por-que-el-roi-importa-para-la-automatizacion"&gt;Por Que el ROI Importa para la Automatizacion &lt;a href="#por-que-el-roi-importa-para-la-automatizacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La automatizacion de testing requiere una inversion significativa — herramientas, capacitacion, tiempo de desarrollo y mantenimiento continuo. Sin un analisis de ROI claro, los proyectos de automatizacion corren riesgo de perder financiamiento, apoyo de stakeholders o ser abandonados a mitad de camino.&lt;/p&gt;
&lt;p&gt;Un calculo solido de ROI te ayuda a responder la pregunta que todo gerente hara: &lt;strong&gt;&amp;ldquo;Cuanto dinero nos ahorrara esto, y cuando?&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Capturas y Video como Evidencia</title><link>https://yrkan.com/es/course/module-08-automation/screenshots-video-evidence/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/screenshots-video-evidence/</guid><description>&lt;h2 id="por-que-capturar-evidencia-visual"&gt;Por Que Capturar Evidencia Visual? &lt;a href="#por-que-capturar-evidencia-visual" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cuando un test falla, la pregunta mas comun es &amp;ldquo;como se veia la pantalla cuando fallo?&amp;rdquo; Un stack trace te dice que asercion fallo, pero un screenshot muestra el estado real de la aplicacion en ese momento. La grabacion de video va mas alla — muestra toda la secuencia de eventos que llevaron a la falla.&lt;/p&gt;
&lt;h2 id="captura-de-screenshots"&gt;Captura de Screenshots &lt;a href="#captura-de-screenshots" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="playwright"&gt;Playwright &lt;a href="#playwright" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;export&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;default&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;defineConfig&lt;/span&gt;({
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;only-on-failure&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;flujo de checkout&amp;#39;&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; ({ &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt; }) =&amp;gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#66d9ef"&gt;goto&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;/cart&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;path&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;screenshots/cart.png&amp;#39;&lt;/span&gt; });
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#checkout&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;path&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;screenshots/checkout.png&amp;#39;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;fullPage&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;true&lt;/span&gt; });
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="cypress"&gt;Cypress &lt;a href="#cypress" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;module&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;exports&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;defineConfig&lt;/span&gt;({
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;screenshotOnRunFailure&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;true&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;screenshotsFolder&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;cypress/screenshots&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;cy&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;pagina-carrito&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;cy&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;get&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.header&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;componente-header&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="selenium"&gt;Selenium &lt;a href="#selenium" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-java" data-lang="java"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;File screenshot &lt;span style="color:#f92672"&gt;=&lt;/span&gt; ((TakesScreenshot) driver).&lt;span style="color:#a6e22e"&gt;getScreenshotAs&lt;/span&gt;(OutputType.&lt;span style="color:#a6e22e"&gt;FILE&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;FileUtils.&lt;span style="color:#a6e22e"&gt;copyFile&lt;/span&gt;(screenshot, &lt;span style="color:#66d9ef"&gt;new&lt;/span&gt; File(&lt;span style="color:#e6db74"&gt;&amp;#34;screenshots/failure.png&amp;#34;&lt;/span&gt;));
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="grabacion-de-video"&gt;Grabacion de Video &lt;a href="#grabacion-de-video" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="playwright-1"&gt;Playwright &lt;a href="#playwright-1" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;export&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;default&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;defineConfig&lt;/span&gt;({
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;video&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;retain-on-failure&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="cypress-1"&gt;Cypress &lt;a href="#cypress-1" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;module&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;exports&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;defineConfig&lt;/span&gt;({
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;video&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;true&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;videoCompression&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;32&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;videosFolder&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;cypress/videos&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="playwright-trace-viewer"&gt;Playwright Trace Viewer &lt;a href="#playwright-trace-viewer" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;trace&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;on-first-retry&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// npx playwright show-trace test-results/trace.zip
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="integracion-cicd"&gt;Integracion CI/CD &lt;a href="#integracion-cicd" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="github-actions-artifacts"&gt;GitHub Actions Artifacts &lt;a href="#github-actions-artifacts" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;- &lt;span style="color:#f92672"&gt;name&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;Ejecutar tests de Playwright&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;run&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;npx playwright test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;continue-on-error&lt;/span&gt;: &lt;span style="color:#66d9ef"&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;- &lt;span style="color:#f92672"&gt;name&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;Subir artifacts de test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;uses&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;actions/upload-artifact@v4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;if&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;always()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;with&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;name&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;evidencia-test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;path&lt;/span&gt;: |&lt;span style="color:#e6db74"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; test-results/
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; playwright-report/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;retention-days&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;30&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="evidencia-a-nivel-de-paso"&gt;Evidencia a Nivel de Paso &lt;a href="#evidencia-a-nivel-de-paso" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;flujo de compra completa&amp;#39;&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; ({ &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt; }) =&amp;gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#66d9ef"&gt;goto&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;/products&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;path&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;evidence/01-pagina-productos.png&amp;#39;&lt;/span&gt; });
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;[data-testid=&amp;#34;add-to-cart&amp;#34;]&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;path&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;evidence/02-agregado-al-carrito.png&amp;#39;&lt;/span&gt; });
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#66d9ef"&gt;goto&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;/cart&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;path&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;evidence/03-pagina-carrito.png&amp;#39;&lt;/span&gt; });
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#checkout&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;path&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;evidence/04-formulario-pago.png&amp;#39;&lt;/span&gt; });
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#submit-payment&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.confirmation&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toBeVisible&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;path&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;evidence/05-confirmacion.png&amp;#39;&lt;/span&gt; });
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="mejores-practicas"&gt;Mejores Practicas &lt;a href="#mejores-practicas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Siempre capturar en falla&lt;/strong&gt; — requisito minimo&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Capturar pagina completa&lt;/strong&gt; — screenshots parciales pierden contexto&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Nombres descriptivos&lt;/strong&gt; — incluir nombre de test, paso y timestamp&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Politicas de retencion&lt;/strong&gt; — 30 dias es tipico&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Comprimir videos&lt;/strong&gt; — balance entre calidad y tamano&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Usar Playwright traces&lt;/strong&gt; — proporcionan datos de depuracion mas ricos que solo video&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="ejercicios"&gt;Ejercicios &lt;a href="#ejercicios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="ejercicio-1-estrategia-de-screenshots"&gt;Ejercicio 1: Estrategia de Screenshots &lt;a href="#ejercicio-1-estrategia-de-screenshots" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Configura screenshots automaticos en falla y pasos clave. Ejecuta tests, revisa evidencia.&lt;/p&gt;</description></item><item><title>Conceptos de POO para QA</title><link>https://yrkan.com/es/course/module-08-automation/conceptos-poo-qa/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/conceptos-poo-qa/</guid><description>&lt;h2 id="por-que-poo-importa-para-la-automatizacion"&gt;Por Que POO Importa para la Automatizacion &lt;a href="#por-que-poo-importa-para-la-automatizacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La Programacion Orientada a Objetos no es solo un concepto academico — es la base de la automatizacion mantenible. Sin POO, los suites de tests crecen como scripts desestructurados imposibles de mantener a escala.&lt;/p&gt;
&lt;p&gt;Entender POO te ayuda a escribir codigo de test organizado, reutilizable y facil de modificar cuando la aplicacion cambia.&lt;/p&gt;
&lt;h2 id="los-cuatro-principios-de-poo"&gt;Los Cuatro Principios de POO &lt;a href="#los-cuatro-principios-de-poo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-encapsulamiento"&gt;1. Encapsulamiento &lt;a href="#1-encapsulamiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Encapsulamiento significa agrupar datos y metodos en una clase, ocultando detalles internos y exponiendo solo lo necesario.&lt;/p&gt;</description></item><item><title>Cuando Automatizar</title><link>https://yrkan.com/es/course/module-08-automation/cuando-automatizar/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/cuando-automatizar/</guid><description>&lt;h2 id="la-decision-de-automatizar"&gt;La Decision de Automatizar &lt;a href="#la-decision-de-automatizar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La automatizacion de testing no es un objetivo en si mismo — es una herramienta para lograr feedback mas rapido, mayor cobertura y testing de regresion mas confiable. La habilidad critica es saber &lt;strong&gt;cuando&lt;/strong&gt; la automatizacion agrega valor y cuando no.&lt;/p&gt;
&lt;p&gt;Muchos equipos cometen el error de intentar automatizar todo o automatizar demasiado tarde. Ambos extremos desperdician recursos. Esta leccion te da un framework practico para tomar decisiones inteligentes de automatizacion.&lt;/p&gt;</description></item><item><title>Cypress</title><link>https://yrkan.com/es/course/module-08-automation/cypress/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/cypress/</guid><description>&lt;h2 id="que-es-cypress"&gt;Que Es Cypress? &lt;a href="#que-es-cypress" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cypress es un framework moderno de testing end-to-end construido especificamente para la web. A diferencia de Selenium, que se comunica con los navegadores a traves de un driver externo, Cypress se ejecuta directamente dentro del navegador. Esta diferencia arquitectonica es fundamental — significa que Cypress tiene acceso nativo a todo lo que sucede en la aplicacion: elementos del DOM, peticiones de red, timers, almacenamiento local e incluso los objetos JavaScript de la aplicacion.&lt;/p&gt;</description></item><item><title>Cypress v15.12.0: Word Wrap en Studio, Parches de Seguridad y Correcciones</title><link>https://yrkan.com/es/tools-updates/cypress-v15-12-whats-new/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/cypress-v15-12-whats-new/</guid><description>&lt;h1 id="cypress-v15120-word-wrap-en-studio-parches-de-seguridad-y-correcciones"&gt;Cypress v15.12.0: Word Wrap en Studio, Parches de Seguridad y Correcciones &lt;a href="#cypress-v15120-word-wrap-en-studio-parches-de-seguridad-y-correcciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;h2 id="cambios-principales"&gt;Cambios Principales &lt;a href="#cambios-principales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cypress v15.12.0, lanzado el 13 de marzo de 2026, es una versión de mantenimiento enfocada en mejoras de estabilidad, experiencia de desarrollo y parches de seguridad críticos.&lt;/p&gt;
&lt;h3 id="nueva-función-word-wrap-en-studio"&gt;Nueva Función: Word Wrap en Studio &lt;a href="#nueva-funci%c3%b3n-word-wrap-en-studio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;El panel Studio ahora soporta word wrap para el código mostrado. Esta mejora facilita la lectura de selectores largos, assertions y cadenas de comandos sin necesidad de scroll horizontal.&lt;/p&gt;</description></item><item><title>Evaluacion del Modulo 8</title><link>https://yrkan.com/es/course/module-08-automation/module-8-assessment/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/module-8-assessment/</guid><description>&lt;h2 id="resumen-de-la-evaluacion"&gt;Resumen de la Evaluacion &lt;a href="#resumen-de-la-evaluacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicitaciones por llegar al final del Modulo 8: Automatizacion de Testing. Esta evaluacion prueba tu comprension de todos los temas cubiertos en las lecciones 8.1 a 8.29.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Parte&lt;/th&gt;
 &lt;th&gt;Formato&lt;/th&gt;
 &lt;th&gt;Preguntas&lt;/th&gt;
 &lt;th&gt;Tiempo Estimado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 1&lt;/td&gt;
 &lt;td&gt;Quiz de seleccion multiple&lt;/td&gt;
 &lt;td&gt;10 preguntas&lt;/td&gt;
 &lt;td&gt;10 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 2&lt;/td&gt;
 &lt;td&gt;Preguntas basadas en escenarios&lt;/td&gt;
 &lt;td&gt;3 escenarios&lt;/td&gt;
 &lt;td&gt;20 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 3&lt;/td&gt;
 &lt;td&gt;Ejercicio practico&lt;/td&gt;
 &lt;td&gt;1 ejercicio&lt;/td&gt;
 &lt;td&gt;30 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="parte-1-quiz-de-seleccion-multiple"&gt;Parte 1: Quiz de Seleccion Multiple &lt;a href="#parte-1-quiz-de-seleccion-multiple" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Completa el quiz de 10 preguntas en el frontmatter. Cada pregunta tiene una respuesta correcta.&lt;/p&gt;</description></item><item><title>Fabricas de Datos y Fixtures de Test</title><link>https://yrkan.com/es/course/module-08-automation/test-data-factories/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/test-data-factories/</guid><description>&lt;h2 id="el-problema-de-los-datos-de-test"&gt;El Problema de los Datos de Test &lt;a href="#el-problema-de-los-datos-de-test" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A medida que las suites de test crecen, gestionar datos de test se convierte en uno de los mayores desafios de mantenimiento. Considera una suite con 500 tests, cada uno requiriendo un objeto User. Si el modelo User agrega un nuevo campo requerido, debes actualizar los 500 tests.&lt;/p&gt;
&lt;p&gt;Los datos hardcodeados crean tres problemas: &lt;strong&gt;duplicacion&lt;/strong&gt;, &lt;strong&gt;fragilidad&lt;/strong&gt; y &lt;strong&gt;opacidad&lt;/strong&gt; (tests abarrotados de datos irrelevantes para lo que verifican).&lt;/p&gt;</description></item><item><title>Fundamentos de Programacion para Testers</title><link>https://yrkan.com/es/course/module-08-automation/fundamentos-programacion-testers/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/fundamentos-programacion-testers/</guid><description>&lt;h2 id="por-que-los-testers-necesitan-habilidades-de-programacion"&gt;Por Que los Testers Necesitan Habilidades de Programacion &lt;a href="#por-que-los-testers-necesitan-habilidades-de-programacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La automatizacion de testing significa escribir codigo. No necesitas convertirte en desarrollador de software, pero necesitas suficiente conocimiento de programacion para escribir, leer y mantener scripts de test. Esta leccion cubre los conceptos esenciales que todo QA automation engineer necesita.&lt;/p&gt;
&lt;p&gt;Usamos JavaScript para los ejemplos porque es el lenguaje mas utilizado en automatizacion moderna (Playwright, Cypress, WebdriverIO). Los conceptos aplican a cualquier lenguaje.&lt;/p&gt;</description></item><item><title>Git para Ingenieros de QA</title><link>https://yrkan.com/es/course/module-08-automation/git-para-ingenieros-qa/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/git-para-ingenieros-qa/</guid><description>&lt;h2 id="por-que-los-qa-engineers-necesitan-git"&gt;Por Que los QA Engineers Necesitan Git &lt;a href="#por-que-los-qa-engineers-necesitan-git" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Todo proyecto profesional de automatizacion usa control de versiones. Git es el estandar de la industria. Como QA automation engineer, vas a:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Almacenar codigo de test en repositorios junto al codigo de la aplicacion&lt;/li&gt;
&lt;li&gt;Crear branches para nuevos suites de test y funcionalidades&lt;/li&gt;
&lt;li&gt;Enviar pull requests para code review&lt;/li&gt;
&lt;li&gt;Resolver conflictos de merge cuando varias personas editan tests&lt;/li&gt;
&lt;li&gt;Usar el historial de Git para entender cuando y por que cambiaron los tests&lt;/li&gt;
&lt;li&gt;Integrarte con pipelines CI/CD que se disparan por eventos de Git&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="comandos-esenciales-de-git"&gt;Comandos Esenciales de Git &lt;a href="#comandos-esenciales-de-git" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="configuracion-inicial"&gt;Configuracion Inicial &lt;a href="#configuracion-inicial" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Configurar tu identidad&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git config --global user.name &lt;span style="color:#e6db74"&gt;&amp;#34;Tu Nombre&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git config --global user.email &lt;span style="color:#e6db74"&gt;&amp;#34;tu.email@company.com&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Clonar un repositorio&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git clone https://github.com/company/test-automation.git
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd test-automation
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Verificar estado actual&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git status
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="comandos-del-flujo-diario"&gt;Comandos del Flujo Diario &lt;a href="#comandos-del-flujo-diario" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Obtener ultimos cambios del remoto&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git pull origin main
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Crear nueva branch para tu trabajo&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git checkout -b feature/add-login-tests
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Verificar que archivos cambiaste&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git status
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git diff
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Agregar archivos especificos al staging&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git add tests/login.spec.ts
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git add tests/fixtures/users.json
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Commit con mensaje descriptivo&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git commit -m &lt;span style="color:#e6db74"&gt;&amp;#34;Agregar suite de tests de login con escenarios positivos y negativos&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Push de tu branch al remoto&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git push origin feature/add-login-tests
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="viendo-el-historial"&gt;Viendo el Historial &lt;a href="#viendo-el-historial" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Ver historial de commits&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git log --oneline -20
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Ver que cambio en un commit especifico&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git show abc1234
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Ver quien modifico cada linea de un archivo&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git blame tests/login.spec.ts
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Encontrar cuando se agrego o modifico un test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git log --follow tests/checkout.spec.ts
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="estrategia-de-branching-para-codigo-de-test"&gt;Estrategia de Branching para Codigo de Test &lt;a href="#estrategia-de-branching-para-codigo-de-test" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="convenciones-de-nombres-de-branch"&gt;Convenciones de Nombres de Branch &lt;a href="#convenciones-de-nombres-de-branch" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Usa nombres claros y descriptivos:&lt;/p&gt;</description></item><item><title>Jest v30.3.0: defineConfig, Timer Tick Mode y Correcciones Clave</title><link>https://yrkan.com/es/tools-updates/jest-v30-3-whats-new/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/jest-v30-3-whats-new/</guid><description>&lt;h1 id="jest-v3030-defineconfig-timer-tick-mode-y-correcciones-clave"&gt;Jest v30.3.0: defineConfig, Timer Tick Mode y Correcciones Clave &lt;a href="#jest-v3030-defineconfig-timer-tick-mode-y-correcciones-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;h2 id="cambios-principales"&gt;Cambios Principales &lt;a href="#cambios-principales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Jest v30.3.0, lanzado el 10 de marzo de 2026, introduce mejoras en la experiencia de desarrollo que modernizan la configuración de Jest y mejoran las capacidades de fake timers.&lt;/p&gt;
&lt;h3 id="helpers-defineconfig-y-mergeconfig"&gt;Helpers defineConfig y mergeConfig &lt;a href="#helpers-defineconfig-y-mergeconfig" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;La función principal es &lt;code&gt;defineConfig&lt;/code&gt; y &lt;code&gt;mergeConfig&lt;/code&gt; — helpers de configuración type-safe inspirados en Vite y Vitest. Tu IDE ahora autocompleta cada opción con seguridad de tipos completa. &lt;code&gt;mergeConfig&lt;/code&gt; permite componer configuraciones desde presets compartidos, haciendo más limpias las configuraciones de monorepo.&lt;/p&gt;</description></item><item><title>JUnit 6.0.3: Actualizaciones de Estabilidad para QA</title><link>https://yrkan.com/es/tools-updates/junit5-r6-0-whats-new/</link><pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/junit5-r6-0-whats-new/</guid><description>&lt;p&gt;El equipo de JUnit ha lanzado la versión 6.0.3, una actualización de mantenimiento para el popular framework de testing de Java. Esta versión de parche, con fecha del 15 de febrero de 2026, se centra principalmente en refinar la arquitectura existente y abordar los problemas reportados, asegurando un entorno más estable para la automatización de pruebas.&lt;/p&gt;
&lt;h3 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Esta actualización consolida mejoras en todos los módulos principales de JUnit 6: Platform, Jupiter y Vintage. Aunque los detalles específicos están disponibles en las &lt;a href="https://docs.junit.org/6.0.3/release-notes.html"&gt;Release Notes oficiales&lt;/a&gt;, el enfoque general es en:&lt;/p&gt;</description></item><item><title>La Piramide de Automatizacion de Testing</title><link>https://yrkan.com/es/course/module-08-automation/piramide-automatizacion-testing/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/piramide-automatizacion-testing/</guid><description>&lt;h2 id="que-es-la-piramide-de-automatizacion-de-testing"&gt;Que Es la Piramide de Automatizacion de Testing? &lt;a href="#que-es-la-piramide-de-automatizacion-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La piramide de automatizacion de testing es un modelo visual que guia como distribuir tests automatizados en diferentes niveles. Introducida por Mike Cohn en 2009, sigue siendo uno de los conceptos mas importantes en estrategia de automatizacion.&lt;/p&gt;
&lt;p&gt;La piramide tiene tres capas, de abajo hacia arriba:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt; /\
 / \ Tests E2E / UI (pocos)
 /----\
 / \ Tests de Integracion (algunos)
 /--------\
 / \ Tests Unitarios (muchos)
 /____________\
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Cada capa representa un tipo diferente de test con caracteristicas distintas en velocidad, costo, confiabilidad y alcance.&lt;/p&gt;</description></item><item><title>Lidiando con Tests Inestables</title><link>https://yrkan.com/es/course/module-08-automation/flaky-tests/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/flaky-tests/</guid><description>&lt;h2 id="que-son-los-tests-inestables"&gt;Que Son los Tests Inestables? &lt;a href="#que-son-los-tests-inestables" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un test inestable (flaky test) es un test que pasa y falla intermitentemente sin ningun cambio de codigo. Ejecutas la suite — pasa. La ejecutas de nuevo con el mismo codigo — un test falla. La ejecutas por tercera vez — pasa. Este comportamiento no determinista destruye la confianza en la suite de tests y desperdicia enormes cantidades de tiempo investigando fallas falsas.&lt;/p&gt;
&lt;p&gt;Google reporto que 1.5% de sus tests eran inestables, y esos tests consumian 2-16% de sus recursos de computo completos a traves de reintentos.&lt;/p&gt;</description></item><item><title>Mejores Practicas de Revision de Codigo de Tests</title><link>https://yrkan.com/es/course/module-08-automation/test-code-review/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/test-code-review/</guid><description>&lt;h2 id="por-que-revisar-codigo-de-tests"&gt;Por Que Revisar Codigo de Tests? &lt;a href="#por-que-revisar-codigo-de-tests" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El codigo de tests es codigo de produccion. Se ejecuta en pipelines CI/CD, afecta decisiones de deployment y se mantiene durante anos. Sin embargo, muchos equipos lo tratan como ciudadano de segunda clase. El resultado: una suite fragil e inmantenible en la que nadie confia.&lt;/p&gt;
&lt;h2 id="checklist-de-revision"&gt;Checklist de Revision &lt;a href="#checklist-de-revision" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-el-test-prueba-lo-que-dice"&gt;1. El Test Prueba Lo Que Dice? &lt;a href="#1-el-test-prueba-lo-que-dice" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-java" data-lang="java"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// MAL — nombre dice &amp;#34;creacion&amp;#34; pero test solo verifica navegacion&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;testUserCreation&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; loginPage.&lt;span style="color:#a6e22e"&gt;login&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;admin&amp;#34;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#34;pass&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; createUserPage.&lt;span style="color:#a6e22e"&gt;fillForm&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;Alice&amp;#34;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#34;alice@test.com&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; createUserPage.&lt;span style="color:#a6e22e"&gt;submit&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;// Sin asercion de que el usuario fue creado!&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// BIEN — asercion coincide con el nombre&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;testUserCreation&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; loginPage.&lt;span style="color:#a6e22e"&gt;login&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;admin&amp;#34;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#34;pass&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; createUserPage.&lt;span style="color:#a6e22e"&gt;fillForm&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;Alice&amp;#34;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#34;alice@test.com&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; createUserPage.&lt;span style="color:#a6e22e"&gt;submit&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; assertTrue(userService.&lt;span style="color:#a6e22e"&gt;exists&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;alice@test.com&amp;#34;&lt;/span&gt;));
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2-nombres-de-tests"&gt;2. Nombres de Tests &lt;a href="#2-nombres-de-tests" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-java" data-lang="java"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// MAL&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;test1&lt;/span&gt;() { ... }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// BIEN&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;should_showDashboard_when_loginWithValidCredentials&lt;/span&gt;() { ... }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;should_showError_when_loginWithExpiredPassword&lt;/span&gt;() { ... }
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3-estructura-arrange-act-assert"&gt;3. Estructura Arrange-Act-Assert &lt;a href="#3-estructura-arrange-act-assert" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-java" data-lang="java"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;should_applyDiscount_when_couponIsValid&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;// Arrange&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Order order &lt;span style="color:#f92672"&gt;=&lt;/span&gt; OrderFactory.&lt;span style="color:#a6e22e"&gt;createWithTotal&lt;/span&gt;(100.&lt;span style="color:#a6e22e"&gt;00&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Coupon coupon &lt;span style="color:#f92672"&gt;=&lt;/span&gt; CouponFactory.&lt;span style="color:#a6e22e"&gt;createValid&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;SAVE20&amp;#34;&lt;/span&gt;, 20);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;// Act&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; order.&lt;span style="color:#a6e22e"&gt;applyCoupon&lt;/span&gt;(coupon);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;// Assert&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; assertEquals(80.&lt;span style="color:#a6e22e"&gt;00&lt;/span&gt;, order.&lt;span style="color:#a6e22e"&gt;getTotal&lt;/span&gt;(), 0.&lt;span style="color:#a6e22e"&gt;01&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="4-una-preocupacion-por-test"&gt;4. Una Preocupacion por Test &lt;a href="#4-una-preocupacion-por-test" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;h3 id="5-sin-logica-en-tests"&gt;5. Sin Logica en Tests &lt;a href="#5-sin-logica-en-tests" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-java" data-lang="java"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// MAL — logica en test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;testUserRoles&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; (String role : List.&lt;span style="color:#a6e22e"&gt;of&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;admin&amp;#34;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#34;user&amp;#34;&lt;/span&gt;)) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (role.&lt;span style="color:#a6e22e"&gt;equals&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;admin&amp;#34;&lt;/span&gt;)) assertTrue(user.&lt;span style="color:#a6e22e"&gt;canDelete&lt;/span&gt;());
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// BIEN — tests separados&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;admin_canDelete&lt;/span&gt;() { ... }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;@Test&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;regularUser_cannotDelete&lt;/span&gt;() { ... }
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="anti-patrones-comunes"&gt;Anti-Patrones Comunes &lt;a href="#anti-patrones-comunes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="mystery-guest"&gt;Mystery Guest &lt;a href="#mystery-guest" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;El test depende de estado externo no visible.&lt;/p&gt;</description></item><item><title>Modelo Page Object</title><link>https://yrkan.com/es/course/module-08-automation/modelo-page-object/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/modelo-page-object/</guid><description>&lt;h2 id="que-es-el-page-object-model"&gt;Que Es el Page Object Model? &lt;a href="#que-es-el-page-object-model" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Page Object Model (POM) es el patron de diseno mas utilizado en automatizacion de UI. Crea una clase para cada pagina o componente de tu aplicacion, encapsulando todas las interacciones con esa pagina.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sin POM&lt;/strong&gt; — selectores y acciones dispersos en los tests:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;usuario puede hacer login&amp;#39;&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; ({ &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt; }) =&amp;gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#email&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;admin@test.com&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#password&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;secret&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;button.login-btn&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.welcome-msg&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toHaveText&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Bienvenido, Admin&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Con POM&lt;/strong&gt; — detalles de pagina encapsulados:&lt;/p&gt;</description></item><item><title>Patron Screenplay</title><link>https://yrkan.com/es/course/module-08-automation/patron-screenplay/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/patron-screenplay/</guid><description>&lt;h2 id="que-es-el-patron-screenplay"&gt;Que Es el Patron Screenplay? &lt;a href="#que-es-el-patron-screenplay" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El patron Screenplay es una alternativa avanzada al Page Object Model. En vez de organizar tests alrededor de paginas, los organiza alrededor de &lt;strong&gt;actores&lt;/strong&gt; que realizan &lt;strong&gt;tareas&lt;/strong&gt; y hacen &lt;strong&gt;preguntas&lt;/strong&gt; usando sus &lt;strong&gt;habilidades&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Piensa en ello como un guion de pelicula — describes lo que hacen los actores, no como se ve la UI.&lt;/p&gt;
&lt;h3 id="pom-vs-screenplay-comparacion"&gt;POM vs Screenplay: Comparacion &lt;a href="#pom-vs-screenplay-comparacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Enfoque POM:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;loginPage&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;new&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;LoginPage&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;loginPage&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;login&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;admin@test.com&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;secret&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;dashboard&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;new&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;DashboardPage&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;dashboard&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;getUserName&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;toBe&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Admin&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Enfoque Screenplay:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Playwright</title><link>https://yrkan.com/es/course/module-08-automation/playwright/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/playwright/</guid><description>&lt;h2 id="que-es-playwright"&gt;Que Es Playwright? &lt;a href="#que-es-playwright" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Playwright es un framework moderno de automatizacion de navegadores creado por Microsoft. Proporciona una API unica para controlar navegadores Chromium, Firefox y WebKit. Lanzado en 2020, se ha convertido rapidamente en la opcion mas popular para nuevos proyectos de automatizacion.&lt;/p&gt;
&lt;h3 id="por-que-playwright"&gt;Por Que Playwright? &lt;a href="#por-que-playwright" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Caracteristica&lt;/th&gt;
 &lt;th&gt;Playwright&lt;/th&gt;
 &lt;th&gt;Selenium&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Auto-waiting&lt;/td&gt;
 &lt;td&gt;Incorporado&lt;/td&gt;
 &lt;td&gt;Waits manuales requeridos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Multi-navegador&lt;/td&gt;
 &lt;td&gt;Chromium, Firefox, WebKit&lt;/td&gt;
 &lt;td&gt;Requiere drivers separados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Velocidad&lt;/td&gt;
 &lt;td&gt;Muy rapido&lt;/td&gt;
 &lt;td&gt;Moderado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Locators&lt;/td&gt;
 &lt;td&gt;Basados en rol, texto, test-id&lt;/td&gt;
 &lt;td&gt;CSS, XPath, ID&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Debugging&lt;/td&gt;
 &lt;td&gt;Trace Viewer, Inspector&lt;/td&gt;
 &lt;td&gt;Solo screenshots&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;API testing&lt;/td&gt;
 &lt;td&gt;Incorporado&lt;/td&gt;
 &lt;td&gt;Requiere herramienta separada&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Codegen&lt;/td&gt;
 &lt;td&gt;Incorporado&lt;/td&gt;
 &lt;td&gt;No disponible&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ejecucion paralela&lt;/td&gt;
 &lt;td&gt;Nativa&lt;/td&gt;
 &lt;td&gt;Requiere Grid&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="configuracion-de-playwright"&gt;Configuracion de Playwright &lt;a href="#configuracion-de-playwright" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="javascripttypescript"&gt;JavaScript/TypeScript &lt;a href="#javascripttypescript" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;npm init playwright@latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="python"&gt;Python &lt;a href="#python" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pip install playwright
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;playwright install
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="escribiendo-tu-primer-test"&gt;Escribiendo tu Primer Test &lt;a href="#escribiendo-tu-primer-test" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;import&lt;/span&gt; { &lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt; } &lt;span style="color:#66d9ef"&gt;from&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;@playwright/test&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;usuario puede hacer login y ver dashboard&amp;#39;&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; ({ &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt; }) &lt;span style="color:#f92672"&gt;=&amp;gt;&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#66d9ef"&gt;goto&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;https://app.example.com/login&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;[data-testid=&amp;#34;email&amp;#34;]&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;admin@test.com&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;[data-testid=&amp;#34;password&amp;#34;]&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;secret123&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;[data-testid=&amp;#34;submit&amp;#34;]&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;toHaveURL&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;/dashboard&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.welcome&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toHaveText&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Welcome, Admin&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;login invalido muestra error&amp;#39;&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; ({ &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt; }) &lt;span style="color:#f92672"&gt;=&amp;gt;&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#66d9ef"&gt;goto&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;https://app.example.com/login&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;[data-testid=&amp;#34;email&amp;#34;]&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;wrong@test.com&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;[data-testid=&amp;#34;password&amp;#34;]&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;wrongpass&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;[data-testid=&amp;#34;submit&amp;#34;]&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.error&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toHaveText&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Credenciales invalidas&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="locators-poderosos"&gt;Locators Poderosos &lt;a href="#locators-poderosos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="locators-basados-en-rol-recomendado"&gt;Locators Basados en Rol (Recomendado) &lt;a href="#locators-basados-en-rol-recomendado" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;getByRole&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;button&amp;#39;&lt;/span&gt;, { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;Iniciar Sesion&amp;#39;&lt;/span&gt; }).&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;getByRole&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;textbox&amp;#39;&lt;/span&gt;, { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;Email&amp;#39;&lt;/span&gt; }).&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;admin@test.com&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;getByLabel&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Email&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;admin@test.com&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;getByPlaceholder&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Ingresa tu email&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;fill&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;admin@test.com&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;getByText&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Iniciar Sesion&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;getByTestId&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;login-submit&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="encadenamiento-y-filtrado-de-locators"&gt;Encadenamiento y Filtrado de Locators &lt;a href="#encadenamiento-y-filtrado-de-locators" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.product-card&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;filter&lt;/span&gt;({ &lt;span style="color:#a6e22e"&gt;hasText&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;Mouse Inalambrico&amp;#39;&lt;/span&gt; })
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; .&lt;span style="color:#a6e22e"&gt;getByRole&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;button&amp;#39;&lt;/span&gt;, { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;Agregar al Carrito&amp;#39;&lt;/span&gt; }).&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.product-card&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;nth&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.product-card&amp;#39;&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;first&lt;/span&gt;().&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="auto-waiting"&gt;Auto-Waiting &lt;a href="#auto-waiting" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// Sin waits manuales — Playwright lo maneja
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;click&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#submit&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// Playwright espera: visible, estable, habilitado, recibiendo eventos
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.result&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toHaveText&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Exito&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// Playwright reintenta hasta que la asercion pasa (dentro del timeout)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="assertions-web-first"&gt;Assertions Web-First &lt;a href="#assertions-web-first" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;toHaveTitle&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Dashboard&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;toHaveURL&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;/dashboard/&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.status&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toHaveText&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;Activo&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;.item&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toHaveCount&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#btn&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toBeVisible&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;locator&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;#btn&amp;#39;&lt;/span&gt;)).&lt;span style="color:#a6e22e"&gt;toBeEnabled&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="configuracion"&gt;Configuracion &lt;a href="#configuracion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;import&lt;/span&gt; { &lt;span style="color:#a6e22e"&gt;defineConfig&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;devices&lt;/span&gt; } &lt;span style="color:#66d9ef"&gt;from&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;@playwright/test&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;export&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;default&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;defineConfig&lt;/span&gt;({
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;testDir&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;./tests&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;timeout&lt;/span&gt;: &lt;span style="color:#66d9ef"&gt;30000&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;retries&lt;/span&gt;: &lt;span style="color:#66d9ef"&gt;process.env.CI&lt;/span&gt; &lt;span style="color:#f92672"&gt;?&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;2&lt;/span&gt; : &lt;span style="color:#66d9ef"&gt;0&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;workers&lt;/span&gt;: &lt;span style="color:#66d9ef"&gt;process.env.CI&lt;/span&gt; &lt;span style="color:#f92672"&gt;?&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;4&lt;/span&gt; : &lt;span style="color:#66d9ef"&gt;undefined&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;reporter&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; [[&lt;span style="color:#e6db74"&gt;&amp;#39;html&amp;#39;&lt;/span&gt;], [&lt;span style="color:#e6db74"&gt;&amp;#39;junit&amp;#39;&lt;/span&gt;, { &lt;span style="color:#a6e22e"&gt;outputFile&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;results.xml&amp;#39;&lt;/span&gt; }]],
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;baseURL&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;https://app.example.com&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;screenshot&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;only-on-failure&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;video&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;retain-on-failure&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;trace&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;retain-on-failure&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;projects&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; [
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;chromium&amp;#39;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; { ...&lt;span style="color:#a6e22e"&gt;devices&lt;/span&gt;[&lt;span style="color:#e6db74"&gt;&amp;#39;Desktop Chrome&amp;#39;&lt;/span&gt;] } },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;firefox&amp;#39;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; { ...&lt;span style="color:#a6e22e"&gt;devices&lt;/span&gt;[&lt;span style="color:#e6db74"&gt;&amp;#39;Desktop Firefox&amp;#39;&lt;/span&gt;] } },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;webkit&amp;#39;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; { ...&lt;span style="color:#a6e22e"&gt;devices&lt;/span&gt;[&lt;span style="color:#e6db74"&gt;&amp;#39;Desktop Safari&amp;#39;&lt;/span&gt;] } },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;mobile-chrome&amp;#39;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; { ...&lt;span style="color:#a6e22e"&gt;devices&lt;/span&gt;[&lt;span style="color:#e6db74"&gt;&amp;#39;Pixel 5&amp;#39;&lt;/span&gt;] } },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; { &lt;span style="color:#a6e22e"&gt;name&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#39;mobile-safari&amp;#39;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;use&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; { ...&lt;span style="color:#a6e22e"&gt;devices&lt;/span&gt;[&lt;span style="color:#e6db74"&gt;&amp;#39;iPhone 13&amp;#39;&lt;/span&gt;] } },
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ],
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="funcionalidades-avanzadas"&gt;Funcionalidades Avanzadas &lt;a href="#funcionalidades-avanzadas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="trace-viewer"&gt;Trace Viewer &lt;a href="#trace-viewer" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;npx playwright test
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;npx playwright show-trace trace.zip
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;El trace muestra: screenshots en cada paso, snapshots del DOM, requests de red, logs de consola y codigo fuente.&lt;/p&gt;</description></item><item><title>Playwright vs Cypress vs Selenium</title><link>https://yrkan.com/es/course/module-08-automation/playwright-vs-cypress-vs-selenium/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/playwright-vs-cypress-vs-selenium/</guid><description>&lt;h2 id="por-que-importa-esta-comparacion"&gt;Por Que Importa Esta Comparacion &lt;a href="#por-que-importa-esta-comparacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Elegir un framework de automatizacion de testing es una de las decisiones tecnicas mas importantes que toma un equipo de QA. El framework que selecciones influira en la productividad del equipo, la confiabilidad de los tests, el pool de contratacion, la velocidad del CI/CD y los costos de mantenimiento durante anos. Tomar la decision incorrecta lleva a migraciones costosas.&lt;/p&gt;
&lt;p&gt;Esta leccion proporciona una comparacion objetiva, funcionalidad por funcionalidad, de los tres frameworks de testing web mas populares: Selenium WebDriver, Playwright y Cypress. En lugar de declarar un unico ganador, te daremos los criterios para tomar la decision correcta para tu contexto especifico.&lt;/p&gt;</description></item><item><title>pytest 9.0.2: Progreso Terminal, Compatibilidad y Correcciones</title><link>https://yrkan.com/es/tools-updates/pytest-9-0-whats-new/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/pytest-9-0-whats-new/</guid><description>&lt;p&gt;pytest 9.0.2, lanzado el 06-12-2025, es una actualización de mantenimiento importante que se centra en la estabilidad y compatibilidad del popular framework de pruebas de Python. Esta versión aborda varios problemas clave, asegurando una experiencia más fluida para los ingenieros de QA.&lt;/p&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;pytest 9.0.2 trae correcciones de errores importantes y mejoras en la documentación, abordando varios problemas de compatibilidad y rendimiento.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Correcciones de Errores:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Progreso en Terminal:&lt;/strong&gt; La nueva función de progreso en terminal, introducida en pytest 9.0.0, ahora está deshabilitada por defecto en la mayoría de las plataformas (excepto en Windows). Este cambio se implementó para resolver problemas de compatibilidad con varios emuladores de terminal. Los usuarios pueden reactivar esta función explícitamente pasando el flag &lt;code&gt;-p terminalprogress&lt;/code&gt;. Además, los códigos de escape ya no se emiten cuando la variable de entorno &lt;code&gt;TERM&lt;/code&gt; está configurada como &lt;code&gt;dumb&lt;/code&gt;, evitando problemas de visualización en entornos mínimos.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Restauración de &lt;code&gt;config.inicfg&lt;/code&gt;:&lt;/strong&gt; El atributo privado &lt;code&gt;config.inicfg&lt;/code&gt;, que sufrió un cambio disruptivo en pytest 9.0.0, ha sido restaurado a su funcionamiento normal mediante un shim de compatibilidad. Esto asegura la continuidad de la funcionalidad para los plugins y configuraciones existentes que dependen de este atributo. Es importante destacar que &lt;code&gt;config.inicfg&lt;/code&gt; será formalmente deprecado en pytest 9.1 y está programado para su eliminación en pytest 10.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rendimiento:&lt;/strong&gt; Se ha resuelto un problema significativo de rendimiento de tiempo cuadrático, específicamente al manejar &lt;code&gt;unittest&lt;/code&gt; subtests en Python 3.10. Esta corrección mejora la velocidad de ejecución para suites de pruebas que utilizan la función de subtests de &lt;code&gt;unittest&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tipo de Configuración:&lt;/strong&gt; El tipo TOML para la configuración &lt;code&gt;tmp_path_retention_count&lt;/code&gt; en la referencia de la API ha sido corregido de número a string, asegurando una documentación precisa para los archivos de configuración.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Documentación Mejorada:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Reportes con Allure</title><link>https://yrkan.com/es/course/module-08-automation/allure-reporting/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/allure-reporting/</guid><description>&lt;h2 id="que-es-allure"&gt;Que Es Allure? &lt;a href="#que-es-allure" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Allure es un framework de reportes de testing de codigo abierto que transforma resultados de tests en reportes HTML ricos e interactivos. Mientras la mayoria de frameworks de testing producen resumenes basicos de pass/fail, Allure crea reportes detallados con pasos de test, screenshots, logs de red, lineas de tiempo, tendencias historicas y fallas categorizadas.&lt;/p&gt;
&lt;p&gt;Allure se integra con practicamente todos los frameworks de testing: JUnit, TestNG, Pytest, Jest, Mocha, Playwright, Cypress y mas. Funciona en dos pasos: primero, tus tests generan archivos de resultados Allure durante la ejecucion; segundo, el CLI de Allure genera un reporte HTML a partir de esos archivos.&lt;/p&gt;</description></item><item><title>Seleccion de Framework de Testing</title><link>https://yrkan.com/es/course/module-08-automation/seleccion-framework-testing/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/seleccion-framework-testing/</guid><description>&lt;h2 id="por-que-importa-la-seleccion-del-framework"&gt;Por Que Importa la Seleccion del Framework &lt;a href="#por-que-importa-la-seleccion-del-framework" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Elegir un framework de automatizacion de testing es una de las decisiones mas importantes en tu estrategia de testing. La eleccion equivocada puede llevar a meses de esfuerzo desperdiciado, migraciones costosas y frustracion del equipo. La eleccion correcta acelera tu proceso de automatizacion y te prepara para el exito a largo plazo.&lt;/p&gt;
&lt;p&gt;Esta leccion proporciona un enfoque sistematico para la evaluacion de frameworks.&lt;/p&gt;</description></item><item><title>Selenium 4.41.0: Avances en AI y Mejoras BiDi</title><link>https://yrkan.com/es/tools-updates/selenium-selenium-4-41-whats-new/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/selenium-selenium-4-41-whats-new/</guid><description>&lt;h2 id="resumen-de-la-versión-selenium-4410"&gt;Resumen de la Versión Selenium 4.41.0 &lt;a href="#resumen-de-la-versi%c3%b3n-selenium-4410" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bases para futuras direcciones de agentes AI.&lt;/li&gt;
&lt;li&gt;Mejoras en el sistema de tipos y construcción para Python.&lt;/li&gt;
&lt;li&gt;Soporte BiDi mejorado para .NET.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="key-changes"&gt;Key Changes &lt;a href="#key-changes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Funcionalidades y Fundamentos:&lt;/strong&gt; Esta versión introduce cambios fundamentales para el soporte de direcciones de agentes AI, preparando el terreno para futuras capacidades en la automatización de pruebas avanzada. Aunque no son visibles de inmediato para el usuario final, sientan las bases para la innovación en cómo abordamos las pruebas con herramientas como Selenium WebDriver. Para quienes estén interesados en el futuro de la automatización, consulten nuestro artículo &lt;a href="https://yrkan.com/es/blog/selenium-webdriver-2025-sigue-relevante/"&gt;Selenium WebDriver 2025: Still Relevant?&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Selenium Grid</title><link>https://yrkan.com/es/course/module-08-automation/selenium-grid/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/selenium-grid/</guid><description>&lt;h2 id="que-es-selenium-grid"&gt;Que Es Selenium Grid? &lt;a href="#que-es-selenium-grid" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Selenium Grid permite ejecutar tests en multiples maquinas (nodos) en paralelo, a traves de diferentes navegadores y sistemas operativos. En vez de ejecutar 100 tests secuencialmente en una maquina (2 horas), puedes ejecutarlos en 10 nodos en paralelo (12 minutos).&lt;/p&gt;
&lt;h3 id="por-que-necesitas-grid"&gt;Por Que Necesitas Grid &lt;a href="#por-que-necesitas-grid" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Sin Grid&lt;/th&gt;
 &lt;th&gt;Con Grid&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;1 navegador a la vez&lt;/td&gt;
 &lt;td&gt;Multiples navegadores simultáneamente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ejecucion secuencial&lt;/td&gt;
 &lt;td&gt;Ejecucion paralela&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Un solo OS&lt;/td&gt;
 &lt;td&gt;Multiples OS&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;100 tests × 2 min = 200 min&lt;/td&gt;
 &lt;td&gt;100 tests ÷ 10 nodos = 20 min&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="arquitectura-de-selenium-grid-4"&gt;Arquitectura de Selenium Grid 4 &lt;a href="#arquitectura-de-selenium-grid-4" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;┌─────────────────────────────────────┐
│ Selenium Grid │
│ ┌──────────┐ ┌──────────────┐ │
│ │ Router │ │ Distributor │ │
│ └────┬─────┘ └──────┬───────┘ │
│ ┌────┴─────┐ ┌──────┴───────┐ │
│ │ Session │ │ Node │ │
│ │ Map │ │ Manager │ │
│ └──────────┘ └──────────────┘ │
└─────────────────────────────────────┘
 │ │
 ┌────┴────┐ ┌────┴────┐
 │ Node 1 │ │ Node 2 │
 │ Chrome │ │ Firefox │
 └─────────┘ └─────────┘
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Componentes:&lt;/p&gt;</description></item><item><title>Selenium WebDriver</title><link>https://yrkan.com/es/course/module-08-automation/selenium-webdriver/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/selenium-webdriver/</guid><description>&lt;h2 id="que-es-selenium-webdriver"&gt;Que Es Selenium WebDriver? &lt;a href="#que-es-selenium-webdriver" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Selenium WebDriver es la herramienta de automatizacion de navegadores mas establecida, utilizada por millones de testers. Proporciona una interfaz de programacion para controlar navegadores web a traves del protocolo W3C WebDriver.&lt;/p&gt;
&lt;h3 id="arquitectura-de-selenium"&gt;Arquitectura de Selenium &lt;a href="#arquitectura-de-selenium" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Codigo de Test (Java/Python/JS/C#)
 ↓
 API WebDriver
 ↓
 Driver del Navegador (ChromeDriver, GeckoDriver)
 ↓
 Navegador (Chrome, Firefox, Safari, Edge)
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Tu codigo llama a la API WebDriver, que envia comandos al driver especifico del navegador, que controla el navegador real.&lt;/p&gt;</description></item><item><title>Testing de Regresion Visual</title><link>https://yrkan.com/es/course/module-08-automation/visual-regression-testing/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/visual-regression-testing/</guid><description>&lt;h2 id="que-es-el-testing-de-regresion-visual"&gt;Que Es el Testing de Regresion Visual? &lt;a href="#que-es-el-testing-de-regresion-visual" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de regresion visual es la practica automatizada de comparar screenshots de la UI de tu aplicacion antes y despues de cambios de codigo para detectar diferencias visuales no deseadas. Los tests funcionales verifican que un boton envia un formulario; los tests visuales verifican que el boton es visible, correctamente posicionado y estilizado, y no se superpone con otros elementos.&lt;/p&gt;
&lt;p&gt;Un solo cambio de CSS puede romper el layout en docenas de paginas. Una actualizacion de fuente puede desplazar la alineacion de texto en toda la aplicacion. Los tests funcionales no detectan estos problemas porque la estructura HTML y el comportamiento permanecen correctos — solo la apariencia visual se rompe.&lt;/p&gt;</description></item><item><title>Testing Dirigido por Datos</title><link>https://yrkan.com/es/course/module-08-automation/testing-dirigido-por-datos/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/testing-dirigido-por-datos/</guid><description>&lt;h2 id="que-es-el-testing-data-driven"&gt;Que Es el Testing Data-Driven? &lt;a href="#que-es-el-testing-data-driven" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing data-driven separa la logica del test de los datos del test. En vez de escribir un test separado para cada combinacion de entrada, escribes un test que se ejecuta multiples veces con diferentes conjuntos de datos.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sin enfoque data-driven (5 tests separados):&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;login con credenciales admin&amp;#39;&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; ({ &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt; }) =&amp;gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;loginPage&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;login&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;admin@test.com&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;AdminPass1&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;toHaveURL&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;/dashboard&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;test&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;login con credenciales editor&amp;#39;&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;async&lt;/span&gt; ({ &lt;span style="color:#a6e22e"&gt;page&lt;/span&gt; }) =&amp;gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;loginPage&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;login&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;editor@test.com&amp;#39;&lt;/span&gt;, &lt;span style="color:#e6db74"&gt;&amp;#39;EditorPass1&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;await&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;expect&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;page&lt;/span&gt;).&lt;span style="color:#a6e22e"&gt;toHaveURL&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#39;/dashboard&amp;#39;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;// ... 3 tests mas casi identicos
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Con enfoque data-driven (1 test, 5 conjuntos de datos):&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Testing Dirigido por Palabras Clave</title><link>https://yrkan.com/es/course/module-08-automation/testing-dirigido-palabras-clave/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/testing-dirigido-palabras-clave/</guid><description>&lt;h2 id="que-es-el-testing-keyword-driven"&gt;Que Es el Testing Keyword-Driven? &lt;a href="#que-es-el-testing-keyword-driven" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing keyword-driven (tambien llamado table-driven o action-word testing) separa el diseno de la implementacion definiendo tests como secuencias de &lt;strong&gt;keywords&lt;/strong&gt; — palabras de accion legibles que mapean a codigo de automatizacion.&lt;/p&gt;
&lt;p&gt;Una tabla de keywords se ve asi:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Paso&lt;/th&gt;
 &lt;th&gt;Keyword&lt;/th&gt;
 &lt;th&gt;Argumento 1&lt;/th&gt;
 &lt;th&gt;Argumento 2&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;Open Browser&lt;/td&gt;
 &lt;td&gt;&lt;a href="https://app.example.com"&gt;https://app.example.com&lt;/a&gt;&lt;/td&gt;
 &lt;td&gt;Chrome&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;Enter Text&lt;/td&gt;
 &lt;td&gt;#email&lt;/td&gt;
 &lt;td&gt;&lt;a href="mailto:admin@test.com"&gt;admin@test.com&lt;/a&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;Enter Text&lt;/td&gt;
 &lt;td&gt;#password&lt;/td&gt;
 &lt;td&gt;secret123&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;Click Button&lt;/td&gt;
 &lt;td&gt;#login-btn&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;5&lt;/td&gt;
 &lt;td&gt;Verify Text&lt;/td&gt;
 &lt;td&gt;.welcome&lt;/td&gt;
 &lt;td&gt;Welcome, Admin&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;6&lt;/td&gt;
 &lt;td&gt;Close Browser&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Miembros no tecnicos del equipo pueden leer, escribir y mantener estas tablas sin entender el codigo subyacente.&lt;/p&gt;</description></item><item><title>Testing Headless</title><link>https://yrkan.com/es/course/module-08-automation/headless-testing/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/headless-testing/</guid><description>&lt;h2 id="que-es-el-testing-headless"&gt;Que Es el Testing Headless? &lt;a href="#que-es-el-testing-headless" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un navegador headless es un navegador web que opera sin interfaz grafica. Tiene el motor de navegador completo pero no renderiza pixeles en pantalla. Cuando ejecutas tests en modo headless, el navegador realiza todas las mismas operaciones que un navegador visible, pero sin el overhead de pintar en un display.&lt;/p&gt;
&lt;p&gt;El testing headless se volvio mainstream cuando Chrome introdujo el modo headless en 2017. Hoy, todos los navegadores principales soportan operacion headless.&lt;/p&gt;</description></item><item><title>Testing Multi-Navegador con BrowserStack</title><link>https://yrkan.com/es/course/module-08-automation/cross-browser-browserstack/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/cross-browser-browserstack/</guid><description>&lt;h2 id="por-que-importa-el-testing-multi-navegador"&gt;Por Que Importa el Testing Multi-Navegador &lt;a href="#por-que-importa-el-testing-multi-navegador" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A pesar de decadas de desarrollo de estandares web, diferentes motores de navegador siguen renderizando paginas con diferencias sutiles pero importantes. Chromium (Chrome, Edge), Gecko (Firefox) y WebKit (Safari) interpretan propiedades CSS, APIs de JavaScript y eventos DOM con variaciones. Una funcionalidad que funciona perfectamente en Chrome puede romperse en Safari.&lt;/p&gt;
&lt;p&gt;Problemas comunes: diferencias de renderizado CSS flexbox/grid, manejo de inputs de fecha, variaciones en renderizado de fuentes, diferencias en comportamiento de scroll, gaps de soporte de Web APIs.&lt;/p&gt;</description></item><item><title>XCUITest y Espresso</title><link>https://yrkan.com/es/course/module-08-automation/xcuitest-espresso/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-08-automation/xcuitest-espresso/</guid><description>&lt;h2 id="por-que-frameworks-de-testing-nativos"&gt;Por Que Frameworks de Testing Nativos? &lt;a href="#por-que-frameworks-de-testing-nativos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Mientras que Appium proporciona testing multiplataforma con una sola API, los frameworks de testing nativos — XCUITest para iOS y Espresso para Android — ofrecen ventajas significativas en velocidad, confiabilidad e integracion con el flujo de desarrollo. Se ejecutan dentro del proceso de la plataforma, dandoles acceso directo al hilo de UI y eliminando el overhead de red que introducen las herramientas externas.&lt;/p&gt;</description></item><item><title>Playwright v1.58.2: Actualización de Navegadores y Correcciones</title><link>https://yrkan.com/es/tools-updates/playwright-v1-58-whats-new/</link><pubDate>Mon, 16 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/tools-updates/playwright-v1-58-whats-new/</guid><description>&lt;h1 id="playwright-v1582-actualización-de-navegadores-y-correcciones"&gt;Playwright v1.58.2: Actualización de Navegadores y Correcciones &lt;a href="#playwright-v1582-actualizaci%c3%b3n-de-navegadores-y-correcciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;h2 id="cambios-clave"&gt;Cambios Clave &lt;a href="#cambios-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Playwright v1.58.2, lanzado el 06-02-2026, es una versión de punto importante centrada en la estabilidad y compatibilidad mediante actualizaciones esenciales y correcciones de errores. Esta versión garantiza una mejor alineación con los entornos de navegador más recientes, lo cual es crucial para pruebas web precisas.&lt;/p&gt;
&lt;h3 id="actualizaciones-de-versiones-de-navegador"&gt;Actualizaciones de Versiones de Navegador &lt;a href="#actualizaciones-de-versiones-de-navegador" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Esta actualización lleva los navegadores incluidos a sus últimas versiones estables, asegurando que sus pruebas se ejecuten contra los comportamientos y estándares actuales del navegador:&lt;/p&gt;</description></item><item><title>Analisis de Crashes: Crashlytics y Sentry</title><link>https://yrkan.com/es/course/module-07-mobile/crash-analytics/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/crash-analytics/</guid><description>&lt;h2 id="panorama-de-analisis-de-crashes-crashlytics-y-sentry"&gt;Panorama de Analisis de Crashes: Crashlytics y Sentry &lt;a href="#panorama-de-analisis-de-crashes-crashlytics-y-sentry" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Analisis de Crashes: Crashlytics y Sentry es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-analisis-de-crashes-crashlytics-y-sentry"&gt;Por Que Importa Analisis de Crashes: Crashlytics y Sentry &lt;a href="#por-que-importa-analisis-de-crashes-crashlytics-y-sentry" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Analisis de Crashes: Crashlytics y Sentry aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Apps Nativas, Hibridas y Multiplataforma</title><link>https://yrkan.com/es/course/module-07-mobile/native-hybrid-cross-platform/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/native-hybrid-cross-platform/</guid><description>&lt;h2 id="entendiendo-las-arquitecturas-de-apps-moviles"&gt;Entendiendo las Arquitecturas de Apps Moviles &lt;a href="#entendiendo-las-arquitecturas-de-apps-moviles" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Antes de poder probar efectivamente una aplicacion movil, necesitas entender como fue construida. La arquitectura determina directamente que herramientas usas, que tipos de bugs esperar y donde enfocar tu esfuerzo de testing.&lt;/p&gt;
&lt;p&gt;Hay tres enfoques principales para construir apps moviles, cada uno con implicaciones de testing distintas.&lt;/p&gt;
&lt;h2 id="apps-nativas"&gt;Apps Nativas &lt;a href="#apps-nativas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las apps nativas se construyen especificamente para una plataforma usando el lenguaje de programacion y SDK oficiales.&lt;/p&gt;</description></item><item><title>Configuracion de Laboratorio de Dispositivos</title><link>https://yrkan.com/es/course/module-07-mobile/device-lab-setup/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/device-lab-setup/</guid><description>&lt;h2 id="por-que-necesitas-un-laboratorio-de-dispositivos"&gt;Por Que Necesitas un Laboratorio de Dispositivos &lt;a href="#por-que-necesitas-un-laboratorio-de-dispositivos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Probar en simuladores y emuladores detecta muchos bugs, pero no pueden replicar la experiencia movil completa. Los dispositivos fisicos se comportan diferente en areas criticas: precision de GPS, calidad de camara, conectividad Bluetooth, autenticacion biometrica, push notifications, consumo de bateria y condiciones de red reales.&lt;/p&gt;
&lt;p&gt;Un laboratorio de dispositivos — ya sea fisico, en la nube o hibrido — es esencial para cualquier operacion seria de testing movil.&lt;/p&gt;</description></item><item><title>Deep Links y Universal Links</title><link>https://yrkan.com/es/course/module-07-mobile/deep-links-universal-links/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/deep-links-universal-links/</guid><description>&lt;h2 id="panorama-de-deep-links-y-universal-links"&gt;Panorama de Deep Links y Universal Links &lt;a href="#panorama-de-deep-links-y-universal-links" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Deep Links y Universal Links es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-deep-links-y-universal-links"&gt;Por Que Importa Deep Links y Universal Links &lt;a href="#por-que-importa-deep-links-y-universal-links" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Deep Links y Universal Links aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Distribucion de Apps: TestFlight y Firebase</title><link>https://yrkan.com/es/course/module-07-mobile/app-distribution-testflight-firebase/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/app-distribution-testflight-firebase/</guid><description>&lt;h2 id="panorama-de-distribucion-de-apps-testflight-y-firebase"&gt;Panorama de Distribucion de Apps: TestFlight y Firebase &lt;a href="#panorama-de-distribucion-de-apps-testflight-y-firebase" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Distribucion de Apps: TestFlight y Firebase es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-distribucion-de-apps-testflight-y-firebase"&gt;Por Que Importa Distribucion de Apps: TestFlight y Firebase &lt;a href="#por-que-importa-distribucion-de-apps-testflight-y-firebase" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Distribucion de Apps: TestFlight y Firebase aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Especificidades del Testing en Android</title><link>https://yrkan.com/es/course/module-07-mobile/android-testing-specifics/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/android-testing-specifics/</guid><description>&lt;h2 id="fundamentos-del-testing-en-android"&gt;Fundamentos del Testing en Android &lt;a href="#fundamentos-del-testing-en-android" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El ecosistema abierto de Android crea oportunidades y desafios para los testers. La libertad que permite a miles de fabricantes personalizar Android tambien crea el desafio de fragmentacion que define el QA en Android.&lt;/p&gt;
&lt;h2 id="ciclo-de-vida-del-activity"&gt;Ciclo de Vida del Activity &lt;a href="#ciclo-de-vida-del-activity" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El ciclo de vida del Activity es el concepto mas importante para testers Android. Los Activities (pantallas) pasan por transiciones de estado especificas que frecuentemente causan bugs.&lt;/p&gt;</description></item><item><title>Especificidades del Testing en iOS</title><link>https://yrkan.com/es/course/module-07-mobile/ios-testing-specifics/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/ios-testing-specifics/</guid><description>&lt;h2 id="fundamentos-del-testing-en-ios"&gt;Fundamentos del Testing en iOS &lt;a href="#fundamentos-del-testing-en-ios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de iOS requiere entender el ecosistema estrictamente controlado de Apple. A diferencia de Android donde los fabricantes pueden modificar el OS, cada dispositivo iOS ejecuta el sistema operativo sin modificar de Apple. Esta consistencia simplifica algunos aspectos pero introduce desafios unicos.&lt;/p&gt;
&lt;h2 id="ciclo-de-vida-de-apps-ios"&gt;Ciclo de Vida de Apps iOS &lt;a href="#ciclo-de-vida-de-apps-ios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Entender el ciclo de vida es critico para testers moviles porque muchos bugs ocurren durante las transiciones de estado.&lt;/p&gt;</description></item><item><title>Evaluacion del Modulo 7</title><link>https://yrkan.com/es/course/module-07-mobile/module-7-assessment/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/module-7-assessment/</guid><description>&lt;h2 id="panorama-de-la-evaluacion"&gt;Panorama de la Evaluacion &lt;a href="#panorama-de-la-evaluacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicitaciones por llegar al final del Modulo 7: Testing Movil. Esta evaluacion prueba tu comprension de todos los temas cubiertos en las lecciones 7.1 a 7.24.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Parte&lt;/th&gt;
 &lt;th&gt;Formato&lt;/th&gt;
 &lt;th&gt;Preguntas&lt;/th&gt;
 &lt;th&gt;Tiempo Estimado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 1&lt;/td&gt;
 &lt;td&gt;Quiz de opcion multiple&lt;/td&gt;
 &lt;td&gt;10 preguntas&lt;/td&gt;
 &lt;td&gt;10 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 2&lt;/td&gt;
 &lt;td&gt;Preguntas basadas en escenarios&lt;/td&gt;
 &lt;td&gt;3 escenarios&lt;/td&gt;
 &lt;td&gt;15 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 3&lt;/td&gt;
 &lt;td&gt;Ejercicio practico&lt;/td&gt;
 &lt;td&gt;1 ejercicio&lt;/td&gt;
 &lt;td&gt;20 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="como-usar-esta-evaluacion"&gt;Como Usar Esta Evaluacion &lt;a href="#como-usar-esta-evaluacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Parte 1: 10 puntos (1 punto por respuesta correcta)&lt;/li&gt;
&lt;li&gt;Parte 2: 15 puntos (5 puntos por escenario)&lt;/li&gt;
&lt;li&gt;Parte 3: 15 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Total: 40 puntos&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Puntuacion para aprobar: 28/40 (70%)&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="temas-cubiertos"&gt;Temas Cubiertos &lt;a href="#temas-cubiertos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Fundamentos de plataforma&lt;/strong&gt; — iOS vs Android, nativa/hibrida/multiplataforma&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Laboratorio de dispositivos&lt;/strong&gt; — Fisicos, cloud farms, estrategia de seleccion&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Especificidades&lt;/strong&gt; — Ciclo de vida iOS/Android, diferencias de fabricantes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing UI/UX&lt;/strong&gt; — Touch targets, gestos, layouts responsivos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conectividad&lt;/strong&gt; — Condiciones de red, modo offline, sincronizacion&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Push notifications&lt;/strong&gt; — Entrega, display, deep linking, permisos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Deep links&lt;/strong&gt; — Universal links, app links&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rendimiento&lt;/strong&gt; — Bateria, memoria, almacenamiento, profiling&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seguridad&lt;/strong&gt; — Almacenamiento de datos, seguridad de red, biometria&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Crash analytics&lt;/strong&gt; — Crashlytics, Sentry&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Monetizacion&lt;/strong&gt; — Compras in-app, suscripciones&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plataformas extendidas&lt;/strong&gt; — CarPlay, Android Auto, wearables&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Calidad&lt;/strong&gt; — A/B testing, distribucion, accesibilidad, localizacion&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="parte-1-quiz-de-opcion-multiple"&gt;Parte 1: Quiz de Opcion Multiple &lt;a href="#parte-1-quiz-de-opcion-multiple" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las preguntas del quiz estan en el frontmatter de esta leccion.&lt;/p&gt;</description></item><item><title>Perfilado de Rendimiento Movil</title><link>https://yrkan.com/es/course/module-07-mobile/mobile-performance-profiling/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/mobile-performance-profiling/</guid><description>&lt;h2 id="panorama-de-perfilado-de-rendimiento-movil"&gt;Panorama de Perfilado de Rendimiento Movil &lt;a href="#panorama-de-perfilado-de-rendimiento-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Perfilado de Rendimiento Movil es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-perfilado-de-rendimiento-movil"&gt;Por Que Importa Perfilado de Rendimiento Movil &lt;a href="#por-que-importa-perfilado-de-rendimiento-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Perfilado de Rendimiento Movil aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing A/B para Apps Moviles</title><link>https://yrkan.com/es/course/module-07-mobile/mobile-ab-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/mobile-ab-testing/</guid><description>&lt;h2 id="panorama-de-testing-ab-para-apps-moviles"&gt;Panorama de Testing A/B para Apps Moviles &lt;a href="#panorama-de-testing-ab-para-apps-moviles" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing A/B para Apps Moviles es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-ab-para-apps-moviles"&gt;Por Que Importa Testing A/B para Apps Moviles &lt;a href="#por-que-importa-testing-ab-para-apps-moviles" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing A/B para Apps Moviles aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Accesibilidad Movil</title><link>https://yrkan.com/es/course/module-07-mobile/mobile-accessibility-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/mobile-accessibility-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-accesibilidad-movil"&gt;Panorama de Testing de Accesibilidad Movil &lt;a href="#panorama-de-testing-de-accesibilidad-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Accesibilidad Movil es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-accesibilidad-movil"&gt;Por Que Importa Testing de Accesibilidad Movil &lt;a href="#por-que-importa-testing-de-accesibilidad-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Accesibilidad Movil aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Autenticacion Biometrica</title><link>https://yrkan.com/es/course/module-07-mobile/biometric-authentication-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/biometric-authentication-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-autenticacion-biometrica"&gt;Panorama de Testing de Autenticacion Biometrica &lt;a href="#panorama-de-testing-de-autenticacion-biometrica" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Autenticacion Biometrica es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-autenticacion-biometrica"&gt;Por Que Importa Testing de Autenticacion Biometrica &lt;a href="#por-que-importa-testing-de-autenticacion-biometrica" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Autenticacion Biometrica aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Bateria y Rendimiento</title><link>https://yrkan.com/es/course/module-07-mobile/battery-performance-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/battery-performance-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-bateria-y-rendimiento"&gt;Panorama de Testing de Bateria y Rendimiento &lt;a href="#panorama-de-testing-de-bateria-y-rendimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Bateria y Rendimiento es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-bateria-y-rendimiento"&gt;Por Que Importa Testing de Bateria y Rendimiento &lt;a href="#por-que-importa-testing-de-bateria-y-rendimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Bateria y Rendimiento aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de CarPlay y Android Auto</title><link>https://yrkan.com/es/course/module-07-mobile/carplay-android-auto/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/carplay-android-auto/</guid><description>&lt;h2 id="panorama-de-testing-de-carplay-y-android-auto"&gt;Panorama de Testing de CarPlay y Android Auto &lt;a href="#panorama-de-testing-de-carplay-y-android-auto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de CarPlay y Android Auto es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-carplay-y-android-auto"&gt;Por Que Importa Testing de CarPlay y Android Auto &lt;a href="#por-que-importa-testing-de-carplay-y-android-auto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de CarPlay y Android Auto aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Compras Dentro de la App</title><link>https://yrkan.com/es/course/module-07-mobile/in-app-purchase-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/in-app-purchase-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-compras-dentro-de-la-app"&gt;Panorama de Testing de Compras Dentro de la App &lt;a href="#panorama-de-testing-de-compras-dentro-de-la-app" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Compras Dentro de la App es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-compras-dentro-de-la-app"&gt;Por Que Importa Testing de Compras Dentro de la App &lt;a href="#por-que-importa-testing-de-compras-dentro-de-la-app" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Compras Dentro de la App aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Condiciones de Red</title><link>https://yrkan.com/es/course/module-07-mobile/network-conditions-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/network-conditions-testing/</guid><description>&lt;h2 id="por-que-importa-el-testing-de-red-en-movil"&gt;Por Que Importa el Testing de Red en Movil &lt;a href="#por-que-importa-el-testing-de-red-en-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los usuarios moviles experimentan un amplio rango de condiciones de red. Un usuario puede iniciar una transaccion en WiFi rapido, entrar a un ascensor (sin senal), salir a un estacionamiento (celular debil) y conducir lejos (cambiando torres).&lt;/p&gt;
&lt;h2 id="categorias-de-condiciones-de-red"&gt;Categorias de Condiciones de Red &lt;a href="#categorias-de-condiciones-de-red" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Condicion&lt;/th&gt;
 &lt;th&gt;Velocidad&lt;/th&gt;
 &lt;th&gt;Latencia&lt;/th&gt;
 &lt;th&gt;Escenario Real&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Sin red&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;N/A&lt;/td&gt;
 &lt;td&gt;Modo avion, subterraneo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;2G (EDGE)&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;50-200 Kbps&lt;/td&gt;
 &lt;td&gt;300-1000ms&lt;/td&gt;
 &lt;td&gt;Areas rurales&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;3G&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;0.5-5 Mbps&lt;/td&gt;
 &lt;td&gt;100-500ms&lt;/td&gt;
 &lt;td&gt;Areas suburbanas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;4G LTE&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;5-50 Mbps&lt;/td&gt;
 &lt;td&gt;30-100ms&lt;/td&gt;
 &lt;td&gt;Areas urbanas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;5G&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;50-1000+ Mbps&lt;/td&gt;
 &lt;td&gt;1-10ms&lt;/td&gt;
 &lt;td&gt;Areas urbanas selectas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;WiFi lento&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;1-5 Mbps&lt;/td&gt;
 &lt;td&gt;10-50ms&lt;/td&gt;
 &lt;td&gt;Cafeterias, hoteles, aeropuertos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="herramientas-de-throttling-de-red"&gt;Herramientas de Throttling de Red &lt;a href="#herramientas-de-throttling-de-red" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="ios-network-link-conditioner"&gt;iOS Network Link Conditioner &lt;a href="#ios-network-link-conditioner" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Settings &amp;gt; Developer &amp;gt; Network Link Conditioner con perfiles predefinidos.&lt;/p&gt;</description></item><item><title>Testing de Dispositivos Wearables</title><link>https://yrkan.com/es/course/module-07-mobile/wearable-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/wearable-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-dispositivos-wearables"&gt;Panorama de Testing de Dispositivos Wearables &lt;a href="#panorama-de-testing-de-dispositivos-wearables" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Dispositivos Wearables es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-dispositivos-wearables"&gt;Por Que Importa Testing de Dispositivos Wearables &lt;a href="#por-que-importa-testing-de-dispositivos-wearables" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Dispositivos Wearables aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Gestos y Toques</title><link>https://yrkan.com/es/course/module-07-mobile/gesture-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/gesture-testing/</guid><description>&lt;h2 id="entendiendo-los-gestos-moviles"&gt;Entendiendo los Gestos Moviles &lt;a href="#entendiendo-los-gestos-moviles" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los gestos moviles son la forma principal en que los usuarios interactuan con dispositivos tactiles. A diferencia de los clics en desktop, los gestos involucran movimiento continuo, presion variable, multiples dedos y contexto espacial.&lt;/p&gt;
&lt;h2 id="tipos-de-gestos-y-consideraciones-de-testing"&gt;Tipos de Gestos y Consideraciones de Testing &lt;a href="#tipos-de-gestos-y-consideraciones-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="gestos-de-tap"&gt;Gestos de Tap &lt;a href="#gestos-de-tap" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Gesto&lt;/th&gt;
 &lt;th&gt;Descripcion&lt;/th&gt;
 &lt;th&gt;Foco de Testing&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Single tap&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Toque rapido y soltar&lt;/td&gt;
 &lt;td&gt;Responsividad, acierto en target&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Double tap&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Dos taps rapidos&lt;/td&gt;
 &lt;td&gt;Sensibilidad de timing, conflicto zoom vs accion&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Long press&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Tocar y mantener&lt;/td&gt;
 &lt;td&gt;Umbral de duracion, timing de menu contextual&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="gestos-de-swipe"&gt;Gestos de Swipe &lt;a href="#gestos-de-swipe" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Gesto&lt;/th&gt;
 &lt;th&gt;Usos Comunes&lt;/th&gt;
 &lt;th&gt;Foco de Testing&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Swipe horizontal&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Navegacion de paginas, eliminar&lt;/td&gt;
 &lt;td&gt;Deteccion de direccion, umbral de distancia&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Swipe vertical&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Scrolling, pull-to-refresh&lt;/td&gt;
 &lt;td&gt;Rendimiento de scroll&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Edge swipe&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Navegacion del sistema (atras)&lt;/td&gt;
 &lt;td&gt;Conflicto con gestos de la app&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="gestos-multi-touch"&gt;Gestos Multi-Touch &lt;a href="#gestos-multi-touch" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Gesto&lt;/th&gt;
 &lt;th&gt;Usos Comunes&lt;/th&gt;
 &lt;th&gt;Foco de Testing&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Pinch&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Zoom in/out&lt;/td&gt;
 &lt;td&gt;Limites de escala, rendimiento&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Rotate&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Rotacion de imagen&lt;/td&gt;
 &lt;td&gt;Precision de deteccion de angulo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Two-finger swipe&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Navegacion de mapas&lt;/td&gt;
 &lt;td&gt;Interaccion con gestos de un dedo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="testing-de-acciones-de-swipe"&gt;Testing de Acciones de Swipe &lt;a href="#testing-de-acciones-de-swipe" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las acciones de swipe (swipe-to-delete, swipe-to-archive) son comunes pero frecuentemente tienen bugs.&lt;/p&gt;</description></item><item><title>Testing de Localizacion Movil</title><link>https://yrkan.com/es/course/module-07-mobile/mobile-localization-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/mobile-localization-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-localizacion-movil"&gt;Panorama de Testing de Localizacion Movil &lt;a href="#panorama-de-testing-de-localizacion-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Localizacion Movil es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-localizacion-movil"&gt;Por Que Importa Testing de Localizacion Movil &lt;a href="#por-que-importa-testing-de-localizacion-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Localizacion Movil aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Memoria y Almacenamiento</title><link>https://yrkan.com/es/course/module-07-mobile/memory-storage-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/memory-storage-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-memoria-y-almacenamiento"&gt;Panorama de Testing de Memoria y Almacenamiento &lt;a href="#panorama-de-testing-de-memoria-y-almacenamiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Memoria y Almacenamiento es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-memoria-y-almacenamiento"&gt;Por Que Importa Testing de Memoria y Almacenamiento &lt;a href="#por-que-importa-testing-de-memoria-y-almacenamiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Memoria y Almacenamiento aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Modo Offline y Sincronizacion</title><link>https://yrkan.com/es/course/module-07-mobile/offline-mode-sync-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/offline-mode-sync-testing/</guid><description>&lt;h2 id="entendiendo-la-funcionalidad-offline"&gt;Entendiendo la Funcionalidad Offline &lt;a href="#entendiendo-la-funcionalidad-offline" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las apps moviles deben funcionar cuando la red no esta disponible. El modo offline no es solo mostrar datos en cache — involucra sincronizacion de datos, resolucion de conflictos y mantener una experiencia fluida entre estados de conectividad.&lt;/p&gt;
&lt;h2 id="tipos-de-soporte-offline"&gt;Tipos de Soporte Offline &lt;a href="#tipos-de-soporte-offline" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Nivel&lt;/th&gt;
 &lt;th&gt;Descripcion&lt;/th&gt;
 &lt;th&gt;Ejemplo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Sin offline&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;App inutilizable sin red&lt;/td&gt;
 &lt;td&gt;Apps solo de streaming&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Cache de lectura&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Datos previamente cargados visibles&lt;/td&gt;
 &lt;td&gt;Apps de noticias&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Encolar acciones&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Acciones encoladas, ejecutadas al reconectar&lt;/td&gt;
 &lt;td&gt;Componer email&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Offline completo&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Funcionalidad completa, sincronizar despues&lt;/td&gt;
 &lt;td&gt;Apps de notas, mapas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="patrones-de-sincronizacion"&gt;Patrones de Sincronizacion &lt;a href="#patrones-de-sincronizacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="last-write-wins"&gt;Last-Write-Wins &lt;a href="#last-write-wins" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;El cambio mas reciente sobreescribe los anteriores. Simple pero puede causar perdida de datos.&lt;/p&gt;</description></item><item><title>Testing de Notificaciones Push</title><link>https://yrkan.com/es/course/module-07-mobile/push-notification-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/push-notification-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-notificaciones-push"&gt;Panorama de Testing de Notificaciones Push &lt;a href="#panorama-de-testing-de-notificaciones-push" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Notificaciones Push es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-notificaciones-push"&gt;Por Que Importa Testing de Notificaciones Push &lt;a href="#por-que-importa-testing-de-notificaciones-push" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Notificaciones Push aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de Seguridad Movil</title><link>https://yrkan.com/es/course/module-07-mobile/mobile-security-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/mobile-security-testing/</guid><description>&lt;h2 id="panorama-de-testing-de-seguridad-movil"&gt;Panorama de Testing de Seguridad Movil &lt;a href="#panorama-de-testing-de-seguridad-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Seguridad Movil es un aspecto critico de la calidad movil que requiere comprension de comportamientos especificos de plataforma, herramientas y expectativas del usuario.&lt;/p&gt;
&lt;h2 id="por-que-importa-testing-de-seguridad-movil"&gt;Por Que Importa Testing de Seguridad Movil &lt;a href="#por-que-importa-testing-de-seguridad-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones moviles operan en entornos que las aplicaciones de escritorio nunca encuentran. Testing de Seguridad Movil aborda los desafios unicos que surgen del hardware, software y patrones de uso moviles.&lt;/p&gt;</description></item><item><title>Testing de UI/UX Movil</title><link>https://yrkan.com/es/course/module-07-mobile/mobile-ui-ux-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/mobile-ui-ux-testing/</guid><description>&lt;h2 id="fundamentos-del-testing-de-uiux-movil"&gt;Fundamentos del Testing de UI/UX Movil &lt;a href="#fundamentos-del-testing-de-uiux-movil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de UI/UX movil va mucho mas alla de verificar que los elementos aparezcan en pantalla. Los dispositivos moviles introducen patrones de interaccion unicos — gestos tactiles, tamanos de pantalla variables, uso con una mano, visibilidad exterior y contextos de uso con frecuentes interrupciones.&lt;/p&gt;
&lt;h2 id="testing-de-touch-targets"&gt;Testing de Touch Targets &lt;a href="#testing-de-touch-targets" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los touch targets son las areas tappables de los elementos interactivos. A diferencia de los punteros de mouse que tienen precision de pixel, los dedos son dispositivos de entrada imprecisos.&lt;/p&gt;</description></item><item><title>Testing iOS vs Android</title><link>https://yrkan.com/es/course/module-07-mobile/ios-vs-android-testing/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-07-mobile/ios-vs-android-testing/</guid><description>&lt;h2 id="introduccion-al-testing-de-plataformas-moviles"&gt;Introduccion al Testing de Plataformas Moviles &lt;a href="#introduccion-al-testing-de-plataformas-moviles" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing movil es fundamentalmente diferente al testing web. A diferencia de los navegadores que comparten motores de renderizado y estandares web, iOS y Android son ecosistemas completamente separados con diferentes lenguajes de programacion, herramientas de desarrollo, guias de diseno y mecanismos de distribucion.&lt;/p&gt;
&lt;p&gt;Como ingeniero QA, entender estas diferencias no es opcional — impacta directamente tu estrategia de testing, la seleccion de herramientas y los tipos de bugs que encontraras.&lt;/p&gt;</description></item><item><title>Arquitectura REST</title><link>https://yrkan.com/es/course/module-06-api-backend/rest-architecture/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/rest-architecture/</guid><description>&lt;h2 id="que-es-rest"&gt;Que Es REST? &lt;a href="#que-es-rest" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;REST (Representational State Transfer) es un estilo arquitectonico para disenar aplicaciones en red, definido por Roy Fielding en su disertacion doctoral del 2000. No es un protocolo ni un estandar — es un conjunto de restricciones que, al aplicarse a servicios web, los hacen escalables, simples y confiables.&lt;/p&gt;
&lt;p&gt;REST se ha convertido en el enfoque dominante para APIs web porque aprovecha el protocolo HTTP existente, haciendolo facil de entender e implementar. Cuando las personas dicen &amp;ldquo;REST API&amp;rdquo; o &amp;ldquo;API RESTful&amp;rdquo;, se refieren a un servicio web que sigue los principios arquitectonicos REST.&lt;/p&gt;</description></item><item><title>Autenticacion de API: Keys, OAuth, JWT</title><link>https://yrkan.com/es/course/module-06-api-backend/api-authentication/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-authentication/</guid><description>&lt;h2 id="autenticacion-vs-autorizacion"&gt;Autenticacion vs. Autorizacion &lt;a href="#autenticacion-vs-autorizacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Antes de profundizar en los mecanismos, entiende los dos conceptos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Autenticacion (AuthN)&lt;/strong&gt; — &amp;ldquo;Quien eres?&amp;rdquo; Verificar la identidad del cliente que hace el request.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Autorizacion (AuthZ)&lt;/strong&gt; — &amp;ldquo;Que puedes hacer?&amp;rdquo; Determinar a que recursos y acciones tiene acceso el cliente autenticado.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Un usuario puede estar autenticado (logueado) pero no autorizado (sin permisos) para eliminar la cuenta de otro usuario. Testear ambos aspectos es critico.&lt;/p&gt;
&lt;h2 id="autenticacion-con-api-key"&gt;Autenticacion con API Key &lt;a href="#autenticacion-con-api-key" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La forma mas simple de autenticacion de API. El servidor emite una clave unica que el cliente incluye con cada request.&lt;/p&gt;</description></item><item><title>Colas de Mensajes: Kafka y RabbitMQ</title><link>https://yrkan.com/es/course/module-06-api-backend/message-queues-kafka-rabbitmq/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/message-queues-kafka-rabbitmq/</guid><description>&lt;h2 id="colas-de-mensajes-en-la-arquitectura-moderna"&gt;Colas de Mensajes en la Arquitectura Moderna &lt;a href="#colas-de-mensajes-en-la-arquitectura-moderna" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los microservicios se comunican asincrónicamente a través de colas de mensajes y plataformas de event streaming. En lugar de que el Servicio A llame directamente al Servicio B (HTTP sincrónico), el Servicio A publica un mensaje en una cola, y el Servicio B lo consume cuando está listo. Esto desacopla los servicios y mejora la resiliencia.&lt;/p&gt;
&lt;p&gt;Dos tecnologías dominantes sirven este propósito:&lt;/p&gt;</description></item><item><title>cURL para Testing de API</title><link>https://yrkan.com/es/course/module-06-api-backend/curl-for-api-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/curl-for-api-testing/</guid><description>&lt;h2 id="por-que-aprender-curl"&gt;Por Que Aprender cURL? &lt;a href="#por-que-aprender-curl" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;cURL (Client URL) es una herramienta de linea de comandos para transferir datos usando varios protocolos. Viene preinstalada en macOS y la mayoria de distribuciones Linux, y esta disponible para Windows. Todo QA engineer deberia conocer cURL porque:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Es universal&lt;/strong&gt; — disponible en cada servidor, contenedor y runner de CI/CD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Es scriptable&lt;/strong&gt; — facilmente integrable en scripts de shell y pipelines&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Es la lingua franca&lt;/strong&gt; — la documentacion de APIs frecuentemente provee ejemplos en cURL&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No requiere instalacion&lt;/strong&gt; — a diferencia de Postman, ya esta en tu maquina&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Es preciso&lt;/strong&gt; — controlas cada aspecto del request&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="verificando-tu-instalacion"&gt;Verificando Tu Instalacion &lt;a href="#verificando-tu-instalacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl --version
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# curl 8.7.1 (x86_64-apple-darwin23.0) ...&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="comandos-basicos-de-curl"&gt;Comandos Basicos de cURL &lt;a href="#comandos-basicos-de-curl" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="get-request"&gt;GET Request &lt;a href="#get-request" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# GET simple&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl https://jsonplaceholder.typicode.com/posts/1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# GET con headers&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -H &lt;span style="color:#e6db74"&gt;&amp;#34;Accept: application/json&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -H &lt;span style="color:#e6db74"&gt;&amp;#34;Authorization: Bearer token123&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; https://api.example.com/users
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="post-request"&gt;POST Request &lt;a href="#post-request" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# POST con body JSON&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -X POST &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -H &lt;span style="color:#e6db74"&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -d &lt;span style="color:#e6db74"&gt;&amp;#39;{&amp;#34;title&amp;#34;: &amp;#34;Nuevo Post&amp;#34;, &amp;#34;body&amp;#34;: &amp;#34;Contenido&amp;#34;, &amp;#34;userId&amp;#34;: 1}&amp;#39;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; https://jsonplaceholder.typicode.com/posts
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# POST con form data&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -X POST &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -d &lt;span style="color:#e6db74"&gt;&amp;#34;username=admin&amp;amp;password=secret&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; https://api.example.com/login
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="put-y-patch"&gt;PUT y PATCH &lt;a href="#put-y-patch" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# PUT — reemplazar recurso completo&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -X PUT &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -H &lt;span style="color:#e6db74"&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -d &lt;span style="color:#e6db74"&gt;&amp;#39;{&amp;#34;title&amp;#34;: &amp;#34;Actualizado&amp;#34;, &amp;#34;body&amp;#34;: &amp;#34;Nuevo contenido&amp;#34;, &amp;#34;userId&amp;#34;: 1}&amp;#39;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; https://jsonplaceholder.typicode.com/posts/1
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# PATCH — actualizacion parcial&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -X PATCH &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -H &lt;span style="color:#e6db74"&gt;&amp;#34;Content-Type: application/json&amp;#34;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; -d &lt;span style="color:#e6db74"&gt;&amp;#39;{&amp;#34;title&amp;#34;: &amp;#34;Solo Titulo Cambiado&amp;#34;}&amp;#39;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; https://jsonplaceholder.typicode.com/posts/1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="delete"&gt;DELETE &lt;a href="#delete" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -X DELETE https://jsonplaceholder.typicode.com/posts/1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="flags-esenciales-de-curl"&gt;Flags Esenciales de cURL &lt;a href="#flags-esenciales-de-curl" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Flag&lt;/th&gt;
 &lt;th&gt;Forma Larga&lt;/th&gt;
 &lt;th&gt;Proposito&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-X&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--request&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Metodo HTTP (GET, POST, PUT, DELETE)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-H&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--header&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Agregar header al request&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-d&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--data&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Datos del body del request&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-v&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--verbose&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Mostrar detalles completos del request/response&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-s&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--silent&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Ocultar barra de progreso&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-o&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--output&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Guardar respuesta en archivo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-w&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--write-out&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Formato de salida personalizado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-L&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--location&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Seguir redirecciones&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-k&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--insecure&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Saltar verificacion SSL&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-u&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--user&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Basic auth (user:password)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-i&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--include&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Mostrar headers de respuesta&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;-I&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;--head&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;HEAD request (solo headers)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="debugging-con-curl"&gt;Debugging con cURL &lt;a href="#debugging-con-curl" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="salida-verbose"&gt;Salida Verbose &lt;a href="#salida-verbose" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;El flag &lt;code&gt;-v&lt;/code&gt; es tu mejor amigo para debugging:&lt;/p&gt;</description></item><item><title>Estrategia de Testing de Microservicios</title><link>https://yrkan.com/es/course/module-06-api-backend/microservices-testing-strategy/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/microservices-testing-strategy/</guid><description>&lt;h2 id="el-desafío-del-testing-de-microservicios"&gt;El Desafío del Testing de Microservicios &lt;a href="#el-desaf%c3%ado-del-testing-de-microservicios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las arquitecturas de microservicios dividen una aplicación monolítica en docenas o cientos de servicios desplegables independientemente. Cada servicio maneja sus propios datos, se comunica a través de la red y puede estar escrito en un lenguaje diferente. Esto trae flexibilidad de deployment pero aumenta dramáticamente la complejidad del testing.&lt;/p&gt;
&lt;p&gt;En un monolito, pruebas una aplicación. En microservicios, pruebas muchos servicios y las interacciones entre ellos. Un bug puede no existir en ningún servicio individual — puede aparecer solo cuando el Servicio A envía un mensaje específico al Servicio B, que dispara el Servicio C.&lt;/p&gt;</description></item><item><title>Evaluación del Módulo 6</title><link>https://yrkan.com/es/course/module-06-api-backend/module-6-assessment/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/module-6-assessment/</guid><description>&lt;h2 id="visión-general-de-la-evaluación"&gt;Visión General de la Evaluación &lt;a href="#visi%c3%b3n-general-de-la-evaluaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicitaciones por llegar al final del Módulo 6: Testing de API y Backend. Esta evaluación cubre todos los temas de las lecciones 6.1 a 6.29.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Parte&lt;/th&gt;
 &lt;th&gt;Formato&lt;/th&gt;
 &lt;th&gt;Preguntas&lt;/th&gt;
 &lt;th&gt;Tiempo Estimado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 1&lt;/td&gt;
 &lt;td&gt;Quiz opción múltiple&lt;/td&gt;
 &lt;td&gt;10 preguntas&lt;/td&gt;
 &lt;td&gt;10 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 2&lt;/td&gt;
 &lt;td&gt;Preguntas basadas en escenarios&lt;/td&gt;
 &lt;td&gt;3 escenarios&lt;/td&gt;
 &lt;td&gt;20 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 3&lt;/td&gt;
 &lt;td&gt;Ejercicio práctico&lt;/td&gt;
 &lt;td&gt;1 ejercicio&lt;/td&gt;
 &lt;td&gt;30 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Puntuación:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Parte 1: 10 puntos&lt;/li&gt;
&lt;li&gt;Parte 2: 15 puntos&lt;/li&gt;
&lt;li&gt;Parte 3: 15 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Total: 40 puntos&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Aprobación: 28/40 (70%)&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="temas-cubiertos"&gt;Temas Cubiertos &lt;a href="#temas-cubiertos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Performance Testing de API&lt;/li&gt;
&lt;li&gt;Seguridad de API (OWASP Top 10)&lt;/li&gt;
&lt;li&gt;Testing de Microservicios&lt;/li&gt;
&lt;li&gt;Service Mesh&lt;/li&gt;
&lt;li&gt;Colas de Mensajes (Kafka, RabbitMQ)&lt;/li&gt;
&lt;li&gt;Arquitectura Event-Driven&lt;/li&gt;
&lt;li&gt;Testing de Base de Datos SQL&lt;/li&gt;
&lt;li&gt;Testing NoSQL&lt;/li&gt;
&lt;li&gt;Testing ETL&lt;/li&gt;
&lt;li&gt;Migración de Datos&lt;/li&gt;
&lt;li&gt;Webhooks&lt;/li&gt;
&lt;li&gt;Integraciones de Terceros&lt;/li&gt;
&lt;li&gt;Contract Testing&lt;/li&gt;
&lt;li&gt;Documentación de API&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="parte-1-quiz"&gt;Parte 1: Quiz &lt;a href="#parte-1-quiz" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las preguntas del quiz están en el frontmatter de esta lección. Completa el quiz antes de las Partes 2 y 3.&lt;/p&gt;</description></item><item><title>Fundamentos del Testing de API</title><link>https://yrkan.com/es/course/module-06-api-backend/api-testing-fundamentals/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-testing-fundamentals/</guid><description>&lt;h2 id="que-es-una-api"&gt;Que Es una API? &lt;a href="#que-es-una-api" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una API (Application Programming Interface) es un contrato entre dos sistemas de software. Define como un sistema puede solicitar datos o acciones de otro y en que formato vendra la respuesta. Piensa en ella como un mesero en un restaurante: tu (el cliente) haces un pedido, el mesero (la API) lo lleva a la cocina (el servidor), y te trae tu comida (la respuesta).&lt;/p&gt;
&lt;p&gt;En el desarrollo de software moderno, las APIs estan en todas partes. Cuando consultas el clima en tu celular, la app envia un API request a un servicio meteorologico. Cuando inicias sesion con Google en un sitio de terceros, las APIs de OAuth manejan la autenticacion. Cuando tu app bancaria muestra tu saldo, llama a la API del backend del banco.&lt;/p&gt;</description></item><item><title>Manejo de Errores de API</title><link>https://yrkan.com/es/course/module-06-api-backend/api-error-handling/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-error-handling/</guid><description>&lt;h2 id="por-que-importa-el-testing-de-manejo-de-errores"&gt;Por Que Importa el Testing de Manejo de Errores &lt;a href="#por-que-importa-el-testing-de-manejo-de-errores" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cuando una API funciona perfectamente, el testing es sencillo. El verdadero desafio — y donde se esconden la mayoria de los bugs — esta en como la API maneja cuando las cosas salen mal. El testing de manejo de errores verifica que la API falle graciosamente, proporcione informacion util y no exponga vulnerabilidades.&lt;/p&gt;
&lt;p&gt;En produccion en companias como Google, la calidad del manejo de errores impacta directamente la velocidad de debugging. Un mensaje de error claro como &amp;ldquo;El campo &amp;rsquo;email&amp;rsquo; debe ser una direccion de email valida&amp;rdquo; ahorra horas comparado con un generico &amp;ldquo;Bad Request.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Metodos HTTP, Codigos de Estado y Cabeceras</title><link>https://yrkan.com/es/course/module-06-api-backend/http-methods-status-headers/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/http-methods-status-headers/</guid><description>&lt;h2 id="metodos-http"&gt;Metodos HTTP &lt;a href="#metodos-http" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los metodos HTTP (tambien llamados verbos) definen la accion a realizar sobre un recurso. Entenderlos en profundidad es fundamental para el testing de API porque usar el metodo incorrecto o testear el comportamiento equivocado es uno de los errores mas comunes.&lt;/p&gt;
&lt;h3 id="get--recuperar-datos"&gt;GET — Recuperar Datos &lt;a href="#get--recuperar-datos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los GET requests recuperan datos sin modificar nada en el servidor. Son tanto &lt;strong&gt;seguros&lt;/strong&gt; (sin efectos secundarios) como &lt;strong&gt;idempotentes&lt;/strong&gt; (mismo resultado sin importar cuantas veces se llame).&lt;/p&gt;</description></item><item><title>Mocking de API con WireMock</title><link>https://yrkan.com/es/course/module-06-api-backend/api-mocking-wiremock/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-mocking-wiremock/</guid><description>&lt;h2 id="por-que-mockear-apis"&gt;Por Que Mockear APIs? &lt;a href="#por-que-mockear-apis" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El mocking de API crea versiones simuladas de APIs reales que retornan respuestas predefinidas. Es esencial en desarrollo moderno porque:&lt;/p&gt;
&lt;h3 id="escenarios-comunes-para-mocking"&gt;Escenarios Comunes para Mocking &lt;a href="#escenarios-comunes-para-mocking" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;API de terceros no disponible&lt;/strong&gt; — el sandbox del proveedor de pagos esta caido, pero necesitas testear checkout&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;API en desarrollo&lt;/strong&gt; — el equipo de backend no ha terminado el endpoint&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduccion de costos&lt;/strong&gt; — llamar APIs de pago miles de veces es costoso&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing deterministico&lt;/strong&gt; — APIs reales pueden retornar datos diferentes; mocks retornan datos consistentes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Simulacion de edge cases&lt;/strong&gt; — dificil provocar un 500 en una API real; mocks pueden simular cualquier respuesta&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing de performance&lt;/strong&gt; — simular respuestas lentas, timeouts y errores de red&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Desarrollo offline&lt;/strong&gt; — desarrolladores pueden trabajar sin conectividad&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="stubs-vs-mocks-vs-fakes"&gt;Stubs vs. Mocks vs. Fakes &lt;a href="#stubs-vs-mocks-vs-fakes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Termino&lt;/th&gt;
 &lt;th&gt;Definicion&lt;/th&gt;
 &lt;th&gt;Ejemplo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Stub&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Retorna respuestas predefinidas&lt;/td&gt;
 &lt;td&gt;Retorna &lt;code&gt;{id: 1, name: &amp;quot;Alice&amp;quot;}&lt;/code&gt; para cualquier GET /users/1&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Mock&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Stub + verifica expectativas&lt;/td&gt;
 &lt;td&gt;Igual al stub, pero verifica que el request se hizo exactamente una vez&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Fake&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Implementacion simplificada&lt;/td&gt;
 &lt;td&gt;Base de datos en memoria en vez de PostgreSQL real&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="introduccion-a-wiremock"&gt;Introduccion a WireMock &lt;a href="#introduccion-a-wiremock" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;WireMock es la herramienta de mocking de API mas popular en el ecosistema Java, pero funciona con cualquier lenguaje via su API HTTP o servidor standalone.&lt;/p&gt;</description></item><item><title>Postman: De Principiante a Profesional</title><link>https://yrkan.com/es/course/module-06-api-backend/postman-beginner-to-pro/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/postman-beginner-to-pro/</guid><description>&lt;h2 id="comenzando-con-postman"&gt;Comenzando con Postman &lt;a href="#comenzando-con-postman" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Postman es la herramienta mas popular para testing de API, utilizada por mas de 30 millones de desarrolladores y testers en todo el mundo. Proporciona una interfaz visual para enviar requests HTTP, inspeccionar responses y escribir aserciones de test automatizadas — todo sin escribir codigo.&lt;/p&gt;
&lt;h3 id="instalacion"&gt;Instalacion &lt;a href="#instalacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Descarga Postman desde &lt;a href="https://www.postman.com/downloads/"&gt;postman.com/downloads&lt;/a&gt;. Esta disponible para Windows, macOS y Linux. Aunque existe una version web, la app de escritorio ofrece mejor rendimiento y funcionalidades adicionales como proxies locales y gestion de certificados.&lt;/p&gt;</description></item><item><title>Seguridad de API: OWASP API Top 10</title><link>https://yrkan.com/es/course/module-06-api-backend/api-security-owasp/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-security-owasp/</guid><description>&lt;h2 id="el-owasp-api-security-top-10"&gt;El OWASP API Security Top 10 &lt;a href="#el-owasp-api-security-top-10" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Open Web Application Security Project (OWASP) mantiene una lista de los riesgos de seguridad más críticos para APIs. La edición 2023 refleja el panorama actual de amenazas para APIs. Como ingeniero QA, entender estas vulnerabilidades te ayuda a diseñar casos de prueba que detecten fallas de seguridad antes de que lleguen a producción.&lt;/p&gt;
&lt;p&gt;Las APIs son la superficie de ataque principal de las aplicaciones modernas. A diferencia de las aplicaciones web donde un navegador aplica cierta seguridad, los clientes de API pueden enviar cualquier solicitud — haciendo las APIs especialmente vulnerables cuando la validación del lado del servidor es débil.&lt;/p&gt;</description></item><item><title>Testing de Arquitectura Dirigida por Eventos</title><link>https://yrkan.com/es/course/module-06-api-backend/event-driven-architecture/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/event-driven-architecture/</guid><description>&lt;h2 id="visión-general-de-arquitectura-event-driven"&gt;Visión General de Arquitectura Event-Driven &lt;a href="#visi%c3%b3n-general-de-arquitectura-event-driven" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la arquitectura event-driven (EDA), los servicios se comunican produciendo y consumiendo eventos en lugar de hacer llamadas API directas. Cuando algo sucede en el Servicio A (un usuario realiza un pedido), publica un evento. Otros servicios reaccionan a ese evento independientemente.&lt;/p&gt;
&lt;p&gt;Este enfoque permite acoplamiento débil, alta escalabilidad y resiliencia — pero introduce desafíos de testing que no existen en sistemas sincrónicios: consistencia eventual, orden de eventos, entrega duplicada y modos de falla complejos.&lt;/p&gt;</description></item><item><title>Testing de Bases de Datos SQL</title><link>https://yrkan.com/es/course/module-06-api-backend/sql-database-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/sql-database-testing/</guid><description>&lt;h2 id="por-qué-probar-bases-de-datos-directamente"&gt;¿Por Qué Probar Bases de Datos Directamente? &lt;a href="#por-qu%c3%a9-probar-bases-de-datos-directamente" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los tests de API verifican lo que la API retorna, pero no verifican lo que realmente se almacena en la base de datos. Una API podría retornar una respuesta exitosa mientras los datos escritos son incorrectos, incompletos o violan constraints.&lt;/p&gt;
&lt;p&gt;El testing de base de datos detecta problemas que los tests de API no capturan:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Datos escritos en la tabla o columna incorrecta&lt;/li&gt;
&lt;li&gt;Enforcement de constraints faltante o incorrecto&lt;/li&gt;
&lt;li&gt;Efectos secundarios de triggers no reflejados en respuestas de API&lt;/li&gt;
&lt;li&gt;Problemas de rendimiento de índices con volúmenes de datos realistas&lt;/li&gt;
&lt;li&gt;Violaciones de aislamiento de transacciones causando corrupción de datos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="sql-esencial-para-testers"&gt;SQL Esencial para Testers &lt;a href="#sql-esencial-para-testers" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="verificando-datos-después-de-llamadas-api"&gt;Verificando Datos Después de Llamadas API &lt;a href="#verificando-datos-despu%c3%a9s-de-llamadas-api" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Después de llamar un endpoint de API, consulta la base de datos para confirmar la operación:&lt;/p&gt;</description></item><item><title>Testing de Contratos con Pact</title><link>https://yrkan.com/es/course/module-06-api-backend/contract-testing-pact/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/contract-testing-pact/</guid><description>&lt;h2 id="por-qué-contract-testing"&gt;¿Por Qué Contract Testing? &lt;a href="#por-qu%c3%a9-contract-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En microservicios, los servicios se desarrollan y despliegan independientemente. Sin contract testing, dependes de integration tests (lentos y frágiles), documentación (puede estar desactualizada) o esperanza.&lt;/p&gt;
&lt;p&gt;Contract testing verifica que los servicios pueden comunicarse correctamente sin necesitar que todos estén ejecutándose al mismo tiempo.&lt;/p&gt;
&lt;h2 id="cómo-funciona-pact"&gt;Cómo Funciona Pact &lt;a href="#c%c3%b3mo-funciona-pact" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Pact usa un enfoque consumer-driven: el consumidor define lo que espera, Pact genera un contrato, el proveedor lo verifica.&lt;/p&gt;</description></item><item><title>Testing de Documentación de API</title><link>https://yrkan.com/es/course/module-06-api-backend/api-documentation-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-documentation-testing/</guid><description>&lt;h2 id="por-qué-probar-la-documentación-de-api"&gt;¿Por Qué Probar la Documentación de API? &lt;a href="#por-qu%c3%a9-probar-la-documentaci%c3%b3n-de-api" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La documentación es un contrato con los consumidores. Cuando dice que &lt;code&gt;GET /users&lt;/code&gt; retorna un JSON con &lt;code&gt;name&lt;/code&gt; y &lt;code&gt;email&lt;/code&gt;, los consumidores construyen sus integraciones basándose en esa promesa. Si la API retorna &lt;code&gt;username&lt;/code&gt; en vez de &lt;code&gt;name&lt;/code&gt;, toda integración se rompe.&lt;/p&gt;
&lt;h2 id="tipos-de-tests-de-documentación"&gt;Tipos de Tests de Documentación &lt;a href="#tipos-de-tests-de-documentaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-validez-de-la-especificación"&gt;1. Validez de la Especificación &lt;a href="#1-validez-de-la-especificaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Verifica que el spec OpenAPI/Swagger es válido:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;npx @redocly/cli lint openapi.yaml
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2-completitud-de-la-documentación"&gt;2. Completitud de la Documentación &lt;a href="#2-completitud-de-la-documentaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Verifica que cada endpoint esté documentado con descripciones, parámetros, respuestas, ejemplos y requisitos de autenticación.&lt;/p&gt;</description></item><item><title>Testing de GraphQL</title><link>https://yrkan.com/es/course/module-06-api-backend/graphql-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/graphql-testing/</guid><description>&lt;h2 id="que-es-graphql"&gt;Que Es GraphQL? &lt;a href="#que-es-graphql" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;GraphQL es un lenguaje de consulta para APIs desarrollado por Facebook (Meta) en 2012. A diferencia de REST donde el servidor define que datos retorna cada endpoint, GraphQL permite al cliente especificar exactamente que campos necesita.&lt;/p&gt;
&lt;h3 id="graphql-vs-rest"&gt;GraphQL vs. REST &lt;a href="#graphql-vs-rest" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Caracteristica&lt;/th&gt;
 &lt;th&gt;REST&lt;/th&gt;
 &lt;th&gt;GraphQL&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Endpoints&lt;/td&gt;
 &lt;td&gt;Multiples (/users, /posts)&lt;/td&gt;
 &lt;td&gt;Uno solo (/graphql)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Obtencion de datos&lt;/td&gt;
 &lt;td&gt;Servidor decide la forma&lt;/td&gt;
 &lt;td&gt;Cliente especifica campos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Over-fetching&lt;/td&gt;
 &lt;td&gt;Comun&lt;/td&gt;
 &lt;td&gt;Eliminado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Under-fetching&lt;/td&gt;
 &lt;td&gt;Requiere multiples requests&lt;/td&gt;
 &lt;td&gt;Resuelto con queries anidados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Versionado&lt;/td&gt;
 &lt;td&gt;URL/header&lt;/td&gt;
 &lt;td&gt;Evolucion de schema&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Caching&lt;/td&gt;
 &lt;td&gt;HTTP cache integrado&lt;/td&gt;
 &lt;td&gt;Mas complejo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="conceptos-fundamentales"&gt;Conceptos Fundamentales &lt;a href="#conceptos-fundamentales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Queries&lt;/strong&gt; — leer datos (equivalente a GET):&lt;/p&gt;</description></item><item><title>Testing de gRPC</title><link>https://yrkan.com/es/course/module-06-api-backend/grpc-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/grpc-testing/</guid><description>&lt;h2 id="que-es-grpc"&gt;Que Es gRPC? &lt;a href="#que-es-grpc" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;gRPC (Google Remote Procedure Call) es un framework RPC de alto rendimiento. Usa HTTP/2 para transporte, Protocol Buffers para serializacion y provee streaming bidireccional, control de flujo y autenticacion integrada.&lt;/p&gt;
&lt;h3 id="grpc-vs-rest"&gt;gRPC vs. REST &lt;a href="#grpc-vs-rest" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Caracteristica&lt;/th&gt;
 &lt;th&gt;REST&lt;/th&gt;
 &lt;th&gt;gRPC&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Protocolo&lt;/td&gt;
 &lt;td&gt;HTTP/1.1 o HTTP/2&lt;/td&gt;
 &lt;td&gt;Solo HTTP/2&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Formato&lt;/td&gt;
 &lt;td&gt;JSON (texto)&lt;/td&gt;
 &lt;td&gt;Protobuf (binario)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Contrato&lt;/td&gt;
 &lt;td&gt;Opcional (OpenAPI)&lt;/td&gt;
 &lt;td&gt;Requerido (.proto)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Streaming&lt;/td&gt;
 &lt;td&gt;Limitado (WebSocket)&lt;/td&gt;
 &lt;td&gt;Integrado (4 patrones)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Generacion de codigo&lt;/td&gt;
 &lt;td&gt;Opcional&lt;/td&gt;
 &lt;td&gt;Integrada&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Performance&lt;/td&gt;
 &lt;td&gt;Buena&lt;/td&gt;
 &lt;td&gt;Excelente (2-10x mas rapido)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Caso de uso&lt;/td&gt;
 &lt;td&gt;APIs publicas, web&lt;/td&gt;
 &lt;td&gt;Microservicios, movil&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="protocol-buffers"&gt;Protocol Buffers &lt;a href="#protocol-buffers" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los archivos &lt;code&gt;.proto&lt;/code&gt; definen el contrato de la API:&lt;/p&gt;</description></item><item><title>Testing de Integración con Terceros</title><link>https://yrkan.com/es/course/module-06-api-backend/third-party-integration-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/third-party-integration-testing/</guid><description>&lt;h2 id="el-desafío-de-las-integraciones-de-terceros"&gt;El Desafío de las Integraciones de Terceros &lt;a href="#el-desaf%c3%ado-de-las-integraciones-de-terceros" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones modernas dependen de servicios externos: procesadores de pago, proveedores de email, servicios cloud, autenticación y más. Probar estas integraciones es desafiante porque no controlas el servicio externo.&lt;/p&gt;
&lt;h2 id="ambientes-sandbox-y-modo-test"&gt;Ambientes Sandbox y Modo Test &lt;a href="#ambientes-sandbox-y-modo-test" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La mayoría de proveedores ofrecen ambientes sandbox o de test. Usa las credenciales de test para evitar transacciones reales.&lt;/p&gt;
&lt;h2 id="estrategias-de-testing"&gt;Estrategias de Testing &lt;a href="#estrategias-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="estrategia-1-testing-sandbox"&gt;Estrategia 1: Testing Sandbox &lt;a href="#estrategia-1-testing-sandbox" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Usa el sandbox del proveedor para integration testing realista.&lt;/p&gt;</description></item><item><title>Testing de Limites de Peticiones</title><link>https://yrkan.com/es/course/module-06-api-backend/rate-limiting-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/rate-limiting-testing/</guid><description>&lt;h2 id="que-es-rate-limiting"&gt;Que Es Rate Limiting? &lt;a href="#que-es-rate-limiting" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Rate limiting controla cuantos requests un cliente puede hacer a una API dentro de una ventana de tiempo. Protege servidores del abuso, asegura uso justo y previene ataques de denegacion de servicio. Como tester, necesitas verificar que los rate limits estan correctamente implementados y que la API comunica los limites claramente.&lt;/p&gt;
&lt;h3 id="por-que-importa-el-rate-limiting"&gt;Por Que Importa el Rate Limiting &lt;a href="#por-que-importa-el-rate-limiting" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Sin rate limiting, un solo cliente podria sobrecargar el servidor. Escenarios del mundo real incluyen:&lt;/p&gt;</description></item><item><title>Testing de Migración de Datos</title><link>https://yrkan.com/es/course/module-06-api-backend/data-migration-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/data-migration-testing/</guid><description>&lt;h2 id="por-qué-importa-el-testing-de-migración-de-datos"&gt;Por Qué Importa el Testing de Migración de Datos &lt;a href="#por-qu%c3%a9-importa-el-testing-de-migraci%c3%b3n-de-datos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La migración de datos mueve datos de un sistema a otro — frecuentemente de una base de datos legacy a una plataforma moderna. Son operaciones de alto riesgo porque:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La pérdida de datos puede ser catastrófica e irreversible.&lt;/li&gt;
&lt;li&gt;Las diferencias de schema requieren transformaciones complejas.&lt;/li&gt;
&lt;li&gt;El downtime impacta directamente las operaciones del negocio.&lt;/li&gt;
&lt;li&gt;Los datos migrados pueden comportarse diferente en el nuevo sistema.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tipos-de-migración"&gt;Tipos de Migración &lt;a href="#tipos-de-migraci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tipo&lt;/th&gt;
 &lt;th&gt;Descripción&lt;/th&gt;
 &lt;th&gt;Nivel de Riesgo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Big bang&lt;/td&gt;
 &lt;td&gt;Todos los datos migrados de una vez en ventana de mantenimiento&lt;/td&gt;
 &lt;td&gt;Alto&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Trickle&lt;/td&gt;
 &lt;td&gt;Datos migrados incrementalmente en el tiempo&lt;/td&gt;
 &lt;td&gt;Medio&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ejecución paralela&lt;/td&gt;
 &lt;td&gt;Ambos sistemas corren simultáneamente con datos sincronizados&lt;/td&gt;
 &lt;td&gt;Bajo pero costoso&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Blue-green&lt;/td&gt;
 &lt;td&gt;Nuevo sistema preparado completamente, luego se cambia tráfico&lt;/td&gt;
 &lt;td&gt;Medio&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="el-proceso-de-testing-de-migración"&gt;El Proceso de Testing de Migración &lt;a href="#el-proceso-de-testing-de-migraci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="fase-1-análisis-pre-migración"&gt;Fase 1: Análisis Pre-Migración &lt;a href="#fase-1-an%c3%a1lisis-pre-migraci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Antes de escribir tests, analiza la migración y crea un documento de mapeo.&lt;/p&gt;</description></item><item><title>Testing de Operaciones CRUD</title><link>https://yrkan.com/es/course/module-06-api-backend/crud-operations-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/crud-operations-testing/</guid><description>&lt;h2 id="entendiendo-crud"&gt;Entendiendo CRUD &lt;a href="#entendiendo-crud" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;CRUD significa Create, Read, Update, Delete — las cuatro operaciones basicas para almacenamiento persistente de datos. Casi cada endpoint de API mapea a una de estas operaciones:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;CRUD&lt;/th&gt;
 &lt;th&gt;Metodo HTTP&lt;/th&gt;
 &lt;th&gt;Ejemplo&lt;/th&gt;
 &lt;th&gt;Status Tipico&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Create&lt;/td&gt;
 &lt;td&gt;POST&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;POST /users&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;201 Created&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Read&lt;/td&gt;
 &lt;td&gt;GET&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;GET /users/42&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;200 OK&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Update&lt;/td&gt;
 &lt;td&gt;PUT / PATCH&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;PUT /users/42&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;200 OK&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Delete&lt;/td&gt;
 &lt;td&gt;DELETE&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;DELETE /users/42&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;204 No Content&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Testear operaciones CRUD sistematicamente asegura que la API maneje correctamente todo el ciclo de vida de un recurso — desde la creacion hasta la eliminacion.&lt;/p&gt;</description></item><item><title>Testing de Rendimiento de API</title><link>https://yrkan.com/es/course/module-06-api-backend/api-performance-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-performance-testing/</guid><description>&lt;h2 id="por-qué-importa-el-performance-testing-de-api"&gt;Por Qué Importa el Performance Testing de API &lt;a href="#por-qu%c3%a9-importa-el-performance-testing-de-api" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Toda aplicación moderna depende de APIs. Cuando una API se vuelve lenta, toda la experiencia de usuario se degrada — las páginas tardan más en cargar, las apps móviles se congelan y las integraciones generan timeouts. El performance testing de API asegura que tus endpoints puedan manejar el tráfico esperado y los picos sin degradar la experiencia del usuario.&lt;/p&gt;
&lt;p&gt;A diferencia del performance testing de UI, el testing de rendimiento de API aísla el backend. Eliminas el rendering del navegador, la variabilidad de red y el código frontend de la ecuación. Esto te da mediciones precisas de cómo tu servidor procesa las solicitudes.&lt;/p&gt;</description></item><item><title>Testing de Service Mesh</title><link>https://yrkan.com/es/course/module-06-api-backend/service-mesh-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/service-mesh-testing/</guid><description>&lt;h2 id="qué-es-un-service-mesh"&gt;¿Qué Es un Service Mesh? &lt;a href="#qu%c3%a9-es-un-service-mesh" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un service mesh es una capa de infraestructura que gestiona la comunicación entre microservicios. En lugar de que cada servicio implemente su propia lógica de retry, circuit breakers y encriptación, estas preocupaciones son manejadas por un proxy (sidecar) que se ejecuta junto a cada servicio.&lt;/p&gt;
&lt;p&gt;Las implementaciones más comunes de service mesh son:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Service Mesh&lt;/th&gt;
 &lt;th&gt;Proxy&lt;/th&gt;
 &lt;th&gt;Características Clave&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Istio&lt;/td&gt;
 &lt;td&gt;Envoy&lt;/td&gt;
 &lt;td&gt;Full-featured, ampliamente adoptado, complejo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Linkerd&lt;/td&gt;
 &lt;td&gt;linkerd2-proxy&lt;/td&gt;
 &lt;td&gt;Ligero, basado en Rust, más simple&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Consul Connect&lt;/td&gt;
 &lt;td&gt;Envoy&lt;/td&gt;
 &lt;td&gt;Integración con ecosistema HashiCorp&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="cómo-funciona"&gt;Cómo Funciona &lt;a href="#c%c3%b3mo-funciona" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;┌──────────────────┐ ┌──────────────────┐
│ Servicio A │ │ Servicio B │
│ ┌──────────────┐│ │┌──────────────┐ │
│ │ App Code ││ ││ App Code │ │
│ └──────┬───────┘│ │└──────▲───────┘ │
│ │ │ │ │ │
│ ┌──────▼───────┐│ │┌──────┴───────┐ │
│ │ Sidecar │├────▶││ Sidecar │ │
│ │ Proxy ││ ││ Proxy │ │
│ └──────────────┘│ │└──────────────┘ │
└──────────────────┘ └──────────────────┘
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Todo el tráfico entre servicios fluye a través de los sidecar proxies. El control plane del mesh configura estos proxies con reglas de routing, políticas de seguridad y configuraciones de observabilidad.&lt;/p&gt;</description></item><item><title>Testing de SOAP y XML</title><link>https://yrkan.com/es/course/module-06-api-backend/soap-xml-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/soap-xml-testing/</guid><description>&lt;h2 id="que-es-soap"&gt;Que Es SOAP? &lt;a href="#que-es-soap" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;SOAP (Simple Object Access Protocol) es un protocolo de mensajeria para intercambiar datos estructurados. Usa XML para formateo de mensajes y tipicamente corre sobre HTTP, aunque puede usar otros protocolos como SMTP.&lt;/p&gt;
&lt;p&gt;SOAP fue la tecnologia dominante antes de REST. Mientras las APIs nuevas usan REST o GraphQL, SOAP sigue siendo critico en ambientes enterprise.&lt;/p&gt;
&lt;h3 id="donde-se-sigue-usando-soap"&gt;Donde Se Sigue Usando SOAP &lt;a href="#donde-se-sigue-usando-soap" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Banca y finanzas&lt;/strong&gt; — procesamiento de pagos, comunicacion interbancaria&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Salud&lt;/strong&gt; — integraciones HL7/FHIR, reclamos de seguros&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gobierno&lt;/strong&gt; — declaracion de impuestos, reportes regulatorios&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enterprise&lt;/strong&gt; — SAP, Salesforce SOAP API, sistemas CRM/ERP legacy&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Telecomunicaciones&lt;/strong&gt; — aprovisionamiento, sistemas de facturacion&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="soap-vs-rest"&gt;SOAP vs. REST &lt;a href="#soap-vs-rest" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Caracteristica&lt;/th&gt;
 &lt;th&gt;SOAP&lt;/th&gt;
 &lt;th&gt;REST&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Formato&lt;/td&gt;
 &lt;td&gt;Solo XML&lt;/td&gt;
 &lt;td&gt;JSON, XML, otros&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Contrato&lt;/td&gt;
 &lt;td&gt;Requerido (WSDL)&lt;/td&gt;
 &lt;td&gt;Opcional (OpenAPI)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Seguridad&lt;/td&gt;
 &lt;td&gt;WS-Security (integrado)&lt;/td&gt;
 &lt;td&gt;HTTPS + custom&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Manejo de errores&lt;/td&gt;
 &lt;td&gt;SOAP Faults&lt;/td&gt;
 &lt;td&gt;Status codes HTTP&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Curva de aprendizaje&lt;/td&gt;
 &lt;td&gt;Alta&lt;/td&gt;
 &lt;td&gt;Baja&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="estructura-del-mensaje-soap"&gt;Estructura del Mensaje SOAP &lt;a href="#estructura-del-mensaje-soap" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-xml" data-lang="xml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;&amp;lt;?xml version=&amp;#34;1.0&amp;#34; encoding=&amp;#34;UTF-8&amp;#34;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;&amp;lt;soap:Envelope&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;xmlns:soap=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;http://schemas.xmlsoap.org/soap/envelope/&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;xmlns:usr=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;http://example.com/users&amp;#34;&lt;/span&gt;&lt;span style="color:#f92672"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;soap:Header&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;usr:AuthToken&amp;gt;&lt;/span&gt;token123&lt;span style="color:#f92672"&gt;&amp;lt;/usr:AuthToken&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;/soap:Header&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;soap:Body&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;usr:GetUser&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;usr:userId&amp;gt;&lt;/span&gt;42&lt;span style="color:#f92672"&gt;&amp;lt;/usr:userId&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;/usr:GetUser&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;/soap:Body&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;&amp;lt;/soap:Envelope&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="soap-faults-respuestas-de-error"&gt;SOAP Faults (Respuestas de Error) &lt;a href="#soap-faults-respuestas-de-error" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-xml" data-lang="xml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;&amp;lt;soap:Fault&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;faultcode&amp;gt;&lt;/span&gt;soap:Client&lt;span style="color:#f92672"&gt;&amp;lt;/faultcode&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;faultstring&amp;gt;&lt;/span&gt;Usuario no encontrado&lt;span style="color:#f92672"&gt;&amp;lt;/faultstring&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;detail&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;errorCode&amp;gt;&lt;/span&gt;USER_404&lt;span style="color:#f92672"&gt;&amp;lt;/errorCode&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;lt;/detail&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;&amp;lt;/soap:Fault&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="wsdl--el-contrato"&gt;WSDL — El Contrato &lt;a href="#wsdl--el-contrato" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;WSDL define todo sobre el servicio SOAP: tipos, mensajes, operaciones, bindings y endpoints.&lt;/p&gt;</description></item><item><title>Testing de Webhooks</title><link>https://yrkan.com/es/course/module-06-api-backend/webhook-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/webhook-testing/</guid><description>&lt;h2 id="cómo-funcionan-los-webhooks"&gt;Cómo Funcionan los Webhooks &lt;a href="#c%c3%b3mo-funcionan-los-webhooks" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los webhooks son HTTP callbacks. Cuando ocurre un evento en un sistema proveedor, envía un HTTP POST a una URL que registraste.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;1. Registras: &amp;#34;Envía eventos a https://myapp.com/webhooks/stripe&amp;#34;
2. Evento ocurre en Stripe: payment_intent.succeeded
3. Stripe envía POST a https://myapp.com/webhooks/stripe
4. Tu servidor procesa el evento y retorna 200 OK
5. Stripe marca el webhook como entregado
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="qué-probar"&gt;Qué Probar &lt;a href="#qu%c3%a9-probar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-validación-de-payload"&gt;1. Validación de Payload &lt;a href="#1-validaci%c3%b3n-de-payload" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Verifica que tu receptor parsee correctamente el payload del webhook.&lt;/p&gt;</description></item><item><title>Testing ETL</title><link>https://yrkan.com/es/course/module-06-api-backend/etl-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/etl-testing/</guid><description>&lt;h2 id="qué-es-el-testing-etl"&gt;¿Qué Es el Testing ETL? &lt;a href="#qu%c3%a9-es-el-testing-etl" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;ETL (Extract, Transform, Load) es el proceso de mover datos de sistemas fuente a sistemas destino, típicamente data warehouses o bases de datos analíticas. El testing ETL verifica que este proceso sea correcto, completo y performante.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Sistemas Fuente → Extract → Transform → Load → Sistema Destino
(bases de datos, (extraer (limpiar, (insertar (data warehouse,
 APIs, archivos) datos) convertir, en BD analítica)
 agregar) destino)
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Los bugs ETL son costosos porque corrompen datos analíticos. Si un reporte muestra números de ingresos incorrectos porque el pipeline calculó mal las conversiones de moneda, las decisiones de negocio basadas en esos datos son erróneas.&lt;/p&gt;</description></item><item><title>Testing NoSQL: MongoDB, Redis, DynamoDB</title><link>https://yrkan.com/es/course/module-06-api-backend/nosql-testing/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/nosql-testing/</guid><description>&lt;h2 id="bases-de-datos-nosql-en-stacks-modernos"&gt;Bases de Datos NoSQL en Stacks Modernos &lt;a href="#bases-de-datos-nosql-en-stacks-modernos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las bases de datos NoSQL intercambian el schema rígido y las garantías ACID de SQL por flexibilidad, escalabilidad y rendimiento en casos de uso específicos. Como ingeniero QA, necesitas enfoques de testing diferentes para cada tipo.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tipo&lt;/th&gt;
 &lt;th&gt;Ejemplos&lt;/th&gt;
 &lt;th&gt;Caso de Uso&lt;/th&gt;
 &lt;th&gt;Foco del Testing&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Documento&lt;/td&gt;
 &lt;td&gt;MongoDB, CouchDB&lt;/td&gt;
 &lt;td&gt;Schemas flexibles, datos anidados&lt;/td&gt;
 &lt;td&gt;Consistencia de schema, indexación&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Key-Value&lt;/td&gt;
 &lt;td&gt;Redis, Memcached&lt;/td&gt;
 &lt;td&gt;Caching, sesiones, contadores&lt;/td&gt;
 &lt;td&gt;TTL, eviction, tipos de datos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Wide-Column&lt;/td&gt;
 &lt;td&gt;DynamoDB, Cassandra&lt;/td&gt;
 &lt;td&gt;Alta escala, time-series&lt;/td&gt;
 &lt;td&gt;Estrategia de partición, consistencia&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Graph&lt;/td&gt;
 &lt;td&gt;Neo4j, Neptune&lt;/td&gt;
 &lt;td&gt;Relaciones, redes&lt;/td&gt;
 &lt;td&gt;Correctitud de traversal&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="testing-de-mongodb"&gt;Testing de MongoDB &lt;a href="#testing-de-mongodb" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;MongoDB almacena datos como documentos JSON-like (BSON). Las colecciones no aplican schema por defecto, lo que significa que tu aplicación — y tus tests — deben validar la estructura de datos.&lt;/p&gt;</description></item><item><title>Validacion de Esquemas con OpenAPI</title><link>https://yrkan.com/es/course/module-06-api-backend/schema-validation-openapi/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/schema-validation-openapi/</guid><description>&lt;h2 id="que-es-openapi"&gt;Que Es OpenAPI? &lt;a href="#que-es-openapi" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La especificacion OpenAPI (anteriormente conocida como Swagger) es un formato estandar para describir APIs REST. Define cada aspecto de una API en un documento legible por maquinas: endpoints, metodos HTTP, parametros de request, formatos de response, autenticacion y modelos de datos.&lt;/p&gt;
&lt;p&gt;Un spec de OpenAPI sirve como &lt;strong&gt;contrato&lt;/strong&gt; entre proveedores y consumidores de la API. Como tester, es tu fuente de verdad sobre lo que la API deberia hacer.&lt;/p&gt;</description></item><item><title>Versionado de API</title><link>https://yrkan.com/es/course/module-06-api-backend/api-versioning/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-06-api-backend/api-versioning/</guid><description>&lt;h2 id="por-que-las-apis-necesitan-versionado"&gt;Por Que las APIs Necesitan Versionado &lt;a href="#por-que-las-apis-necesitan-versionado" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las APIs evolucionan. Se agregan nuevas funcionalidades, los modelos de datos cambian y los patrones antiguos se reemplazan. Sin versionado, cualquier cambio podria romper clientes existentes. El versionado permite que cambios incompatibles coexistan con versiones anteriores.&lt;/p&gt;
&lt;h3 id="cambios-breaking-vs-non-breaking"&gt;Cambios Breaking vs. Non-Breaking &lt;a href="#cambios-breaking-vs-non-breaking" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Cambios non-breaking&lt;/strong&gt; (seguros sin nueva version):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Agregar campos opcionales a respuestas&lt;/li&gt;
&lt;li&gt;Agregar nuevos endpoints&lt;/li&gt;
&lt;li&gt;Agregar query parameters opcionales&lt;/li&gt;
&lt;li&gt;Relajar reglas de validacion&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Cambios breaking&lt;/strong&gt; (requieren nueva version):&lt;/p&gt;</description></item><item><title>Arquitectura Web para QA</title><link>https://yrkan.com/es/course/module-05-web-testing/web-architecture-for-qa/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/web-architecture-for-qa/</guid><description>&lt;h2 id="por-qué-los-ingenieros-qa-necesitan-entender-la-arquitectura-web"&gt;Por qué los ingenieros QA necesitan entender la arquitectura web &lt;a href="#por-qu%c3%a9-los-ingenieros-qa-necesitan-entender-la-arquitectura-web" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cuando encuentras un bug en una aplicación web, la primera pregunta que hará un developer es: &amp;ldquo;¿Es un problema de frontend o de backend?&amp;rdquo; Si no puedes responder esa pregunta, tu reporte de bug va a rebotar entre equipos, perdiendo el tiempo de todos.&lt;/p&gt;
&lt;p&gt;Entender la arquitectura web te transforma de un tester que dice &amp;ldquo;está roto&amp;rdquo; a un ingeniero QA que dice &amp;ldquo;el API retorna un status 200 pero el response body contiene un array vacío cuando el usuario tiene items en su carrito — esto parece ser un problema de obtención de datos en el backend.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Auditoría con Lighthouse</title><link>https://yrkan.com/es/course/module-05-web-testing/lighthouse-auditing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/lighthouse-auditing/</guid><description>&lt;h2 id="qué-es-lighthouse"&gt;¿Qué Es Lighthouse? &lt;a href="#qu%c3%a9-es-lighthouse" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Lighthouse es una herramienta automatizada open-source desarrollada por Google para auditar la calidad de páginas web. Ejecuta una serie de pruebas contra una página y genera un reporte con puntajes y recomendaciones accionables en cinco categorías: Performance, Accessibility, Best Practices, SEO y PWA.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, Lighthouse funciona como un gate de calidad integral que puede detectar problemas desde cargas lentas hasta atributos de accesibilidad faltantes y configuraciones incorrectas de SEO — todo desde una sola herramienta.&lt;/p&gt;</description></item><item><title>Búsqueda, Paginación y Ordenamiento</title><link>https://yrkan.com/es/course/module-05-web-testing/search-pagination-sorting/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/search-pagination-sorting/</guid><description>&lt;h2 id="testing-de-búsqueda"&gt;Testing de búsqueda &lt;a href="#testing-de-b%c3%basqueda" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La búsqueda es una de las funcionalidades más usadas. Los usuarios esperan que funcione rápido, retorne resultados relevantes y maneje sus queries de forma elegante.&lt;/p&gt;
&lt;h3 id="tests-funcionales-de-búsqueda"&gt;Tests funcionales de búsqueda &lt;a href="#tests-funcionales-de-b%c3%basqueda" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Caso de prueba&lt;/th&gt;
 &lt;th&gt;Input&lt;/th&gt;
 &lt;th&gt;Comportamiento esperado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Coincidencia exacta&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;iPhone 15 Pro&amp;rdquo;&lt;/td&gt;
 &lt;td&gt;Producto aparece en resultados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Coincidencia parcial&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;iPhone&amp;rdquo;&lt;/td&gt;
 &lt;td&gt;Todos los productos iPhone aparecen&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Sin resultados&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;xyznonexistent123&amp;rdquo;&lt;/td&gt;
 &lt;td&gt;Mensaje amigable con sugerencias&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Búsqueda vacía&lt;/td&gt;
 &lt;td&gt;(string vacío)&lt;/td&gt;
 &lt;td&gt;Mostrar todos los resultados o solicitar input&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Caracteres especiales&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;&amp;lt;script&amp;gt;alert(1)&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Sanitizado, sin XSS&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;SQL injection&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;' OR 1=1 --&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Manejado de forma segura&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Query muy largo&lt;/td&gt;
 &lt;td&gt;1000+ caracteres&lt;/td&gt;
 &lt;td&gt;Manejado correctamente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="relevancia-de-búsqueda"&gt;Relevancia de búsqueda &lt;a href="#relevancia-de-b%c3%basqueda" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los resultados deben ordenarse por relevancia:&lt;/p&gt;</description></item><item><title>Core Web Vitals</title><link>https://yrkan.com/es/course/module-05-web-testing/core-web-vitals/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/core-web-vitals/</guid><description>&lt;h2 id="qué-son-los-core-web-vitals"&gt;¿Qué Son los Core Web Vitals? &lt;a href="#qu%c3%a9-son-los-core-web-vitals" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los Core Web Vitals son un conjunto de tres métricas de rendimiento definidas por Google que miden la experiencia real del usuario en páginas web. Impactan directamente en los rankings de búsqueda y representan lo que Google considera los aspectos más importantes de la experiencia de página.&lt;/p&gt;
&lt;p&gt;Como ingeniero QA, entender estas métricas es esencial porque:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Afectan los rankings SEO (visibilidad en búsquedas)&lt;/li&gt;
&lt;li&gt;Correlacionan con el engagement del usuario y las tasas de conversión&lt;/li&gt;
&lt;li&gt;Proporcionan criterios objetivos y medibles para testing de aceptación de rendimiento&lt;/li&gt;
&lt;li&gt;Se incluyen cada vez más en presupuestos de rendimiento y criterios de release&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="los-tres-core-web-vitals"&gt;Los Tres Core Web Vitals &lt;a href="#los-tres-core-web-vitals" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="lcp--largest-contentful-paint"&gt;LCP — Largest Contentful Paint &lt;a href="#lcp--largest-contentful-paint" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Qué mide:&lt;/strong&gt; El tiempo desde que la página comienza a cargar hasta que el elemento de contenido más grande en el viewport se renderiza.&lt;/p&gt;</description></item><item><title>Dominio de DevTools del Navegador</title><link>https://yrkan.com/es/course/module-05-web-testing/browser-devtools-mastery/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/browser-devtools-mastery/</guid><description>&lt;h2 id="devtools-tu-herramienta-de-testing-más-poderosa"&gt;DevTools: Tu herramienta de testing más poderosa &lt;a href="#devtools-tu-herramienta-de-testing-m%c3%a1s-poderosa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;DevTools del navegador es la herramienta más valiosa en el arsenal de un tester web. Te permite ver todo lo que sucede bajo la superficie — requests de red, errores JavaScript, cambios en el DOM, datos de almacenamiento, métricas de performance y más.&lt;/p&gt;
&lt;p&gt;Todos los navegadores principales incluyen DevTools: Chrome DevTools (F12), Firefox Developer Tools, Safari Web Inspector y Edge DevTools. Esta lección se enfoca en Chrome DevTools porque es el más utilizado, pero los conceptos aplican a todos los navegadores.&lt;/p&gt;</description></item><item><title>Estrategia de Testing de Caché</title><link>https://yrkan.com/es/course/module-05-web-testing/caching-testing-strategy/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/caching-testing-strategy/</guid><description>&lt;h2 id="por-qué-importa-el-testing-de-caché"&gt;Por Qué Importa el Testing de Caché &lt;a href="#por-qu%c3%a9-importa-el-testing-de-cach%c3%a9" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El caching mejora dramáticamente el rendimiento web almacenando copias de recursos. Sin embargo, un caching incorrecto hace que los usuarios vean contenido desactualizado o experimenten páginas rotas después de deployments.&lt;/p&gt;
&lt;h2 id="capas-de-caché"&gt;Capas de Caché &lt;a href="#capas-de-cach%c3%a9" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada capa puede cachear y servir contenido obsoleto independientemente: Caché del Navegador → CDN Edge → Proxy Inverso → Caché de Aplicación → Base de Datos.&lt;/p&gt;
&lt;h2 id="headers-de-caché-clave"&gt;Headers de Caché Clave &lt;a href="#headers-de-cach%c3%a9-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Header&lt;/th&gt;
 &lt;th&gt;Propósito&lt;/th&gt;
 &lt;th&gt;Ejemplo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;Cache-Control&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Directiva principal&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;max-age=3600, public&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;ETag&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Huella del contenido&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;&amp;quot;abc123def456&amp;quot;&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;Last-Modified&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Última modificación&lt;/td&gt;
 &lt;td&gt;Fecha&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;Vary&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Caché varía por header&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;Vary: Accept-Language&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="directivas-cache-control"&gt;Directivas Cache-Control &lt;a href="#directivas-cache-control" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Directiva&lt;/th&gt;
 &lt;th&gt;Significado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;public&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Cualquier caché puede almacenar&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;private&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Solo el navegador del usuario&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;no-cache&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Debe revalidar con servidor antes de usar&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;no-store&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;No debe cachearse en absoluto&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;max-age=N&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Válido por N segundos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;immutable&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;El contenido nunca cambia&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="qué-probar"&gt;Qué Probar &lt;a href="#qu%c3%a9-probar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="comportamiento-de-caché-correcto"&gt;Comportamiento de Caché Correcto &lt;a href="#comportamiento-de-cach%c3%a9-correcto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tipo de Recurso&lt;/th&gt;
 &lt;th&gt;Caching Esperado&lt;/th&gt;
 &lt;th&gt;Por Qué&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Assets estáticos (JS, CSS)&lt;/td&gt;
 &lt;td&gt;Caché largo (1 año) con hash&lt;/td&gt;
 &lt;td&gt;Cache busting maneja actualizaciones&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Páginas HTML&lt;/td&gt;
 &lt;td&gt;no-cache o corto&lt;/td&gt;
 &lt;td&gt;Contenido cambia frecuentemente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;API pública&lt;/td&gt;
 &lt;td&gt;Caché corto (minutos)&lt;/td&gt;
 &lt;td&gt;Balance frescura y rendimiento&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;API autenticada&lt;/td&gt;
 &lt;td&gt;private, no-store&lt;/td&gt;
 &lt;td&gt;Prevenir filtración entre usuarios&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Endpoints de auth&lt;/td&gt;
 &lt;td&gt;no-store&lt;/td&gt;
 &lt;td&gt;Datos sensibles&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="invalidación-después-de-deployment"&gt;Invalidación Después de Deployment &lt;a href="#invalidaci%c3%b3n-despu%c3%a9s-de-deployment" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Deployar cambio en CSS/JS&lt;/li&gt;
&lt;li&gt;Verificar que usuarios obtienen la nueva versión&lt;/li&gt;
&lt;li&gt;Verificar que versión cacheada vieja no rompe el nuevo HTML&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="caché-y-autenticación"&gt;Caché y Autenticación &lt;a href="#cach%c3%a9-y-autenticaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Datos del Usuario A nunca deben servirse desde caché al Usuario B&lt;/li&gt;
&lt;li&gt;Logout debe invalidar contenido cacheado específico del usuario&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Vary: Cookie&lt;/code&gt; o &lt;code&gt;private&lt;/code&gt; para respuestas autenticadas&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-auditoría-de-caché"&gt;Ejercicio: Auditoría de Caché &lt;a href="#ejercicio-auditor%c3%ada-de-cach%c3%a9" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="paso-1-inspeccionar-headers"&gt;Paso 1: Inspeccionar Headers &lt;a href="#paso-1-inspeccionar-headers" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Abre DevTools &amp;gt; Network. Carga la página y verifica headers:&lt;/p&gt;</description></item><item><title>Evaluación del Módulo 5</title><link>https://yrkan.com/es/course/module-05-web-testing/module-5-assessment/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/module-5-assessment/</guid><description>&lt;h2 id="resumen-de-la-evaluación"&gt;Resumen de la Evaluación &lt;a href="#resumen-de-la-evaluaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicitaciones por llegar al final del Módulo 5: Testing de Aplicaciones Web. Esta evaluación prueba tu comprensión de todos los temas cubiertos en las lecciones 5.1 a 5.29.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Parte&lt;/th&gt;
 &lt;th&gt;Formato&lt;/th&gt;
 &lt;th&gt;Preguntas&lt;/th&gt;
 &lt;th&gt;Tiempo Estimado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 1&lt;/td&gt;
 &lt;td&gt;Quiz de opción múltiple&lt;/td&gt;
 &lt;td&gt;10 preguntas&lt;/td&gt;
 &lt;td&gt;10 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 2&lt;/td&gt;
 &lt;td&gt;Preguntas basadas en escenarios&lt;/td&gt;
 &lt;td&gt;3 escenarios&lt;/td&gt;
 &lt;td&gt;20 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 3&lt;/td&gt;
 &lt;td&gt;Ejercicio práctico&lt;/td&gt;
 &lt;td&gt;1 ejercicio&lt;/td&gt;
 &lt;td&gt;30 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Guía de puntuación:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Parte 1: 10 puntos&lt;/li&gt;
&lt;li&gt;Parte 2: 15 puntos (5 por escenario)&lt;/li&gt;
&lt;li&gt;Parte 3: 15 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Total: 40 puntos | Aprobación: 28/40 (70%)&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="parte-1-quiz"&gt;Parte 1: Quiz &lt;a href="#parte-1-quiz" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las preguntas del quiz están en el frontmatter de esta lección (10 preguntas). Toma el quiz primero antes de continuar.&lt;/p&gt;</description></item><item><title>Gestión de Cookies y Sesiones</title><link>https://yrkan.com/es/course/module-05-web-testing/cookie-session-management/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/cookie-session-management/</guid><description>&lt;h2 id="entendiendo-las-cookies"&gt;Entendiendo las cookies &lt;a href="#entendiendo-las-cookies" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las cookies son pequeños archivos de texto almacenados por el navegador en nombre de un sitio web. Son el mecanismo principal para mantener estado en el protocolo HTTP sin estado.&lt;/p&gt;
&lt;h3 id="atributos-de-cookies"&gt;Atributos de cookies &lt;a href="#atributos-de-cookies" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Atributo&lt;/th&gt;
 &lt;th&gt;Propósito&lt;/th&gt;
 &lt;th&gt;Impacto en seguridad&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Name=Value&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Los datos almacenados&lt;/td&gt;
 &lt;td&gt;No debería contener datos sensibles en texto plano&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Domain&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Qué dominio puede acceder&lt;/td&gt;
 &lt;td&gt;Cookie para &lt;code&gt;.example.com&lt;/code&gt; es accesible por &lt;code&gt;sub.example.com&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Path&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Qué ruta URL puede acceder&lt;/td&gt;
 &lt;td&gt;Cookie de &lt;code&gt;/admin&lt;/code&gt; no se envía para &lt;code&gt;/public&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Expires/Max-Age&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Cuándo expira&lt;/td&gt;
 &lt;td&gt;Cookies de sesión expiran al cerrar el navegador&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Secure&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Solo se envía por HTTPS&lt;/td&gt;
 &lt;td&gt;Previene transmisión sin cifrar&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;HttpOnly&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;No accesible vía JavaScript&lt;/td&gt;
 &lt;td&gt;Protege contra robo por XSS&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;SameSite&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Controla envío cross-site&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;Strict&lt;/code&gt;, &lt;code&gt;Lax&lt;/code&gt; o &lt;code&gt;None&lt;/code&gt; — previene CSRF&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="probando-atributos-de-cookies"&gt;Probando atributos de cookies &lt;a href="#probando-atributos-de-cookies" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Abre DevTools &amp;gt; Application &amp;gt; Cookies e inspecciona cada cookie:&lt;/p&gt;</description></item><item><title>HTML, CSS y JavaScript para Testers</title><link>https://yrkan.com/es/course/module-05-web-testing/html-css-js-for-testers/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/html-css-js-for-testers/</guid><description>&lt;h2 id="por-qué-los-testers-necesitan-conocimiento-de-frontend"&gt;Por qué los testers necesitan conocimiento de frontend &lt;a href="#por-qu%c3%a9-los-testers-necesitan-conocimiento-de-frontend" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;No necesitas convertirte en un developer frontend. Pero necesitas hablar lo suficiente del lenguaje para tener conversaciones productivas con los developers, escribir reportes de bugs precisos y entender lo que estás probando.&lt;/p&gt;
&lt;p&gt;Cuando un tester dice &amp;ldquo;el botón está en el lugar equivocado,&amp;rdquo; un developer tiene que adivinar qué está pasando. Cuando un tester dice &amp;ldquo;el botón de submit tiene &lt;code&gt;margin-top: 0&lt;/code&gt; en vez de &lt;code&gt;margin-top: 16px&lt;/code&gt;, causando que se superponga con el campo del formulario en pantallas más angostas que 768px,&amp;rdquo; el developer puede corregirlo en segundos.&lt;/p&gt;</description></item><item><title>Manejo de Errores y Páginas de Error</title><link>https://yrkan.com/es/course/module-05-web-testing/error-handling-error-pages/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/error-handling-error-pages/</guid><description>&lt;h2 id="por-qué-importa-el-testing-de-manejo-de-errores"&gt;Por Qué Importa el Testing de Manejo de Errores &lt;a href="#por-qu%c3%a9-importa-el-testing-de-manejo-de-errores" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los usuarios inevitablemente encontrarán errores — visitarán páginas eliminadas, enviarán formularios inválidos, experimentarán timeouts de red y activarán fallos del servidor. Cómo tu aplicación maneja estos errores determina si los usuarios se quedan o se van, si confían en tu producto y si los atacantes pueden explotar las respuestas de error.&lt;/p&gt;
&lt;h2 id="categorías-de-códigos-de-estado-http"&gt;Categorías de Códigos de Estado HTTP &lt;a href="#categor%c3%adas-de-c%c3%b3digos-de-estado-http" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Rango&lt;/th&gt;
 &lt;th&gt;Categoría&lt;/th&gt;
 &lt;th&gt;Significado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;2xx&lt;/td&gt;
 &lt;td&gt;Éxito&lt;/td&gt;
 &lt;td&gt;Solicitud completada exitosamente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;3xx&lt;/td&gt;
 &lt;td&gt;Redirección&lt;/td&gt;
 &lt;td&gt;El cliente debe tomar acción adicional&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;4xx&lt;/td&gt;
 &lt;td&gt;Error del Cliente&lt;/td&gt;
 &lt;td&gt;La solicitud era inválida&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;5xx&lt;/td&gt;
 &lt;td&gt;Error del Servidor&lt;/td&gt;
 &lt;td&gt;El servidor falló al cumplir una solicitud válida&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="códigos-clave-a-probar"&gt;Códigos Clave a Probar &lt;a href="#c%c3%b3digos-clave-a-probar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Código&lt;/th&gt;
 &lt;th&gt;Significado&lt;/th&gt;
 &lt;th&gt;Cuándo Probar&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;200&lt;/td&gt;
 &lt;td&gt;OK&lt;/td&gt;
 &lt;td&gt;Cada solicitud exitosa&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;301&lt;/td&gt;
 &lt;td&gt;Movido Permanentemente&lt;/td&gt;
 &lt;td&gt;Migraciones de URL, redirects HTTPS&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;400&lt;/td&gt;
 &lt;td&gt;Bad Request&lt;/td&gt;
 &lt;td&gt;Datos de solicitud malformados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;401&lt;/td&gt;
 &lt;td&gt;No Autorizado&lt;/td&gt;
 &lt;td&gt;Autenticación faltante o inválida&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;403&lt;/td&gt;
 &lt;td&gt;Prohibido&lt;/td&gt;
 &lt;td&gt;Auth válida pero permisos insuficientes&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;404&lt;/td&gt;
 &lt;td&gt;No Encontrado&lt;/td&gt;
 &lt;td&gt;URLs inexistentes&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;429&lt;/td&gt;
 &lt;td&gt;Demasiadas Solicitudes&lt;/td&gt;
 &lt;td&gt;Rate limiting&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;500&lt;/td&gt;
 &lt;td&gt;Error Interno del Servidor&lt;/td&gt;
 &lt;td&gt;Excepciones no manejadas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;503&lt;/td&gt;
 &lt;td&gt;Servicio No Disponible&lt;/td&gt;
 &lt;td&gt;Mantenimiento, sobrecarga&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="testing-de-páginas-de-error-personalizadas"&gt;Testing de Páginas de Error Personalizadas &lt;a href="#testing-de-p%c3%a1ginas-de-error-personalizadas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="página-404"&gt;Página 404 &lt;a href="#p%c3%a1gina-404" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;URL inexistente muestra 404 personalizado (no error genérico)&lt;/li&gt;
&lt;li&gt;Mantiene branding del sitio (header, footer, estilos)&lt;/li&gt;
&lt;li&gt;Navegación disponible&lt;/li&gt;
&lt;li&gt;Barra de búsqueda presente&lt;/li&gt;
&lt;li&gt;Links a páginas populares&lt;/li&gt;
&lt;li&gt;Retorna código HTTP 404 correcto (no 200)&lt;/li&gt;
&lt;li&gt;Funciona en todos los idiomas soportados&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="página-500"&gt;Página 500 &lt;a href="#p%c3%a1gina-500" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Mensaje amigable sin detalles técnicos&lt;/li&gt;
&lt;li&gt;Sin stack traces, errores de BD ni rutas de archivos&lt;/li&gt;
&lt;li&gt;Información de contacto o link de soporte&lt;/li&gt;
&lt;li&gt;Sugiere intentar de nuevo más tarde&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="página-403"&gt;Página 403 &lt;a href="#p%c3%a1gina-403" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Explica que el acceso es denegado sin revelar por qué&lt;/li&gt;
&lt;li&gt;Sugiere iniciar sesión si no está autenticado&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-de-errores-de-validación-de-formularios"&gt;Testing de Errores de Validación de Formularios &lt;a href="#testing-de-errores-de-validaci%c3%b3n-de-formularios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="validación-del-lado-del-cliente"&gt;Validación del Lado del Cliente &lt;a href="#validaci%c3%b3n-del-lado-del-cliente" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Escenario&lt;/th&gt;
 &lt;th&gt;Comportamiento Esperado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Campo requerido vacío&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Este campo es requerido&amp;rdquo; cerca del campo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Formato de email inválido&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Por favor ingresa un email válido&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Contraseña muy corta&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;La contraseña debe tener al menos 8 caracteres&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Contraseñas no coinciden&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Las contraseñas no coinciden&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="validación-del-lado-del-servidor"&gt;Validación del Lado del Servidor &lt;a href="#validaci%c3%b3n-del-lado-del-servidor" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Deshabilitar JavaScript y enviar formularios sigue mostrando errores&lt;/li&gt;
&lt;li&gt;Solicitudes directas por API retornan mensajes de error apropiados&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="consideraciones-de-seguridad"&gt;Consideraciones de Seguridad &lt;a href="#consideraciones-de-seguridad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Qué NO deben revelar las respuestas de error: stack traces, errores de BD, rutas de archivos, versiones del servidor, IPs internas.&lt;/p&gt;</description></item><item><title>Testing de Accesibilidad Web</title><link>https://yrkan.com/es/course/module-05-web-testing/web-accessibility-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/web-accessibility-testing/</guid><description>&lt;h2 id="por-qué-importa-el-testing-de-accesibilidad"&gt;Por Qué Importa el Testing de Accesibilidad &lt;a href="#por-qu%c3%a9-importa-el-testing-de-accesibilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La accesibilidad web (frecuentemente abreviada como a11y) asegura que personas con discapacidades puedan percibir, entender, navegar e interactuar con sitios web. Esto incluye personas ciegas o con baja visión, sordas o con dificultades auditivas, con discapacidades motoras, cognitivas o impedimentos temporales.&lt;/p&gt;
&lt;p&gt;La accesibilidad no es opcional para QA:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Requisito legal&lt;/strong&gt; — Leyes como ADA (EE.UU.), EAA (UE) y AODA (Canadá) exigen accesibilidad web&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Impacto de negocio&lt;/strong&gt; — 15-20% de la población global tiene alguna forma de discapacidad&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Beneficio SEO&lt;/strong&gt; — Muchas prácticas de accesibilidad mejoran la optimización para motores de búsqueda&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Indicador de calidad&lt;/strong&gt; — Los sitios accesibles tienden a estar mejor estructurados&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="resumen-de-wcag-22"&gt;Resumen de WCAG 2.2 &lt;a href="#resumen-de-wcag-22" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;WCAG se organiza en cuatro principios (POUR):&lt;/p&gt;</description></item><item><title>Testing de Aplicaciones de Página Única (SPA)</title><link>https://yrkan.com/es/course/module-05-web-testing/spa-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/spa-testing/</guid><description>&lt;h2 id="entendiendo-testing-de-aplicaciones-de-página-única-spa"&gt;Entendiendo Testing de Aplicaciones de Página Única (SPA) &lt;a href="#entendiendo-testing-de-aplicaciones-de-p%c3%a1gina-%c3%banica-spa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Aplicaciones de Página Única (SPA) es un área crítica del testing de aplicaciones web que todo ingeniero QA debe dominar. Esta lección proporciona un enfoque estructurado para probar esta funcionalidad.&lt;/p&gt;
&lt;h3 id="por-qué-importa"&gt;Por qué importa &lt;a href="#por-qu%c3%a9-importa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Cuando los usuarios encuentran problemas aquí, pierden confianza en la aplicación. Tu trabajo como QA es encontrar estos problemas primero.&lt;/p&gt;
&lt;h3 id="áreas-principales-de-testing"&gt;Áreas principales de testing &lt;a href="#%c3%a1reas-principales-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Corrección funcional:&lt;/strong&gt; ¿Funciona según lo especificado? Prueba cada requisito contra el comportamiento real.&lt;/p&gt;</description></item><item><title>Testing de Apps Web Progresivas (PWA)</title><link>https://yrkan.com/es/course/module-05-web-testing/pwa-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/pwa-testing/</guid><description>&lt;h2 id="entendiendo-testing-de-apps-web-progresivas-pwa"&gt;Entendiendo Testing de Apps Web Progresivas (PWA) &lt;a href="#entendiendo-testing-de-apps-web-progresivas-pwa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Apps Web Progresivas (PWA) es un área crítica del testing de aplicaciones web que todo ingeniero QA debe dominar. Esta lección proporciona un enfoque estructurado para probar esta funcionalidad.&lt;/p&gt;
&lt;h3 id="por-qué-importa"&gt;Por qué importa &lt;a href="#por-qu%c3%a9-importa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Cuando los usuarios encuentran problemas aquí, pierden confianza en la aplicación. Tu trabajo como QA es encontrar estos problemas primero.&lt;/p&gt;
&lt;h3 id="áreas-principales-de-testing"&gt;Áreas principales de testing &lt;a href="#%c3%a1reas-principales-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Corrección funcional:&lt;/strong&gt; ¿Funciona según lo especificado? Prueba cada requisito contra el comportamiento real.&lt;/p&gt;</description></item><item><title>Testing de Autenticación y Sesiones</title><link>https://yrkan.com/es/course/module-05-web-testing/authentication-session-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/authentication-session-testing/</guid><description>&lt;h2 id="autenticación-la-puerta-principal-de-tu-aplicación"&gt;Autenticación: La puerta principal de tu aplicación &lt;a href="#autenticaci%c3%b3n-la-puerta-principal-de-tu-aplicaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La autenticación es cómo tu aplicación verifica la identidad del usuario. Es la funcionalidad más crítica para la seguridad — todas las demás medidas de seguridad dependen de que la autenticación funcione correctamente. Un bug en autenticación puede exponer los datos de todos los usuarios.&lt;/p&gt;
&lt;p&gt;Esta lección cubre el testing de flujos de autenticación (login, registro, recuperación de contraseña) y gestión de sesiones (cómo la aplicación rastrea quién eres después del login).&lt;/p&gt;</description></item><item><title>Testing de Carga de Archivos</title><link>https://yrkan.com/es/course/module-05-web-testing/file-upload-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/file-upload-testing/</guid><description>&lt;h2 id="carga-de-archivos-una-funcionalidad-de-alto-riesgo"&gt;Carga de archivos: Una funcionalidad de alto riesgo &lt;a href="#carga-de-archivos-una-funcionalidad-de-alto-riesgo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La funcionalidad de carga de archivos es una de las más sensibles en seguridad. Cada archivo subido es potencialmente malicioso — podría ser un script disfrazado como imagen, una zip bomb o un archivo con nombre diseñado para explotar el sistema de archivos.&lt;/p&gt;
&lt;h2 id="validación-de-tipos-de-archivo"&gt;Validación de tipos de archivo &lt;a href="#validaci%c3%b3n-de-tipos-de-archivo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="validación-del-lado-del-cliente"&gt;Validación del lado del cliente &lt;a href="#validaci%c3%b3n-del-lado-del-cliente" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;El atributo &lt;code&gt;accept&lt;/code&gt; en inputs de archivo restringe qué archivos puede seleccionar el usuario:&lt;/p&gt;</description></item><item><title>Testing de CDN y Geo-Distribución</title><link>https://yrkan.com/es/course/module-05-web-testing/cdn-geo-distribution/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/cdn-geo-distribution/</guid><description>&lt;h2 id="cómo-funcionan-los-cdn"&gt;Cómo Funcionan los CDN &lt;a href="#c%c3%b3mo-funcionan-los-cdn" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un CDN es una red distribuida de servidores que cachea y entrega contenido desde ubicaciones cercanas a los usuarios. Proveedores populares: Cloudflare, AWS CloudFront, Fastly, Akamai.&lt;/p&gt;
&lt;h3 id="flujo-de-solicitud-cdn"&gt;Flujo de Solicitud CDN &lt;a href="#flujo-de-solicitud-cdn" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Usuario solicita &lt;code&gt;https://example.com/image.jpg&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;DNS resuelve al servidor edge CDN más cercano&lt;/li&gt;
&lt;li&gt;Edge verifica si tiene copia cacheada&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;HIT:&lt;/strong&gt; Sirve directamente desde edge (rápido)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MISS:&lt;/strong&gt; Obtiene del origen, cachea, luego sirve&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="qué-debe-probar-qa"&gt;Qué Debe Probar QA &lt;a href="#qu%c3%a9-debe-probar-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="comportamiento-de-caché-cdn"&gt;Comportamiento de Caché CDN &lt;a href="#comportamiento-de-cach%c3%a9-cdn" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Verificar estado de caché CDN&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -I https://example.com/style.css
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Buscar: CF-Cache-Status, X-Cache, Age&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="latencia-multi-región"&gt;Latencia Multi-Región &lt;a href="#latencia-multi-regi%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Usa WebPageTest para probar desde múltiples ubicaciones globales.&lt;/p&gt;</description></item><item><title>Testing de CMS</title><link>https://yrkan.com/es/course/module-05-web-testing/cms-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/cms-testing/</guid><description>&lt;h2 id="entendiendo-testing-de-cms"&gt;Entendiendo Testing de CMS &lt;a href="#entendiendo-testing-de-cms" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de CMS es un área crítica del testing de aplicaciones web que todo ingeniero QA debe dominar. Esta lección proporciona un enfoque estructurado para probar esta funcionalidad.&lt;/p&gt;
&lt;h3 id="por-qué-importa"&gt;Por qué importa &lt;a href="#por-qu%c3%a9-importa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Cuando los usuarios encuentran problemas aquí, pierden confianza en la aplicación. Tu trabajo como QA es encontrar estos problemas primero.&lt;/p&gt;
&lt;h3 id="áreas-principales-de-testing"&gt;Áreas principales de testing &lt;a href="#%c3%a1reas-principales-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Corrección funcional:&lt;/strong&gt; ¿Funciona según lo especificado? Prueba cada requisito contra el comportamiento real.&lt;/p&gt;</description></item><item><title>Testing de Cumplimiento GDPR</title><link>https://yrkan.com/es/course/module-05-web-testing/gdpr-compliance-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/gdpr-compliance-testing/</guid><description>&lt;h2 id="gdpr-y-testing-de-qa"&gt;GDPR y Testing de QA &lt;a href="#gdpr-y-testing-de-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Reglamento General de Protección de Datos (GDPR) es una regulación de la UE que gobierna cómo las organizaciones recolectan, procesan, almacenan y eliminan datos personales. Aunque es una ley de la UE, aplica a cualquier organización que procese datos de residentes de la UE.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, GDPR crea requisitos específicos y verificables. A diferencia del testing de seguridad general, el testing GDPR se enfoca en derechos del usuario, gestión de consentimiento y verificación del ciclo de vida de datos.&lt;/p&gt;</description></item><item><title>Testing de Diseño Responsivo</title><link>https://yrkan.com/es/course/module-05-web-testing/responsive-design-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/responsive-design-testing/</guid><description>&lt;h2 id="qué-es-el-diseño-responsivo"&gt;Qué es el diseño responsivo &lt;a href="#qu%c3%a9-es-el-dise%c3%b1o-responsivo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El diseño responsivo significa que una aplicación web adapta su layout y contenido para funcionar bien en cualquier tamaño de pantalla — desde un celular de 320px hasta un monitor ultrawide de 2560px. En lugar de construir versiones separadas para móvil y desktop, una sola base de código se ajusta usando media queries de CSS.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, el testing responsivo consiste en verificar que esta adaptación funcione correctamente en cada tamaño, no solo en los que el diseñador tenía en mente.&lt;/p&gt;</description></item><item><title>Testing de Emails y Notificaciones</title><link>https://yrkan.com/es/course/module-05-web-testing/email-notification-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/email-notification-testing/</guid><description>&lt;h2 id="por-qué-importa-el-testing-de-emails-y-notificaciones"&gt;Por Qué Importa el Testing de Emails y Notificaciones &lt;a href="#por-qu%c3%a9-importa-el-testing-de-emails-y-notificaciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los emails y notificaciones son canales críticos de comunicación entre una aplicación y sus usuarios. Un email de restablecimiento de contraseña roto significa que los usuarios no pueden recuperar sus cuentas. Una confirmación de pedido faltante erosiona la confianza. Un email de marketing mal renderizado daña la percepción de marca.&lt;/p&gt;
&lt;p&gt;A pesar de su importancia, el testing de emails y notificaciones frecuentemente se pasa por alto porque involucran sistemas externos y son más difíciles de automatizar que el testing de UI.&lt;/p&gt;</description></item><item><title>Testing de Facturación y Suscripciones</title><link>https://yrkan.com/es/course/module-05-web-testing/billing-subscription-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/billing-subscription-testing/</guid><description>&lt;h2 id="por-qué-el-testing-de-facturación-es-crítico"&gt;Por Qué el Testing de Facturación Es Crítico &lt;a href="#por-qu%c3%a9-el-testing-de-facturaci%c3%b3n-es-cr%c3%adtico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los bugs de facturación tienen impacto financiero directo. Un cálculo incorrecto de prorrateo que sobrecobra $5 a los usuarios multiplicado por 10,000 suscriptores equivale a $50,000 en reembolsos potenciales — más daño a la confianza y riesgo de churn.&lt;/p&gt;
&lt;p&gt;La facturación de suscripciones es una de las áreas más complejas en testing de aplicaciones web porque involucra lógica dependiente del tiempo, integración con proveedores de pago, cálculos de impuestos y múltiples transiciones de estado.&lt;/p&gt;</description></item><item><title>Testing de Formularios</title><link>https://yrkan.com/es/course/module-05-web-testing/form-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/form-testing/</guid><description>&lt;h2 id="los-formularios-son-donde-viven-los-bugs"&gt;Los formularios son donde viven los bugs &lt;a href="#los-formularios-son-donde-viven-los-bugs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los formularios son la forma principal en que los usuarios interactúan con las aplicaciones web — login, registro, búsqueda, checkout, actualización de perfil, formularios de contacto. También son donde viven la mayoría de los bugs. Cada campo de formulario es un punto de entrada para datos inválidos, caracteres inesperados y casos límite.&lt;/p&gt;
&lt;p&gt;Un tester de formularios exhaustivo no solo llena datos válidos y hace clic en enviar. Piensa en cada posible input que un usuario — o un atacante — podría proporcionar.&lt;/p&gt;</description></item><item><title>Testing de Optimización de Rendimiento Web</title><link>https://yrkan.com/es/course/module-05-web-testing/web-performance-optimization/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/web-performance-optimization/</guid><description>&lt;h2 id="el-impacto-del-rendimiento-en-el-negocio"&gt;El Impacto del Rendimiento en el Negocio &lt;a href="#el-impacto-del-rendimiento-en-el-negocio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El rendimiento impacta directamente ingresos y engagement. Páginas más lentas llevan a mayores tasas de rebote y menor conversión. QA juega un rol crítico estableciendo budgets, monitoreando regresiones y verificando que las técnicas de optimización funcionen correctamente.&lt;/p&gt;
&lt;h2 id="técnicas-de-optimización-a-probar"&gt;Técnicas de Optimización a Probar &lt;a href="#t%c3%a9cnicas-de-optimizaci%c3%b3n-a-probar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="optimización-de-imágenes"&gt;Optimización de Imágenes &lt;a href="#optimizaci%c3%b3n-de-im%c3%a1genes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Técnica&lt;/th&gt;
 &lt;th&gt;Qué Probar&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Formatos modernos (WebP, AVIF)&lt;/td&gt;
 &lt;td&gt;Imágenes servidas en formato moderno con fallback&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Imágenes responsive (srcset)&lt;/td&gt;
 &lt;td&gt;Tamaño correcto para viewport del dispositivo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Lazy loading&lt;/td&gt;
 &lt;td&gt;Imágenes bajo el fold cargan al hacer scroll&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Compresión&lt;/td&gt;
 &lt;td&gt;Comprimidas sin pérdida visible de calidad&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Dimensiones correctas&lt;/td&gt;
 &lt;td&gt;Atributos width/height (previene CLS)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="optimización-de-javascript"&gt;Optimización de JavaScript &lt;a href="#optimizaci%c3%b3n-de-javascript" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Técnica&lt;/th&gt;
 &lt;th&gt;Qué Probar&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Code splitting&lt;/td&gt;
 &lt;td&gt;Solo código de la ruta actual carga en cada página&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tree shaking&lt;/td&gt;
 &lt;td&gt;Código no usado eliminado de producción&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Minificación&lt;/td&gt;
 &lt;td&gt;Archivos JS minificados en producción&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Carga defer/async&lt;/td&gt;
 &lt;td&gt;Scripts no críticos no bloquean renderizado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="performance-budgets"&gt;Performance Budgets &lt;a href="#performance-budgets" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Métrica&lt;/th&gt;
 &lt;th&gt;Budget Ejemplo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Peso total de página&lt;/td&gt;
 &lt;td&gt;&amp;lt;500KB&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;JavaScript&lt;/td&gt;
 &lt;td&gt;&amp;lt;150KB&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;CSS&lt;/td&gt;
 &lt;td&gt;&amp;lt;50KB&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Imágenes&lt;/td&gt;
 &lt;td&gt;&amp;lt;200KB por página&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;LCP&lt;/td&gt;
 &lt;td&gt;&amp;lt;2.5s&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;TBT&lt;/td&gt;
 &lt;td&gt;&amp;lt;200ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="análisis-waterfall"&gt;Análisis Waterfall &lt;a href="#an%c3%a1lisis-waterfall" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El gráfico waterfall en DevTools muestra la secuencia de carga. Busca: TTFB largo, recursos que bloquean renderizado, recursos grandes, cadenas de dependencias, y scripts de terceros como cuellos de botella.&lt;/p&gt;</description></item><item><title>Testing de Pasarelas de Pago</title><link>https://yrkan.com/es/course/module-05-web-testing/payment-gateway-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/payment-gateway-testing/</guid><description>&lt;h2 id="entendiendo-testing-de-pasarelas-de-pago"&gt;Entendiendo Testing de Pasarelas de Pago &lt;a href="#entendiendo-testing-de-pasarelas-de-pago" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing de Pasarelas de Pago es un área crítica del testing de aplicaciones web que todo ingeniero QA debe dominar. Esta lección proporciona un enfoque estructurado para probar esta funcionalidad.&lt;/p&gt;
&lt;h3 id="por-qué-importa"&gt;Por qué importa &lt;a href="#por-qu%c3%a9-importa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Cuando los usuarios encuentran problemas aquí, pierden confianza en la aplicación. Tu trabajo como QA es encontrar estos problemas primero.&lt;/p&gt;
&lt;h3 id="áreas-principales-de-testing"&gt;Áreas principales de testing &lt;a href="#%c3%a1reas-principales-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Corrección funcional:&lt;/strong&gt; ¿Funciona según lo especificado? Prueba cada requisito contra el comportamiento real.&lt;/p&gt;</description></item><item><title>Testing de Seguridad Web en la Práctica</title><link>https://yrkan.com/es/course/module-05-web-testing/web-security-testing-practice/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/web-security-testing-practice/</guid><description>&lt;h2 id="testing-de-seguridad-para-ingenieros-qa"&gt;Testing de Seguridad para Ingenieros QA &lt;a href="#testing-de-seguridad-para-ingenieros-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de seguridad no es solo para pentesters. QA encuentra funcionalidades de seguridad diariamente: formularios de login, campos de entrada, endpoints API y cargas de archivos. Entender vulnerabilidades comunes te hace un tester más efectivo.&lt;/p&gt;
&lt;h2 id="owasp-top-10"&gt;OWASP Top 10 &lt;a href="#owasp-top-10" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Riesgo&lt;/th&gt;
 &lt;th&gt;Enfoque de Testing QA&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Inyección (SQL, XSS)&lt;/td&gt;
 &lt;td&gt;Probar campos con caracteres especiales&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Auth roto&lt;/td&gt;
 &lt;td&gt;Probar flujos de auth exhaustivamente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Exposición de datos sensibles&lt;/td&gt;
 &lt;td&gt;Verificar HTTPS, headers, almacenamiento&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Control de acceso roto&lt;/td&gt;
 &lt;td&gt;Probar acceso basado en roles&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Mala configuración de seguridad&lt;/td&gt;
 &lt;td&gt;Verificar páginas de error, headers&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;XSS&lt;/td&gt;
 &lt;td&gt;Probar todos los inputs de usuario&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;CSRF&lt;/td&gt;
 &lt;td&gt;Verificar tokens CSRF&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="testing-de-xss"&gt;Testing de XSS &lt;a href="#testing-de-xss" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="payloads-básicos"&gt;Payloads Básicos &lt;a href="#payloads-b%c3%a1sicos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Prueba en cada campo de entrada, búsqueda, parámetro URL y campo de perfil:&lt;/p&gt;</description></item><item><title>Testing de WebSocket y Tiempo Real</title><link>https://yrkan.com/es/course/module-05-web-testing/websocket-realtime-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/websocket-realtime-testing/</guid><description>&lt;h2 id="por-qué-importa-el-testing-en-tiempo-real"&gt;Por Qué Importa el Testing en Tiempo Real &lt;a href="#por-qu%c3%a9-importa-el-testing-en-tiempo-real" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las aplicaciones web modernas dependen cada vez más de funcionalidades en tiempo real. Aplicaciones de chat, dashboards en vivo, tickers de bolsa, herramientas de edición colaborativa, sistemas de notificaciones y juegos multijugador dependen de conexiones persistentes entre cliente y servidor. Probar estas funcionalidades requiere entender los protocolos subyacentes y los desafíos únicos que presentan.&lt;/p&gt;
&lt;p&gt;A diferencia de los ciclos tradicionales de request-response HTTP, la comunicación en tiempo real es bidireccional y continua. Esta diferencia fundamental implica que tu enfoque de testing debe adaptarse.&lt;/p&gt;</description></item><item><title>Testing del Carrito de Compras</title><link>https://yrkan.com/es/course/module-05-web-testing/ecommerce-cart-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/ecommerce-cart-testing/</guid><description>&lt;h2 id="entendiendo-testing-del-carrito-de-compras"&gt;Entendiendo Testing del Carrito de Compras &lt;a href="#entendiendo-testing-del-carrito-de-compras" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing del Carrito de Compras es un área crítica del testing de aplicaciones web que todo ingeniero QA debe dominar. Esta lección proporciona un enfoque estructurado para probar esta funcionalidad.&lt;/p&gt;
&lt;h3 id="por-qué-importa"&gt;Por qué importa &lt;a href="#por-qu%c3%a9-importa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Cuando los usuarios encuentran problemas aquí, pierden confianza en la aplicación. Tu trabajo como QA es encontrar estos problemas primero.&lt;/p&gt;
&lt;h3 id="áreas-principales-de-testing"&gt;Áreas principales de testing &lt;a href="#%c3%a1reas-principales-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Corrección funcional:&lt;/strong&gt; ¿Funciona según lo especificado? Prueba cada requisito contra el comportamiento real.&lt;/p&gt;</description></item><item><title>Testing Multi-Navegador</title><link>https://yrkan.com/es/course/module-05-web-testing/cross-browser-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/cross-browser-testing/</guid><description>&lt;h2 id="por-qué-importa-el-testing-multi-navegador"&gt;Por qué importa el testing multi-navegador &lt;a href="#por-qu%c3%a9-importa-el-testing-multi-navegador" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una aplicación web que se ve perfecta en Chrome puede estar completamente rota en Safari. Una funcionalidad JavaScript que funciona en Firefox podría lanzar un error en versiones antiguas de Edge. Un layout CSS que se renderiza bien en desktop podría colapsar en navegadores móviles.&lt;/p&gt;
&lt;p&gt;El testing multi-navegador asegura que tu aplicación funcione correctamente para todos tus usuarios, independientemente del navegador o dispositivo que elijan. Saltarlo significa que solo estás probando para una fracción de tu audiencia.&lt;/p&gt;</description></item><item><title>Testing Multi-Tenant y SaaS</title><link>https://yrkan.com/es/course/module-05-web-testing/multi-tenancy-saas-testing/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/multi-tenancy-saas-testing/</guid><description>&lt;h2 id="qué-es-multi-tenancy"&gt;¿Qué Es Multi-Tenancy? &lt;a href="#qu%c3%a9-es-multi-tenancy" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Multi-tenancy es una arquitectura donde una única instancia de software sirve a múltiples clientes (tenants). Los datos de cada tenant están aislados, pero comparten el mismo código, infraestructura y frecuentemente la misma base de datos.&lt;/p&gt;
&lt;p&gt;La mayoría de productos SaaS modernos — Slack, Jira, Salesforce, Shopify — son multi-tenant. Como ingeniero QA trabajando en productos SaaS, entender el testing multi-tenant es esencial porque las consecuencias de fallos son severas: filtraciones de datos entre tenants pueden resultar en demandas y penalidades regulatorias.&lt;/p&gt;</description></item><item><title>Testing SEO para QA</title><link>https://yrkan.com/es/course/module-05-web-testing/seo-testing-for-qa/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-05-web-testing/seo-testing-for-qa/</guid><description>&lt;h2 id="por-qué-los-ingenieros-qa-necesitan-probar-seo"&gt;Por Qué los Ingenieros QA Necesitan Probar SEO &lt;a href="#por-qu%c3%a9-los-ingenieros-qa-necesitan-probar-seo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El SEO (Search Engine Optimization) impacta directamente cuántos usuarios encuentran un sitio web a través de motores de búsqueda. Un solo meta tag mal configurado, una URL canónica rota o una directiva &lt;code&gt;noindex&lt;/code&gt; accidental puede hacer que las páginas desaparezcan de los resultados de búsqueda, costando potencialmente miles de visitantes.&lt;/p&gt;
&lt;p&gt;Los ingenieros QA están en una posición única para detectar problemas de SEO porque ya prueban el output HTML, verifican el comportamiento de las páginas y revisan casos extremos que los desarrolladores pueden pasar por alto. El testing técnico de SEO se integra naturalmente en el flujo de trabajo de testing web.&lt;/p&gt;</description></item><item><title>Casos Positivos, Negativos y de Frontera</title><link>https://yrkan.com/es/course/module-04-documentation/positive-negative-boundary-cases/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/positive-negative-boundary-cases/</guid><description>&lt;h2 id="las-tres-categorias"&gt;Las Tres Categorias &lt;a href="#las-tres-categorias" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Toda feature necesita test cases en tres categorias: tests positivos que confirman que el happy path funciona, tests negativos que verifican el manejo de errores, y tests de frontera que revisan valores limite. Omitir cualquier categoria deja brechas peligrosas.&lt;/p&gt;
&lt;h2 id="test-cases-positivos"&gt;Test Cases Positivos &lt;a href="#test-cases-positivos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los test cases positivos verifican que el sistema funciona correctamente con &lt;strong&gt;input valido bajo condiciones esperadas&lt;/strong&gt;. Representan los caminos que la mayoria de usuarios seguira.&lt;/p&gt;</description></item><item><title>Checklists vs Casos de Test</title><link>https://yrkan.com/es/course/module-04-documentation/checklists-vs-test-cases/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/checklists-vs-test-cases/</guid><description>&lt;h2 id="dos-enfoques"&gt;Dos Enfoques &lt;a href="#dos-enfoques" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Test Cases Detallados:&lt;/strong&gt; Instrucciones paso a paso con precondiciones, inputs exactos y resultados esperados especificos.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Checklists:&lt;/strong&gt; Items de alto nivel para verificar sin prescribir pasos exactos. El tester decide como verificar.&lt;/p&gt;
&lt;h2 id="cuando-usar-cada-uno"&gt;Cuando Usar Cada Uno &lt;a href="#cuando-usar-cada-uno" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="test-cases-detallados"&gt;Test Cases Detallados: &lt;a href="#test-cases-detallados" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Compliance regulatorio, testers nuevos/junior, features criticas, testing automatizado, auditorias&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="checklists"&gt;Checklists: &lt;a href="#checklists" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Testers experimentados, testing exploratorio, smoke testing, regresion de features estables, sprints agiles&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="enfoque-hibrido"&gt;Enfoque Hibrido &lt;a href="#enfoque-hibrido" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Riesgo de Feature&lt;/th&gt;
 &lt;th&gt;Documentacion&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Critico (pagos)&lt;/td&gt;
 &lt;td&gt;Test cases detallados + automatizados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Alto (auth, datos)&lt;/td&gt;
 &lt;td&gt;Test cases para caminos core, checklists para edge cases&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Medio (busqueda, UI)&lt;/td&gt;
 &lt;td&gt;Checklists con escenarios clave&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Bajo (about page)&lt;/td&gt;
 &lt;td&gt;Solo checklist de smoke test&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="ejercicio-crea-ambos-formatos"&gt;Ejercicio: Crea Ambos Formatos &lt;a href="#ejercicio-crea-ambos-formatos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Para registro de usuario (username, email, password, foto de perfil), crea un checklist de 15-20 items y 3 test cases detallados para escenarios criticos.&lt;/p&gt;</description></item><item><title>Ciclo de Vida del Bug</title><link>https://yrkan.com/es/course/module-04-documentation/bug-life-cycle/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/bug-life-cycle/</guid><description>&lt;h2 id="el-ciclo-de-vida-del-bug"&gt;El Ciclo de Vida del Bug &lt;a href="#el-ciclo-de-vida-del-bug" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada bug sigue un ciclo de vida desde el descubrimiento hasta la resolucion. Entender este ciclo te ayuda a rastrear bugs efectivamente y asegurar que nada se escape.&lt;/p&gt;
&lt;h2 id="estados-estandar"&gt;Estados Estandar &lt;a href="#estados-estandar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="new"&gt;New &lt;a href="#new" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Bug reportado por QA. No ha sido revisado ni asignado.&lt;/p&gt;
&lt;h3 id="open-assigned"&gt;Open (Assigned) &lt;a href="#open-assigned" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Bug revisado, aceptado como valido y asignado a un desarrollador.&lt;/p&gt;
&lt;h3 id="in-progress"&gt;In Progress &lt;a href="#in-progress" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Desarrollador esta trabajando activamente en la correccion.&lt;/p&gt;</description></item><item><title>Documentacion de Testing Agil</title><link>https://yrkan.com/es/course/module-04-documentation/agile-test-documentation/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/agile-test-documentation/</guid><description>&lt;h2 id="la-paradoja-de-documentacion-agil"&gt;La Paradoja de Documentacion Agil &lt;a href="#la-paradoja-de-documentacion-agil" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Manifiesto Agil valora &amp;ldquo;software funcionando sobre documentacion exhaustiva.&amp;rdquo; Pero NO significa &amp;ldquo;sin documentacion.&amp;rdquo; Significa escribir documentacion que sirva un proposito.&lt;/p&gt;
&lt;h2 id="el-principio-just-enough"&gt;El Principio &amp;ldquo;Just Enough&amp;rdquo; &lt;a href="#el-principio-just-enough" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Para cada documento, pregunta: Quien lo leera? Que decision habilita? Que pasa si lo omitimos?&lt;/p&gt;
&lt;h2 id="artefactos-agiles-de-testing"&gt;Artefactos Agiles de Testing &lt;a href="#artefactos-agiles-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="acceptance-criteria-como-test-specs"&gt;Acceptance Criteria como Test Specs &lt;a href="#acceptance-criteria-como-test-specs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Acceptance criteria bien escritos son tu especificacion primaria de testing. Cada criterio se convierte en escenario de test.&lt;/p&gt;</description></item><item><title>Documento de Estrategia de Testing</title><link>https://yrkan.com/es/course/module-04-documentation/test-strategy-document/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/test-strategy-document/</guid><description>&lt;h2 id="que-es-una-test-strategy"&gt;Que Es una Test Strategy? &lt;a href="#que-es-una-test-strategy" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una test strategy es un documento de alto nivel que define el enfoque general del testing para un proyecto u organizacion. Responde las preguntas fundamentales: Que probaremos? Como lo probaremos? Que herramientas y entornos necesitamos? Cuales son nuestros criterios de calidad?&lt;/p&gt;
&lt;p&gt;A diferencia de un test plan, que es especifico para un release o sprint particular, una test strategy proporciona el marco general que guia todas las actividades de testing. Piensa en ella como la constitucion de tu proceso de QA — establece los principios, mientras los test plans manejan los detalles.&lt;/p&gt;</description></item><item><title>Escribiendo Casos de Test Efectivos</title><link>https://yrkan.com/es/course/module-04-documentation/writing-effective-test-cases/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/writing-effective-test-cases/</guid><description>&lt;h2 id="por-que-importa-la-calidad-de-los-test-cases"&gt;Por Que Importa la Calidad de los Test Cases &lt;a href="#por-que-importa-la-calidad-de-los-test-cases" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un test case es tan bueno como su capacidad de ser ejecutado por otra persona. Si un colega no puede seguir tu test case y obtener el mismo resultado, el test case fallo su proposito — sin importar si el software pasa o falla.&lt;/p&gt;
&lt;p&gt;Test cases pobres llevan a:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Resultados inconsistentes&lt;/strong&gt; — diferentes testers interpretan pasos de forma diferente&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tiempo desperdiciado&lt;/strong&gt; — testers gastan tiempo descifrando que significa el case&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Falsa confianza&lt;/strong&gt; — resultados esperados vagos facilitan marcar tests como &amp;ldquo;pasados&amp;rdquo; incorrectamente&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Carga de mantenimiento&lt;/strong&gt; — cases poco claros son mas dificiles de actualizar&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="anatomia-de-un-test-case"&gt;Anatomia de un Test Case &lt;a href="#anatomia-de-un-test-case" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada test case debe contener estos elementos:&lt;/p&gt;</description></item><item><title>Evaluacion del Modulo 4</title><link>https://yrkan.com/es/course/module-04-documentation/module-4-assessment/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/module-4-assessment/</guid><description>&lt;h2 id="resumen-de-la-evaluacion"&gt;Resumen de la Evaluacion &lt;a href="#resumen-de-la-evaluacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicidades por llegar a la leccion final del Modulo 4. Esta evaluacion verifica tu comprension de todos los temas de documentacion de testing.&lt;/p&gt;
&lt;h3 id="sistema-de-puntuacion"&gt;Sistema de Puntuacion &lt;a href="#sistema-de-puntuacion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Parte 1 (Quiz):&lt;/strong&gt; 10 preguntas x 3 puntos = 30 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parte 2 (Escenarios):&lt;/strong&gt; 5 escenarios x 6 puntos = 30 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parte 3 (Ejercicio):&lt;/strong&gt; 40 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Total:&lt;/strong&gt; 100 puntos. &lt;strong&gt;Puntaje de aprobacion:&lt;/strong&gt; 70&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="temas-cubiertos"&gt;Temas Cubiertos &lt;a href="#temas-cubiertos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Area&lt;/th&gt;
 &lt;th&gt;Lecciones&lt;/th&gt;
 &lt;th&gt;Conceptos Clave&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Estrategia y Planificacion&lt;/td&gt;
 &lt;td&gt;4.1-4.2&lt;/td&gt;
 &lt;td&gt;Test strategy, IEEE 829&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Diseno de Test Cases&lt;/td&gt;
 &lt;td&gt;4.3-4.5&lt;/td&gt;
 &lt;td&gt;Escritura, positivo/negativo/frontera, test data&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Gestion de Defectos&lt;/td&gt;
 &lt;td&gt;4.6-4.10&lt;/td&gt;
 &lt;td&gt;Bug reports, severity/priority, lifecycle, Jira&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Reportes&lt;/td&gt;
 &lt;td&gt;4.11-4.13&lt;/td&gt;
 &lt;td&gt;Ejecucion, cobertura, notas de version&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Proceso&lt;/td&gt;
 &lt;td&gt;4.14-4.16&lt;/td&gt;
 &lt;td&gt;Triage, checklists vs cases, documentacion agil&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Avanzado&lt;/td&gt;
 &lt;td&gt;4.17-4.19&lt;/td&gt;
 &lt;td&gt;Summary reports, RTM, plantillas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="parte-2-preguntas-por-escenarios"&gt;Parte 2: Preguntas por Escenarios &lt;a href="#parte-2-preguntas-por-escenarios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Escenario 1:&lt;/strong&gt; Entras a una empresa como unico QA. No hay documentacion de testing. Producto B2B SaaS con 50 clientes enterprise. Que documentos creas primero?&lt;/p&gt;</description></item><item><title>Gestion de Datos de Test</title><link>https://yrkan.com/es/course/module-04-documentation/test-data-management/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/test-data-management/</guid><description>&lt;h2 id="el-problema-del-test-data"&gt;El Problema del Test Data &lt;a href="#el-problema-del-test-data" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada test necesita datos — cuentas de usuario, productos, transacciones, configuraciones. De donde vienen estos datos, como se gestionan y como se limpian determina si tu testing es confiable o plagado de resultados impredecibles.&lt;/p&gt;
&lt;p&gt;Problemas comunes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Conflictos de datos compartidos&lt;/strong&gt; — dos testers usan la misma cuenta simultaneamente&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Datos obsoletos&lt;/strong&gt; — test data no coincide con el schema actual&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Violaciones de privacidad&lt;/strong&gt; — datos reales de clientes en entornos no productivos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Contaminacion del entorno&lt;/strong&gt; — datos residuales causan comportamiento inesperado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Valores hard-coded&lt;/strong&gt; — test cases se rompen cuando registros especificos cambian&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="fuentes-de-test-data"&gt;Fuentes de Test Data &lt;a href="#fuentes-de-test-data" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-datos-sinteticos-generados"&gt;1. Datos Sinteticos (Generados) &lt;a href="#1-datos-sinteticos-generados" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Crear datos artificiales que imitan patrones de produccion sin contener informacion real.&lt;/p&gt;</description></item><item><title>Jira para QA</title><link>https://yrkan.com/es/course/module-04-documentation/jira-for-qa/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/jira-for-qa/</guid><description>&lt;h2 id="por-que-jira-es-el-estandar-de-la-industria"&gt;Por Que Jira Es el Estandar de la Industria &lt;a href="#por-que-jira-es-el-estandar-de-la-industria" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Jira de Atlassian domina el mercado de issue tracking con mas del 75% de cuota en desarrollo de software. Como profesional de QA, encontraras Jira en casi toda empresa.&lt;/p&gt;
&lt;h2 id="jira-para-bug-tracking"&gt;Jira para Bug Tracking &lt;a href="#jira-para-bug-tracking" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="creando-un-bug-report-en-jira"&gt;Creando un Bug Report en Jira &lt;a href="#creando-un-bug-report-en-jira" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Campo&lt;/th&gt;
 &lt;th&gt;Proposito&lt;/th&gt;
 &lt;th&gt;Ejemplo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Summary&lt;/td&gt;
 &lt;td&gt;Titulo del bug&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Login falla con HTTP 500 para emails con &amp;lsquo;+&amp;rsquo;&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Issue Type&lt;/td&gt;
 &lt;td&gt;Bug&lt;/td&gt;
 &lt;td&gt;Bug&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Priority&lt;/td&gt;
 &lt;td&gt;Urgencia de negocio&lt;/td&gt;
 &lt;td&gt;High&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Severity&lt;/td&gt;
 &lt;td&gt;Campo custom — impacto tecnico&lt;/td&gt;
 &lt;td&gt;Critical&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Components&lt;/td&gt;
 &lt;td&gt;Modulo afectado&lt;/td&gt;
 &lt;td&gt;Authentication&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Environment&lt;/td&gt;
 &lt;td&gt;Browser, OS, version&lt;/td&gt;
 &lt;td&gt;Chrome 120, macOS 14.2&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Description&lt;/td&gt;
 &lt;td&gt;Reporte completo&lt;/td&gt;
 &lt;td&gt;Pasos, esperado/actual, evidencia&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="campos-custom-para-qa"&gt;Campos Custom para QA &lt;a href="#campos-custom-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Severity&lt;/strong&gt; (dropdown: Critical/Major/Minor/Trivial)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Found In Environment&lt;/strong&gt; (dropdown: Dev/QA/Staging/Production)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Root Cause&lt;/strong&gt; (dropdown: Code/Config/Data/Environment/Third Party)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test Case ID&lt;/strong&gt; (texto: link al test case relacionado)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="jql-para-testers"&gt;JQL para Testers &lt;a href="#jql-para-testers" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="queries-esenciales"&gt;Queries Esenciales &lt;a href="#queries-esenciales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Todos los bugs abiertos asignados a mi:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Linear, Bugzilla y Otras Alternativas</title><link>https://yrkan.com/es/course/module-04-documentation/linear-bugzilla-alternatives/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/linear-bugzilla-alternatives/</guid><description>&lt;h2 id="mas-alla-de-jira"&gt;Mas Alla de Jira &lt;a href="#mas-alla-de-jira" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Mientras Jira domina el mercado, no siempre es la mejor opcion. Algunos equipos lo encuentran lento, sobre-configurado o costoso. Conocer las alternativas te ayuda a adaptarte.&lt;/p&gt;
&lt;h2 id="linear"&gt;Linear &lt;a href="#linear" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Mejor para:&lt;/strong&gt; Startups agiles, equipos que valoran velocidad y simplicidad.&lt;/p&gt;
&lt;p&gt;Linear es la alternativa moderna con crecimiento explosivo desde 2020. Prioriza velocidad sobre todo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Features clave:&lt;/strong&gt; Navegacion keyboard-first, cycles automaticos, integracion GitHub/GitLab, cola de triage, vistas de roadmap.&lt;/p&gt;</description></item><item><title>Mapeo de Requisitos a Tests</title><link>https://yrkan.com/es/course/module-04-documentation/requirements-to-test-mapping/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/requirements-to-test-mapping/</guid><description>&lt;h2 id="por-que-importa-la-trazabilidad"&gt;Por Que Importa la Trazabilidad &lt;a href="#por-que-importa-la-trazabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La trazabilidad responde tres preguntas criticas:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Cada requisito esta probado? (Forward traceability)&lt;/li&gt;
&lt;li&gt;Cada test tiene proposito? (Backward traceability)&lt;/li&gt;
&lt;li&gt;Si un requisito cambia, que tests se actualizan? (Analisis de impacto)&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="la-matriz-de-trazabilidad"&gt;La Matriz de Trazabilidad &lt;a href="#la-matriz-de-trazabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="estructura-basica"&gt;Estructura Basica &lt;a href="#estructura-basica" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Req ID&lt;/th&gt;
 &lt;th&gt;Requisito&lt;/th&gt;
 &lt;th&gt;Test Cases&lt;/th&gt;
 &lt;th&gt;Cobertura&lt;/th&gt;
 &lt;th&gt;Estado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;REQ-001&lt;/td&gt;
 &lt;td&gt;Registro con email&lt;/td&gt;
 &lt;td&gt;TC-001, TC-002&lt;/td&gt;
 &lt;td&gt;Completa&lt;/td&gt;
 &lt;td&gt;Pasado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;REQ-002&lt;/td&gt;
 &lt;td&gt;Complejidad de password&lt;/td&gt;
 &lt;td&gt;TC-010, TC-011&lt;/td&gt;
 &lt;td&gt;Completa&lt;/td&gt;
 &lt;td&gt;1 fallo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;REQ-003&lt;/td&gt;
 &lt;td&gt;Autenticacion 2 factores&lt;/td&gt;
 &lt;td&gt;—&lt;/td&gt;
 &lt;td&gt;&lt;strong&gt;Ninguna&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;No probado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="trazabilidad-bidireccional"&gt;Trazabilidad Bidireccional &lt;a href="#trazabilidad-bidireccional" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Forward (Requisito → Test):&lt;/strong&gt; Cada requisito tiene al menos un test.
&lt;strong&gt;Backward (Test → Requisito):&lt;/strong&gt; Cada test se vincula a un requisito.&lt;/p&gt;</description></item><item><title>Notas de Version para QA</title><link>https://yrkan.com/es/course/module-04-documentation/release-notes-for-qa/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/release-notes-for-qa/</guid><description>&lt;h2 id="el-rol-de-qa-en-notas-de-version"&gt;El Rol de QA en Notas de Version &lt;a href="#el-rol-de-qa-en-notas-de-version" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las notas de version no son solo tarea de desarrollo. QA juega un rol critico proporcionando la perspectiva de calidad: que se probo, que bugs se corrigieron, que known issues quedan y que workarounds existen.&lt;/p&gt;
&lt;h2 id="secciones-de-las-notas"&gt;Secciones de las Notas &lt;a href="#secciones-de-las-notas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="nuevas-features-y-cambios"&gt;Nuevas Features y Cambios &lt;a href="#nuevas-features-y-cambios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;QA verifica que nuevas features funcionan como se describen.&lt;/p&gt;
&lt;h3 id="bug-fixes"&gt;Bug Fixes &lt;a href="#bug-fixes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Lista bugs corregidos. QA verifica cada fix listado.&lt;/p&gt;</description></item><item><title>Plan de Testing: Formato IEEE 829</title><link>https://yrkan.com/es/course/module-04-documentation/test-plan-ieee-829/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/test-plan-ieee-829/</guid><description>&lt;h2 id="introduccion-a-ieee-829"&gt;Introduccion a IEEE 829 &lt;a href="#introduccion-a-ieee-829" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;IEEE 829, formalmente conocido como &amp;ldquo;Standard for Software and System Test Documentation&amp;rdquo;, proporciona un formato estandarizado para documentacion de testing. Publicado originalmente en 1998 y actualizado en 2008, define plantillas para test plans, test designs, test cases, test procedures y test reports.&lt;/p&gt;
&lt;p&gt;Aunque muchos equipos hoy usan enfoques agiles que favorecen documentacion ligera, IEEE 829 sigue siendo el estandar de referencia para entender que debe contener un test plan completo. Incluso si nunca escribes un documento IEEE 829 completo, conocer su estructura te hace mejor creando test plans de cualquier formato.&lt;/p&gt;</description></item><item><title>Plantillas y Estandares de Documentacion</title><link>https://yrkan.com/es/course/module-04-documentation/documentation-templates-standards/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/documentation-templates-standards/</guid><description>&lt;h2 id="por-que-importan-los-estandares"&gt;Por Que Importan los Estandares &lt;a href="#por-que-importan-los-estandares" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Sin estandares: cinco testers escriben bug reports en cinco formatos diferentes, informacion critica falta, tiempo perdido en revisiones.&lt;/p&gt;
&lt;h2 id="creando-plantillas"&gt;Creando Plantillas &lt;a href="#creando-plantillas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="principios-de-diseno"&gt;Principios de Diseno &lt;a href="#principios-de-diseno" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Incluir guia, no solo headers&lt;/li&gt;
&lt;li&gt;Marcar secciones requeridas vs opcionales&lt;/li&gt;
&lt;li&gt;Proporcionar ejemplos&lt;/li&gt;
&lt;li&gt;Mantenerlo minimo&lt;/li&gt;
&lt;li&gt;Versionar plantillas en wiki o repositorio&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="plantillas-principales"&gt;Plantillas Principales &lt;a href="#plantillas-principales" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bug Report:&lt;/strong&gt; Titulo (formula), entorno, severidad, pasos, esperado/actual, evidencia&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test Case:&lt;/strong&gt; ID, titulo (Verificar que&amp;hellip;), precondiciones, pasos con resultados, test data&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test Summary:&lt;/strong&gt; Resumen ejecutivo, alcance, resultados, defectos, cobertura, riesgos, go/no-go&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="que-estandarizar"&gt;Que Estandarizar &lt;a href="#que-estandarizar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Area&lt;/th&gt;
 &lt;th&gt;Estandar&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Titulos de bugs&lt;/td&gt;
 &lt;td&gt;Formula: &lt;code&gt;[Componente] Accion falla con [Error] cuando [Condicion]&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Escala de severidad&lt;/td&gt;
 &lt;td&gt;4 niveles con definiciones&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Naming de test cases&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;TC-[MODULO]-[NNN]&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Screenshots&lt;/td&gt;
 &lt;td&gt;Anotados con highlights rojos y flechas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Test data&lt;/td&gt;
 &lt;td&gt;Nunca PII real, usar Faker&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="que-no-estandarizar"&gt;Que NO Estandarizar &lt;a href="#que-no-estandarizar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Estilo de escritura, nivel de detalle para testers experimentados, conteo de palabras.&lt;/p&gt;</description></item><item><title>Reportes de Bugs que los Desarrolladores Aman</title><link>https://yrkan.com/es/course/module-04-documentation/bug-reports-developers-love/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/bug-reports-developers-love/</guid><description>&lt;h2 id="por-que-importa-la-calidad-del-bug-report"&gt;Por Que Importa la Calidad del Bug Report &lt;a href="#por-que-importa-la-calidad-del-bug-report" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un bug report es una herramienta de comunicacion entre QA y desarrollo. Un report bien escrito se corrige rapido. Uno mal escrito se ignora, se devuelve para clarificacion o se desprioriza porque nadie puede reproducirlo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Impacto de malos bug reports:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Desarrollador gasta 30 minutos intentando reproducir un bug vago = tiempo perdido&lt;/li&gt;
&lt;li&gt;Bug regresa a QA para mas informacion = 1-2 dias de retraso&lt;/li&gt;
&lt;li&gt;Bug se cierra como &amp;ldquo;Cannot Reproduce&amp;rdquo; = el defecto llega a produccion&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Impacto de buenos bug reports:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Reportes de Cobertura</title><link>https://yrkan.com/es/course/module-04-documentation/coverage-reports/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/coverage-reports/</guid><description>&lt;h2 id="tipos-de-cobertura"&gt;Tipos de Cobertura &lt;a href="#tipos-de-cobertura" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="code-coverage"&gt;Code Coverage &lt;a href="#code-coverage" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Mide que lineas, branches y funciones del codigo fuente se ejecutan por tests automatizados.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Metricas:&lt;/strong&gt; Line coverage, branch coverage, function coverage, statement coverage.&lt;/p&gt;
&lt;h3 id="requirements-coverage"&gt;Requirements Coverage &lt;a href="#requirements-coverage" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Mide que requisitos de negocio tienen test cases correspondientes.&lt;/p&gt;
&lt;h2 id="herramientas-de-code-coverage"&gt;Herramientas de Code Coverage &lt;a href="#herramientas-de-code-coverage" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Herramienta&lt;/th&gt;
 &lt;th&gt;Lenguajes&lt;/th&gt;
 &lt;th&gt;Integracion&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Istanbul/nyc&lt;/td&gt;
 &lt;td&gt;JavaScript/TypeScript&lt;/td&gt;
 &lt;td&gt;Jest, Mocha, Vitest&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;JaCoCo&lt;/td&gt;
 &lt;td&gt;Java&lt;/td&gt;
 &lt;td&gt;Maven, Gradle&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;coverage.py&lt;/td&gt;
 &lt;td&gt;Python&lt;/td&gt;
 &lt;td&gt;pytest&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;SonarQube&lt;/td&gt;
 &lt;td&gt;Multi-lenguaje&lt;/td&gt;
 &lt;td&gt;CI/CD dashboards&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="leyendo-reportes-de-cobertura"&gt;Leyendo Reportes de Cobertura &lt;a href="#leyendo-reportes-de-cobertura" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Archivo | % Stmts | % Branch | % Funcs | % Lines |
------------------------|---------|----------|---------|---------|
src/auth/login.js | 95.2 | 88.0 | 100.0 | 95.0 |
src/payment/checkout.js | 45.0 | 30.0 | 50.0 | 44.2 |
&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;login.js&lt;/code&gt; al 95% esta bien testeado&lt;/li&gt;
&lt;li&gt;&lt;code&gt;checkout.js&lt;/code&gt; al 45% esta criticamente sub-testeado para un modulo de pagos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="estableciendo-targets"&gt;Estableciendo Targets &lt;a href="#estableciendo-targets" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Area de Codigo&lt;/th&gt;
 &lt;th&gt;Target Sugerido&lt;/th&gt;
 &lt;th&gt;Razon&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Pagos/financiero&lt;/td&gt;
 &lt;td&gt;90%+&lt;/td&gt;
 &lt;td&gt;Alto riesgo de negocio&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Autenticacion/seguridad&lt;/td&gt;
 &lt;td&gt;90%+&lt;/td&gt;
 &lt;td&gt;Critico de seguridad&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Logica de negocio core&lt;/td&gt;
 &lt;td&gt;80%+&lt;/td&gt;
 &lt;td&gt;Funcionalidad principal&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Utilidades&lt;/td&gt;
 &lt;td&gt;70%+&lt;/td&gt;
 &lt;td&gt;Codigo compartido&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="la-trampa-del-coverage"&gt;La Trampa del Coverage &lt;a href="#la-trampa-del-coverage" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;No perseguir 100% ciegamente. Problemas: tests sin sentido que ejecutan sin verificar, testing de codigo trivial, ignorar otros tipos de testing.&lt;/p&gt;</description></item><item><title>Reportes de Ejecucion de Tests</title><link>https://yrkan.com/es/course/module-04-documentation/test-execution-reports/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/test-execution-reports/</guid><description>&lt;h2 id="que-es-un-reporte-de-ejecucion"&gt;Que Es un Reporte de Ejecucion &lt;a href="#que-es-un-reporte-de-ejecucion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un reporte de ejecucion resume los resultados de ejecutar test cases contra un build o release especifico. Responde: &amp;ldquo;Como esta la calidad de este build?&amp;rdquo;&lt;/p&gt;
&lt;h2 id="componentes-del-reporte"&gt;Componentes del Reporte &lt;a href="#componentes-del-reporte" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="resumen-de-ejecucion"&gt;Resumen de Ejecucion &lt;a href="#resumen-de-ejecucion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Metrica&lt;/th&gt;
 &lt;th&gt;Valor&lt;/th&gt;
 &lt;th&gt;Objetivo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Total Test Cases&lt;/td&gt;
 &lt;td&gt;450&lt;/td&gt;
 &lt;td&gt;—&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ejecutados&lt;/td&gt;
 &lt;td&gt;420 (93%)&lt;/td&gt;
 &lt;td&gt;100%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Pasados&lt;/td&gt;
 &lt;td&gt;385 (92%)&lt;/td&gt;
 &lt;td&gt;&amp;gt; 95%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Fallidos&lt;/td&gt;
 &lt;td&gt;25 (6%)&lt;/td&gt;
 &lt;td&gt;&amp;lt; 5%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Bloqueados&lt;/td&gt;
 &lt;td&gt;10 (2%)&lt;/td&gt;
 &lt;td&gt;0%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;No Ejecutados&lt;/td&gt;
 &lt;td&gt;30 (7%)&lt;/td&gt;
 &lt;td&gt;0%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="metricas-clave"&gt;Metricas Clave &lt;a href="#metricas-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Pass Rate:&lt;/strong&gt; &lt;code&gt;(Pasados / Ejecutados) x 100&lt;/code&gt; — Ejemplo: 385/420 = 91.7%&lt;/p&gt;</description></item><item><title>Reportes Resumidos de Testing</title><link>https://yrkan.com/es/course/module-04-documentation/test-summary-reports/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/test-summary-reports/</guid><description>&lt;h2 id="test-summary-vs-test-execution-report"&gt;Test Summary vs Test Execution Report &lt;a href="#test-summary-vs-test-execution-report" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Execution Report:&lt;/strong&gt; Snapshot de un test run especifico.
&lt;strong&gt;Summary Report:&lt;/strong&gt; Documento comprehensivo cubriendo toda la fase de testing.&lt;/p&gt;
&lt;h2 id="estructura-del-reporte"&gt;Estructura del Reporte &lt;a href="#estructura-del-reporte" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-resumen-ejecutivo"&gt;1. Resumen Ejecutivo &lt;a href="#1-resumen-ejecutivo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Un parrafo: Esta el producto listo? Mayor riesgo? Recomendacion?&lt;/p&gt;
&lt;h3 id="2-alcance-y-objetivos"&gt;2. Alcance y Objetivos &lt;a href="#2-alcance-y-objetivos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Que se planeo probar, que se probo realmente, desviaciones del plan.&lt;/p&gt;
&lt;h3 id="3-resultados-agregados"&gt;3. Resultados Agregados &lt;a href="#3-resultados-agregados" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Total ejecutados, pasados, fallidos, bloqueados.&lt;/p&gt;
&lt;h3 id="4-analisis-de-defectos"&gt;4. Analisis de Defectos &lt;a href="#4-analisis-de-defectos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Por severidad, tendencia de descubrimiento, categorias principales, analisis de causa raiz.&lt;/p&gt;</description></item><item><title>Reuniones de Triaje de Defectos</title><link>https://yrkan.com/es/course/module-04-documentation/defect-triage-meetings/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/defect-triage-meetings/</guid><description>&lt;h2 id="que-es-defect-triage"&gt;Que Es Defect Triage? &lt;a href="#que-es-defect-triage" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Defect triage es el proceso de revisar bugs reportados, evaluar impacto, asignar prioridades y decidir acciones. El termino viene de la medicina de emergencia — clasificar pacientes por urgencia.&lt;/p&gt;
&lt;h2 id="estructura-de-la-reunion"&gt;Estructura de la Reunion &lt;a href="#estructura-de-la-reunion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="frecuencia"&gt;Frecuencia &lt;a href="#frecuencia" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Testing activo:&lt;/strong&gt; Diario, 15 minutos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sprint normal:&lt;/strong&gt; 2-3 veces por semana, 20 minutos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mantenimiento:&lt;/strong&gt; Semanal, 30 minutos&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="asistentes"&gt;Asistentes &lt;a href="#asistentes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Rol&lt;/th&gt;
 &lt;th&gt;Responsabilidad&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Facilitador (QA Lead)&lt;/td&gt;
 &lt;td&gt;Conducir reunion, controlar tiempo, documentar&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Reporter (QA Engineers)&lt;/td&gt;
 &lt;td&gt;Presentar detalles del bug&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Evaluador Tecnico (Dev Lead)&lt;/td&gt;
 &lt;td&gt;Estimar complejidad y riesgo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Priorizador de Negocio (PO)&lt;/td&gt;
 &lt;td&gt;Establecer prioridad por impacto&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="agenda"&gt;Agenda &lt;a href="#agenda" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Revisar bugs nuevos (10 min)&lt;/li&gt;
&lt;li&gt;Asignar prioridades (5 min)&lt;/li&gt;
&lt;li&gt;Asignar a developers (5 min)&lt;/li&gt;
&lt;li&gt;Revisar bugs estancados (5 min)&lt;/li&gt;
&lt;li&gt;Metricas rapidas (2 min)&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="framework-de-decision"&gt;Framework de Decision &lt;a href="#framework-de-decision" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Decision&lt;/th&gt;
 &lt;th&gt;Criterio&lt;/th&gt;
 &lt;th&gt;Accion&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Fix Now&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Critico/Alto, bloquea release&lt;/td&gt;
 &lt;td&gt;Asignar, sprint actual&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Fix Next&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Importante, no bloquea&lt;/td&gt;
 &lt;td&gt;Backlog proximo sprint&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Defer&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Valido, bajo impacto&lt;/td&gt;
 &lt;td&gt;Release futuro&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Won&amp;rsquo;t Fix&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;By design o costo &amp;gt; beneficio&lt;/td&gt;
 &lt;td&gt;Cerrar con justificacion&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Need Info&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;No reproduce o poco claro&lt;/td&gt;
 &lt;td&gt;Devolver al reporter&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="ejercicio-haz-triage-de-estos-bugs"&gt;Ejercicio: Haz Triage de Estos Bugs &lt;a href="#ejercicio-haz-triage-de-estos-bugs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Triagea 6 bugs con deadline de release en 5 dias:&lt;/p&gt;</description></item><item><title>Severidad vs Prioridad</title><link>https://yrkan.com/es/course/module-04-documentation/severity-vs-priority/</link><pubDate>Mon, 09 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-04-documentation/severity-vs-priority/</guid><description>&lt;h2 id="la-distincion-critica"&gt;La Distincion Critica &lt;a href="#la-distincion-critica" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Severidad y prioridad son los dos conceptos mas confundidos en gestion de bugs. Confundirlos lleva a recursos mal asignados — bugs criticos se ignoran mientras issues cosmeticos reciben atencion urgente.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Severidad&lt;/strong&gt; = Que tan grave es el impacto en el sistema? (Evaluacion tecnica)
&lt;strong&gt;Prioridad&lt;/strong&gt; = Que tan pronto debe corregirse? (Decision de negocio)&lt;/p&gt;
&lt;p&gt;Estan relacionados pero son independientes. Un bug puede tener severidad alta pero prioridad baja, o viceversa.&lt;/p&gt;</description></item><item><title>Adivinación de Errores</title><link>https://yrkan.com/es/course/module-03-test-design/error-guessing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/error-guessing/</guid><description>&lt;h2 id="qué-es-error-guessing"&gt;¿Qué Es Error Guessing? &lt;a href="#qu%c3%a9-es-error-guessing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Error guessing es una técnica de test design basada en experiencia donde los testers usan su conocimiento de &lt;strong&gt;errores comunes, defectos típicos y fallas pasadas&lt;/strong&gt; para anticipar dónde es probable que el software falle. A diferencia de las técnicas formales que siguen reglas, error guessing aprovecha la intuición y la experiencia de dominio.&lt;/p&gt;
&lt;h3 id="por-qué-funciona-error-guessing"&gt;Por Qué Funciona Error Guessing &lt;a href="#por-qu%c3%a9-funciona-error-guessing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los testers experimentados desarrollan intuición sobre dónde se esconden los defectos. Esto viene de:&lt;/p&gt;</description></item><item><title>Análisis de Dominio</title><link>https://yrkan.com/es/course/module-03-test-design/domain-analysis/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/domain-analysis/</guid><description>&lt;h2 id="más-allá-de-boundaries-de-una-variable"&gt;Más allá de boundaries de una variable &lt;a href="#m%c3%a1s-all%c3%a1-de-boundaries-de-una-variable" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El BVA (Lección 3.2) testea una variable a la vez. Pero el software real tiene espacios de entrada definidos por relaciones entre múltiples variables. Considera un sistema de aprobación de préstamos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Aprobado si: &lt;code&gt;income &amp;gt;= 30000 AND debt_ratio &amp;lt; 0.4 AND credit_score &amp;gt;= 650&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Esto crea un dominio de entrada tridimensional. El boundary no es un solo punto sino una superficie en espacio 3D. Testear cada variable independientemente (como hace BVA) pierde defectos que ocurren en la intersección de boundaries.&lt;/p&gt;</description></item><item><title>Análisis de Valores Límite</title><link>https://yrkan.com/es/course/module-03-test-design/boundary-value-analysis/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/boundary-value-analysis/</guid><description>&lt;h2 id="qué-es-boundary-value-analysis"&gt;¿Qué Es Boundary Value Analysis? &lt;a href="#qu%c3%a9-es-boundary-value-analysis" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Boundary Value Analysis (BVA) es una técnica de test design de caja negra que se enfoca en probar valores en los bordes de las clases de equivalencia. Mientras Equivalence Partitioning te dice &lt;em&gt;qué&lt;/em&gt; grupos probar, BVA te dice &lt;em&gt;dónde&lt;/em&gt; dentro de esos grupos es más probable que se escondan los defectos.&lt;/p&gt;
&lt;h3 id="por-qué-importan-los-límites"&gt;Por Qué Importan los Límites &lt;a href="#por-qu%c3%a9-importan-los-l%c3%admites" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Los estudios muestran consistentemente que un número desproporcionado de defectos de software ocurren en los valores límite. La razón es simple: los desarrolladores escriben condiciones como &lt;code&gt;if (age &amp;gt;= 18)&lt;/code&gt; o &lt;code&gt;if (quantity &amp;lt;= 100)&lt;/code&gt;, y los errores off-by-one (&lt;code&gt;&amp;gt;&lt;/code&gt; vs &lt;code&gt;&amp;gt;=&lt;/code&gt;, &lt;code&gt;&amp;lt;&lt;/code&gt; vs &lt;code&gt;&amp;lt;=&lt;/code&gt;) están entre los errores de código más comunes.&lt;/p&gt;</description></item><item><title>Cobertura de Caminos</title><link>https://yrkan.com/es/course/module-03-test-design/path-coverage/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/path-coverage/</guid><description>&lt;h2 id="qué-es-la-cobertura-de-caminos"&gt;¿Qué es la cobertura de caminos? &lt;a href="#qu%c3%a9-es-la-cobertura-de-caminos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La cobertura de caminos requiere que cada camino único de ejecución a través de un programa o función se ejecute al menos una vez. Un camino es una secuencia completa de sentencias desde la entrada hasta la salida.&lt;/p&gt;
&lt;p&gt;Considera una función con dos sentencias &lt;code&gt;if&lt;/code&gt; secuenciales:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;def&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;process_order&lt;/span&gt;(amount, is_member):
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; discount &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; amount &lt;span style="color:#f92672"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;100&lt;/span&gt;: &lt;span style="color:#75715e"&gt;# Decisión 1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; discount &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; is_member: &lt;span style="color:#75715e"&gt;# Decisión 2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; discount &lt;span style="color:#f92672"&gt;+=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; amount &lt;span style="color:#f92672"&gt;-&lt;/span&gt; discount
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Cobertura de sentencias&lt;/strong&gt; necesita tests que ejecuten cada línea — 2 tests podrían bastar.&lt;/p&gt;</description></item><item><title>Cobertura de Condiciones y MC/DC</title><link>https://yrkan.com/es/course/module-03-test-design/condition-mcdc-coverage/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/condition-mcdc-coverage/</guid><description>&lt;h2 id="más-allá-de-la-cobertura-de-decisiones"&gt;Más allá de la cobertura de decisiones &lt;a href="#m%c3%a1s-all%c3%a1-de-la-cobertura-de-decisiones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la lección anterior, aprendiste sobre cobertura de sentencias y decisiones. La cobertura de decisiones asegura que cada branch se ejecute, pero no te dice si las condiciones individuales dentro de una decisión compuesta están realmente probadas. Considera este código:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; sensor_active &lt;span style="color:#f92672"&gt;and&lt;/span&gt; temperature &lt;span style="color:#f92672"&gt;&amp;gt;&lt;/span&gt; threshold &lt;span style="color:#f92672"&gt;and&lt;/span&gt; &lt;span style="color:#f92672"&gt;not&lt;/span&gt; emergency_override:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; activate_cooling_system()
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;La cobertura de decisiones solo requiere dos test cases — uno donde toda la expresión sea &lt;code&gt;True&lt;/code&gt; y otro donde sea &lt;code&gt;False&lt;/code&gt;. Pero ¿cuál condición causó el resultado &lt;code&gt;False&lt;/code&gt;? La cobertura de decisiones no se preocupa por eso. Para un sistema de enfriamiento en una planta nuclear, esa distinción es crítica.&lt;/p&gt;</description></item><item><title>Cobertura de Sentencias y Decisiones</title><link>https://yrkan.com/es/course/module-03-test-design/statement-decision-coverage/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/statement-decision-coverage/</guid><description>&lt;h2 id="qué-son-cobertura-de-sentencias-y-decisiones"&gt;¿Qué Son Cobertura de Sentencias y Decisiones? &lt;a href="#qu%c3%a9-son-cobertura-de-sentencias-y-decisiones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cobertura de sentencias y decisiones son técnicas de test design de &lt;strong&gt;caja blanca&lt;/strong&gt; (basadas en estructura) que miden qué tan exhaustivamente los test cases ejercitan el código fuente. A diferencia de las técnicas de caja negra que se enfocan en requerimientos, estas se enfocan en la &lt;strong&gt;estructura del código&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="por-qué-importa-la-cobertura-de-código"&gt;Por Qué Importa la Cobertura de Código &lt;a href="#por-qu%c3%a9-importa-la-cobertura-de-c%c3%b3digo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Código que nunca se ejecuta durante el testing es código que nunca se verifica. Las métricas de cobertura te dicen:&lt;/p&gt;</description></item><item><title>Combinando Múltiples Técnicas</title><link>https://yrkan.com/es/course/module-03-test-design/combining-multiple-techniques/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/combining-multiple-techniques/</guid><description>&lt;h2 id="por-qué-combinar-técnicas"&gt;¿Por qué combinar técnicas? &lt;a href="#por-qu%c3%a9-combinar-t%c3%a9cnicas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada técnica tiene puntos ciegos. EP pierde defectos de boundary. BVA pierde bugs dependientes de estado. State transition testing pierde errores de cálculo. Ninguna técnica sola provee cobertura completa.&lt;/p&gt;
&lt;p&gt;Cuando las combinas estratégicamente, las fortalezas de una compensan las debilidades de otra.&lt;/p&gt;
&lt;h2 id="el-modelo-de-tres-capas"&gt;El modelo de tres capas &lt;a href="#el-modelo-de-tres-capas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="capa-1-basada-en-especificación-black-box"&gt;Capa 1: Basada en especificación (Black-Box) &lt;a href="#capa-1-basada-en-especificaci%c3%b3n-black-box" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Forman la base. Verifican que el sistema cumple sus requisitos.&lt;/p&gt;</description></item><item><title>Elegir la Técnica Correcta</title><link>https://yrkan.com/es/course/module-03-test-design/choosing-the-right-technique/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/choosing-the-right-technique/</guid><description>&lt;h2 id="el-problema-de-selección-de-técnica"&gt;El problema de selección de técnica &lt;a href="#el-problema-de-selecci%c3%b3n-de-t%c3%a9cnica" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Has aprendido más de 20 técnicas de test design en este módulo. El desafío ya no es &amp;ldquo;¿qué técnicas existen?&amp;rdquo; sino &amp;ldquo;¿cuál debo usar ahora?&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Elegir la técnica incorrecta desperdicia esfuerzo. Usar EP en un protocolo con estado pierde bugs de transición. Usar state transition testing en un motor de cálculo pierde defectos de boundary.&lt;/p&gt;
&lt;h2 id="framework-de-decisión"&gt;Framework de decisión &lt;a href="#framework-de-decisi%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="paso-1-qué-tipo-de-feature-estás-testeando"&gt;Paso 1: ¿Qué tipo de feature estás testeando? &lt;a href="#paso-1-qu%c3%a9-tipo-de-feature-est%c3%a1s-testeando" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tipo de Feature&lt;/th&gt;
 &lt;th&gt;Técnicas más adecuadas&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Validación de input (formularios)&lt;/td&gt;
 &lt;td&gt;EP + BVA&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Reglas de negocio con condiciones&lt;/td&gt;
 &lt;td&gt;Tablas de decisión&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Workflows, protocolos, sesiones&lt;/td&gt;
 &lt;td&gt;State transition testing&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Configuración/compatibilidad&lt;/td&gt;
 &lt;td&gt;Testing pairwise&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Cálculos, fórmulas&lt;/td&gt;
 &lt;td&gt;Domain analysis + BVA&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;APIs con múltiples parámetros&lt;/td&gt;
 &lt;td&gt;Testing combinatorio&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algoritmos críticos (finanzas, seguridad)&lt;/td&gt;
 &lt;td&gt;MC/DC + path coverage&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Journeys de usuario complejos&lt;/td&gt;
 &lt;td&gt;Use case testing + state transitions&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="paso-2-qué-información-tienes"&gt;Paso 2: ¿Qué información tienes? &lt;a href="#paso-2-qu%c3%a9-informaci%c3%b3n-tienes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Información disponible&lt;/th&gt;
 &lt;th&gt;Técnicas aplicables&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Solo requisitos/especificaciones&lt;/td&gt;
 &lt;td&gt;Black-box: EP, BVA, tablas de decisión, state transitions&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Código fuente disponible&lt;/td&gt;
 &lt;td&gt;White-box: coverage de sentencias/decisiones, path, MC/DC&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Sin documentación&lt;/td&gt;
 &lt;td&gt;Basadas en experiencia: error guessing, testing exploratorio&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Modelo formal existe&lt;/td&gt;
 &lt;td&gt;Testing basado en modelos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="paso-3-cuál-es-el-nivel-de-riesgo"&gt;Paso 3: ¿Cuál es el nivel de riesgo? &lt;a href="#paso-3-cu%c3%a1l-es-el-nivel-de-riesgo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Nivel de riesgo&lt;/th&gt;
 &lt;th&gt;Enfoque recomendado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Safety-critical&lt;/td&gt;
 &lt;td&gt;MC/DC + domain analysis + mutation testing&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Financiero/regulatorio&lt;/td&gt;
 &lt;td&gt;Tablas de decisión + BVA + testing combinatorio&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Lógica de negocio core&lt;/td&gt;
 &lt;td&gt;EP + BVA + state transitions + path coverage&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Features estándar&lt;/td&gt;
 &lt;td&gt;EP + BVA + error guessing&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Bajo riesgo/cosmético&lt;/td&gt;
 &lt;td&gt;Error guessing + checklist-based&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mapeo-de-técnicas-por-categoría"&gt;Mapeo de técnicas por categoría &lt;a href="#mapeo-de-t%c3%a9cnicas-por-categor%c3%ada" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="testing-de-entrada-de-datos"&gt;Testing de entrada de datos &lt;a href="#testing-de-entrada-de-datos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Empezar con EP&lt;/strong&gt; — identificar clases válidas e inválidas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Aplicar BVA&lt;/strong&gt; — testear boundaries de cada clase&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agregar domain analysis&lt;/strong&gt; — si múltiples inputs interactúan&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Usar error guessing&lt;/strong&gt; — inputs erróneos comunes&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="testing-de-lógica-de-negocio"&gt;Testing de lógica de negocio &lt;a href="#testing-de-l%c3%b3gica-de-negocio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Empezar con tablas de decisión&lt;/strong&gt; — mapear combinaciones&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agregar state transitions&lt;/strong&gt; — si el comportamiento depende del estado previo&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Aplicar cause-effect graphing&lt;/strong&gt; — si las condiciones tienen dependencias complejas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Usar testing combinatorio&lt;/strong&gt; — si muchos parámetros interactúan&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="testing-estructural-white-box"&gt;Testing estructural (White-Box) &lt;a href="#testing-estructural-white-box" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Statement coverage&lt;/strong&gt; — mínimo básico&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Decision coverage&lt;/strong&gt; — ambos branches de cada decisión&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MC/DC&lt;/strong&gt; — si safety-critical&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Path coverage&lt;/strong&gt; — algoritmos críticos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mutation testing&lt;/strong&gt; — validar que los tests son efectivos&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="ejemplos-del-mundo-real"&gt;Ejemplos del mundo real &lt;a href="#ejemplos-del-mundo-real" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="ejemplo-1-formulario-de-login"&gt;Ejemplo 1: Formulario de login &lt;a href="#ejemplo-1-formulario-de-login" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Campo username: &lt;strong&gt;EP&lt;/strong&gt; + &lt;strong&gt;BVA&lt;/strong&gt; (longitud min/max)&lt;/li&gt;
&lt;li&gt;Campo password: &lt;strong&gt;EP&lt;/strong&gt; + &lt;strong&gt;BVA&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Botón login: &lt;strong&gt;State transitions&lt;/strong&gt; (bloqueo tras 3 intentos fallidos)&lt;/li&gt;
&lt;li&gt;General: &lt;strong&gt;Error guessing&lt;/strong&gt; (SQL injection, XSS, campos vacíos)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="ejemplo-2-calculadora-de-seguro"&gt;Ejemplo 2: Calculadora de seguro &lt;a href="#ejemplo-2-calculadora-de-seguro" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Cálculo de prima: &lt;strong&gt;Tablas de decisión&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Rangos de input: &lt;strong&gt;BVA&lt;/strong&gt; + &lt;strong&gt;Domain analysis&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Niveles de tarifa: &lt;strong&gt;EP&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Combinaciones de descuento: &lt;strong&gt;Pairwise testing&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="ejemplo-3-checkout-de-e-commerce"&gt;Ejemplo 3: Checkout de e-commerce &lt;a href="#ejemplo-3-checkout-de-e-commerce" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Estados del carrito: &lt;strong&gt;State transition testing&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Métodos de pago: &lt;strong&gt;Pairwise testing&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Reglas de envío: &lt;strong&gt;Tablas de decisión&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Flujo end-to-end: &lt;strong&gt;Use case testing&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="ejercicio-selección-de-técnicas"&gt;Ejercicio: Selección de técnicas &lt;a href="#ejercicio-selecci%c3%b3n-de-t%c3%a9cnicas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="problema-1"&gt;Problema 1 &lt;a href="#problema-1" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Para cada feature, selecciona técnicas primaria y secundaria:&lt;/p&gt;</description></item><item><title>Estrategias de Testing Combinatorio</title><link>https://yrkan.com/es/course/module-03-test-design/combinatorial-testing-strategies/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/combinatorial-testing-strategies/</guid><description>&lt;h2 id="la-explosión-combinatoria"&gt;La explosión combinatoria &lt;a href="#la-explosi%c3%b3n-combinatoria" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cuando un sistema tiene múltiples parámetros de entrada, cada uno con varios valores posibles, el total de combinaciones crece exponencialmente. Un formulario web con 5 campos, cada uno con 4 valores posibles, tiene 4^5 = 1,024 combinaciones.&lt;/p&gt;
&lt;p&gt;Testear todas las combinaciones rara vez es factible. Pero testear muy pocas arriesga perder fallas de interacción críticas. Las estrategias de testing combinatorio proveen enfoques sistemáticos que balancean exhaustividad con practicidad.&lt;/p&gt;</description></item><item><title>Evaluación del Módulo 3</title><link>https://yrkan.com/es/course/module-03-test-design/module-3-assessment/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/module-3-assessment/</guid><description>&lt;h2 id="resumen-de-la-evaluación-del-módulo-3"&gt;Resumen de la evaluación del Módulo 3 &lt;a href="#resumen-de-la-evaluaci%c3%b3n-del-m%c3%b3dulo-3" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicidades por llegar a la última lección del Módulo 3. Esta evaluación integral testea tu comprensión de todas las técnicas de test design.&lt;/p&gt;
&lt;p&gt;La evaluación consiste en tres partes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Preguntas de conocimiento&lt;/strong&gt; — 10 preguntas quiz en el frontmatter&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Preguntas basadas en escenarios&lt;/strong&gt; — Aplica técnicas a situaciones reales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ejercicio práctico&lt;/strong&gt; — Diseña un test suite completo&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="guía-de-puntuación"&gt;Guía de puntuación &lt;a href="#gu%c3%ada-de-puntuaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Parte 1 (Quiz):&lt;/strong&gt; 10 preguntas, 3 puntos c/u = 30 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parte 2 (Escenarios):&lt;/strong&gt; 5 escenarios, 6 puntos c/u = 30 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parte 3 (Ejercicio):&lt;/strong&gt; 40 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Total:&lt;/strong&gt; 100 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Puntaje para aprobar:&lt;/strong&gt; 70 puntos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="temas-cubiertos"&gt;Temas cubiertos &lt;a href="#temas-cubiertos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Área&lt;/th&gt;
 &lt;th&gt;Lecciones&lt;/th&gt;
 &lt;th&gt;Conceptos clave&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Basadas en especificación&lt;/td&gt;
 &lt;td&gt;3.1-3.9&lt;/td&gt;
 &lt;td&gt;EP, BVA, tablas de decisión, state transitions, pairwise&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Basadas en experiencia&lt;/td&gt;
 &lt;td&gt;3.10-3.12&lt;/td&gt;
 &lt;td&gt;Arreglos ortogonales, error guessing, checklists&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Basadas en estructura&lt;/td&gt;
 &lt;td&gt;3.13-3.18&lt;/td&gt;
 &lt;td&gt;Coverage, MC/DC, path, mutation, data flow, control flow&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Avanzadas&lt;/td&gt;
 &lt;td&gt;3.19-3.21&lt;/td&gt;
 &lt;td&gt;Domain analysis, estrategias combinatorias, MBT&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Estrategia&lt;/td&gt;
 &lt;td&gt;3.22-3.24&lt;/td&gt;
 &lt;td&gt;Selección, combinación, aplicación real&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="parte-2-preguntas-basadas-en-escenarios"&gt;Parte 2: Preguntas basadas en escenarios &lt;a href="#parte-2-preguntas-basadas-en-escenarios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Escenario 1:&lt;/strong&gt; Una app bancaria calcula intereses según tipo de cuenta (regular, premium, VIP), tramo de saldo ($0-10K, $10K-50K, $50K+) y antigüedad (&amp;lt;1 año, 1-5, &amp;gt;5). ¿Qué técnicas aplicas?&lt;/p&gt;</description></item><item><title>Grafos Causa-Efecto</title><link>https://yrkan.com/es/course/module-03-test-design/cause-effect-graphing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/cause-effect-graphing/</guid><description>&lt;h2 id="qué-es-cause-effect-graphing"&gt;¿Qué Es Cause-Effect Graphing? &lt;a href="#qu%c3%a9-es-cause-effect-graphing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cause-effect graphing es una técnica sistemática que traduce especificaciones en lenguaje natural a un &lt;strong&gt;grafo de lógica booleana&lt;/strong&gt;, que luego se convierte en una tabla de decisión. Conecta requerimientos ambiguos con test cases precisos.&lt;/p&gt;
&lt;h3 id="por-qué-usar-cause-effect-graphing"&gt;¿Por Qué Usar Cause-Effect Graphing? &lt;a href="#por-qu%c3%a9-usar-cause-effect-graphing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Las tablas de decisión son poderosas pero tienen una debilidad: con muchas condiciones, obtienes 2^N reglas, la mayoría de las cuales pueden ser imposibles o redundantes. Cause-effect graphing resuelve esto modelando las &lt;strong&gt;relaciones lógicas&lt;/strong&gt; y &lt;strong&gt;restricciones&lt;/strong&gt; entre inputs, generando solo combinaciones significativas.&lt;/p&gt;</description></item><item><title>Método de Árbol de Clasificación</title><link>https://yrkan.com/es/course/module-03-test-design/classification-tree-method/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/classification-tree-method/</guid><description>&lt;h2 id="qué-es-el-classification-tree-method"&gt;¿Qué Es el Classification Tree Method? &lt;a href="#qu%c3%a9-es-el-classification-tree-method" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Classification Tree Method (CTM) es una técnica visual de test design que proporciona una forma estructurada de descomponer el dominio de input de un objeto de test en un &lt;strong&gt;árbol de clasificaciones y clases&lt;/strong&gt;, y luego generar test cases seleccionando combinaciones del árbol.&lt;/p&gt;
&lt;h3 id="conceptos-clave"&gt;Conceptos Clave &lt;a href="#conceptos-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Objeto de test:&lt;/strong&gt; El nodo raíz — el sistema, función o feature que se prueba&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Clasificación:&lt;/strong&gt; Un aspecto o dimensión relevante para el test (como una categoría de parámetro)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Clase:&lt;/strong&gt; Un valor específico o partición dentro de una clasificación&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tabla de combinación:&lt;/strong&gt; Una matriz debajo del árbol que muestra qué clases se combinan en test cases&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="estructura-del-árbol-de-clasificación"&gt;Estructura del Árbol de Clasificación &lt;a href="#estructura-del-%c3%a1rbol-de-clasificaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[Objeto de Test: Pago Online] --&gt; B[Método de Pago]
 A --&gt; C[Monto]
 A --&gt; D[Moneda]
 B --&gt; B1[Tarjeta de Crédito]
 B --&gt; B2[PayPal]
 B --&gt; B3[Transferencia Bancaria]
 C --&gt; C1["Pequeño (&lt;$50)"]
 C --&gt; C2["Medio ($50-$500)"]
 C --&gt; C3["Grande (&gt;$500)"]
 D --&gt; D1[USD]
 D --&gt; D2[EUR]
 D --&gt; D3[GBP]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;p&gt;El árbol descompone &amp;ldquo;Pago Online&amp;rdquo; en tres clasificaciones (Método de Pago, Monto, Moneda), cada una con sus propias clases.&lt;/p&gt;</description></item><item><title>Partición de Equivalencia</title><link>https://yrkan.com/es/course/module-03-test-design/equivalence-partitioning/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/equivalence-partitioning/</guid><description>&lt;h2 id="qué-es-equivalence-partitioning"&gt;¿Qué Es Equivalence Partitioning? &lt;a href="#qu%c3%a9-es-equivalence-partitioning" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Equivalence Partitioning (EP) es una de las técnicas de test design de caja negra más fundamentales. La idea central es simple pero poderosa: en lugar de probar cada input posible, divides el dominio de input en &lt;strong&gt;clases de equivalencia&lt;/strong&gt; — grupos de valores que el sistema debería tratar de forma idéntica.&lt;/p&gt;
&lt;p&gt;Si el sistema maneja correctamente un valor de una clase, debería manejar correctamente todos los valores de esa clase. Esta suposición te permite reducir miles de test cases potenciales a un número manejable.&lt;/p&gt;</description></item><item><title>Taller Práctico de Diseño de Tests</title><link>https://yrkan.com/es/course/module-03-test-design/real-world-test-design-workshop/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/real-world-test-design-workshop/</guid><description>&lt;h2 id="introducción-al-taller"&gt;Introducción al taller &lt;a href="#introducci%c3%b3n-al-taller" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esta lección es un taller práctico. Aplicarás todo lo aprendido en el Módulo 3 para diseñar test suites para features realistas. Cada ejercicio simula un escenario real donde debes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Analizar los requisitos de la feature&lt;/li&gt;
&lt;li&gt;Seleccionar técnicas apropiadas&lt;/li&gt;
&lt;li&gt;Derivar test cases sistemáticamente&lt;/li&gt;
&lt;li&gt;Documentar tu justificación y cobertura&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="ejercicio-1-motor-de-precios-de-ride-sharing"&gt;Ejercicio 1: Motor de precios de ride-sharing &lt;a href="#ejercicio-1-motor-de-precios-de-ride-sharing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Descripción:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Una app de ride-sharing calcula tarifas usando estas reglas:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tarifa base:&lt;/strong&gt; $2.50
&lt;strong&gt;Por milla:&lt;/strong&gt; $1.75 (standard), $2.50 (premium), $3.25 (luxury)
&lt;strong&gt;Por minuto:&lt;/strong&gt; $0.35 (standard), $0.50 (premium), $0.65 (luxury)
&lt;strong&gt;Tarifa mínima:&lt;/strong&gt; $7.00 (standard), $12.00 (premium), $18.00 (luxury)&lt;/p&gt;</description></item><item><title>Testing Basado en Checklists</title><link>https://yrkan.com/es/course/module-03-test-design/checklist-based-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/checklist-based-testing/</guid><description>&lt;h2 id="qué-es-testing-basado-en-checklists"&gt;¿Qué Es Testing Basado en Checklists? &lt;a href="#qu%c3%a9-es-testing-basado-en-checklists" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Testing basado en checklists usa &lt;strong&gt;listas de alto nivel de items a probar&lt;/strong&gt; en vez de test cases detallados paso a paso. Cada item recuerda al tester &lt;em&gt;qué&lt;/em&gt; verificar sin prescribir &lt;em&gt;cómo&lt;/em&gt; verificarlo, dando flexibilidad a los testers experimentados mientras se asegura que nada importante se pierda.&lt;/p&gt;
&lt;h3 id="checklists-vs-test-cases-detallados"&gt;Checklists vs. Test Cases Detallados &lt;a href="#checklists-vs-test-cases-detallados" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Aspecto&lt;/th&gt;
 &lt;th&gt;Checklist&lt;/th&gt;
 &lt;th&gt;Test Case Detallado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Formato&lt;/td&gt;
 &lt;td&gt;Puntos breves&lt;/td&gt;
 &lt;td&gt;Paso a paso con resultados esperados&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tiempo de creación&lt;/td&gt;
 &lt;td&gt;Minutos&lt;/td&gt;
 &lt;td&gt;Horas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Flexibilidad&lt;/td&gt;
 &lt;td&gt;Alta — tester decide cómo probar&lt;/td&gt;
 &lt;td&gt;Baja — pasos exactos prescritos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Reproducibilidad&lt;/td&gt;
 &lt;td&gt;Menor — depende del skill del tester&lt;/td&gt;
 &lt;td&gt;Mayor — cualquiera puede seguirlo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Mantenimiento&lt;/td&gt;
 &lt;td&gt;Fácil de actualizar&lt;/td&gt;
 &lt;td&gt;Costoso de mantener&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Mejor para&lt;/td&gt;
 &lt;td&gt;Testers experimentados, features cambiantes&lt;/td&gt;
 &lt;td&gt;Flujos críticos, compliance regulatorio&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="cuándo-usar-checklists"&gt;Cuándo Usar Checklists &lt;a href="#cu%c3%a1ndo-usar-checklists" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Buena opción:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Testing Basado en Modelos</title><link>https://yrkan.com/es/course/module-03-test-design/model-based-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/model-based-testing/</guid><description>&lt;h2 id="qué-es-el-testing-basado-en-modelos"&gt;¿Qué es el testing basado en modelos? &lt;a href="#qu%c3%a9-es-el-testing-basado-en-modelos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing basado en modelos (MBT) es un enfoque donde creas un modelo formal del comportamiento esperado del sistema, y luego usas herramientas para generar automáticamente test cases a partir de ese modelo. En lugar de escribir manualmente cientos de tests, construyes un modelo y dejas que los algoritmos deriven los tests.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;El flujo de trabajo MBT:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Analizar requisitos&lt;/strong&gt; — entender el comportamiento del sistema&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Construir un modelo&lt;/strong&gt; — representar el comportamiento como modelo formal&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Generar tests&lt;/strong&gt; — usar herramientas MBT para derivar test cases&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ejecutar tests&lt;/strong&gt; — correr los tests generados contra el sistema&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Evaluar resultados&lt;/strong&gt; — el modelo sirve como oráculo&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mantener el modelo&lt;/strong&gt; — actualizar cuando cambien los requisitos&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="por-qué-mbt"&gt;¿Por qué MBT? &lt;a href="#por-qu%c3%a9-mbt" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Problemas del diseño manual:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Testing con Arreglos Ortogonales</title><link>https://yrkan.com/es/course/module-03-test-design/orthogonal-array-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/orthogonal-array-testing/</guid><description>&lt;h2 id="qué-es-orthogonal-array-testing"&gt;¿Qué Es Orthogonal Array Testing? &lt;a href="#qu%c3%a9-es-orthogonal-array-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Orthogonal Array Testing (OAT) usa estructuras matemáticas llamadas &lt;strong&gt;arreglos ortogonales&lt;/strong&gt; para generar suites de tests. Estos arreglos garantizan que cada par de valores de parámetros aparezca un número igual de veces en todos los test cases, proporcionando &lt;strong&gt;cobertura balanceada y uniforme&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="orígenes-método-taguchi"&gt;Orígenes: Método Taguchi &lt;a href="#or%c3%adgenes-m%c3%a9todo-taguchi" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;OAT se originó del &lt;strong&gt;método Taguchi&lt;/strong&gt; en ingeniería de calidad de manufactura. El Dr. Genichi Taguchi desarrolló arreglos ortogonales para probar eficientemente el impacto de múltiples factores en la calidad del producto. El testing de software adoptó esta técnica para diseño de tests combinatorios.&lt;/p&gt;</description></item><item><title>Testing con Tablas de Decisión</title><link>https://yrkan.com/es/course/module-03-test-design/decision-table-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/decision-table-testing/</guid><description>&lt;h2 id="qué-es-decision-table-testing"&gt;¿Qué Es Decision Table Testing? &lt;a href="#qu%c3%a9-es-decision-table-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Decision table testing es una técnica de caja negra para probar sistemas donde el output depende de &lt;strong&gt;combinaciones de condiciones&lt;/strong&gt;. Cuando las reglas de negocio involucran múltiples inputs que interactúan para determinar el resultado, una tabla de decisión asegura que pruebes cada combinación significativa.&lt;/p&gt;
&lt;h3 id="cuándo-usar-tablas-de-decisión"&gt;Cuándo Usar Tablas de Decisión &lt;a href="#cu%c3%a1ndo-usar-tablas-de-decisi%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Usa esta técnica cuando:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Múltiples condiciones se combinan para determinar un resultado&lt;/li&gt;
&lt;li&gt;Las reglas de negocio contienen lógica if/then/else compleja&lt;/li&gt;
&lt;li&gt;La especificación dice &amp;ldquo;si A y B, entonces X; si A y no B, entonces Y&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Necesitas verificar que cada combinación se maneje correctamente&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="anatomía-de-una-tabla-de-decisión"&gt;Anatomía de una Tabla de Decisión &lt;a href="#anatom%c3%ada-de-una-tabla-de-decisi%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Una tabla de decisión tiene cuatro cuadrantes:&lt;/p&gt;</description></item><item><title>Testing de Casos de Uso</title><link>https://yrkan.com/es/course/module-03-test-design/use-case-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/use-case-testing/</guid><description>&lt;h2 id="qué-es-use-case-testing"&gt;¿Qué Es Use Case Testing? &lt;a href="#qu%c3%a9-es-use-case-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Use case testing deriva test cases de &lt;strong&gt;documentos de use case&lt;/strong&gt; — descripciones estructuradas de cómo los actores interactúan con un sistema para lograr objetivos. Cada use case contiene un escenario de éxito principal y flujos alternativos, proporcionando escenarios de test naturales.&lt;/p&gt;
&lt;h3 id="anatomía-de-un-use-case"&gt;Anatomía de un Use Case &lt;a href="#anatom%c3%ada-de-un-use-case" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Elemento&lt;/th&gt;
 &lt;th&gt;Descripción&lt;/th&gt;
 &lt;th&gt;Ejemplo&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Nombre&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Título descriptivo breve&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Realizar Pedido&amp;rdquo;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Actor&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Quién inicia la interacción&lt;/td&gt;
 &lt;td&gt;Cliente, Admin&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Precondición&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Qué debe ser verdad antes de empezar&lt;/td&gt;
 &lt;td&gt;Usuario logueado, carrito no vacío&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Flujo principal&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Happy path paso a paso&lt;/td&gt;
 &lt;td&gt;1. Seleccionar envío&amp;hellip; 2. Ingresar pago&amp;hellip;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Flujos alternativos&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Desviaciones del flujo principal&lt;/td&gt;
 &lt;td&gt;2a. Pago rechazado → mostrar error&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Postcondición&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Qué es verdad después del éxito&lt;/td&gt;
 &lt;td&gt;Orden creada, email enviado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="ejemplo-use-case-realizar-pedido"&gt;Ejemplo: Use Case Realizar Pedido &lt;a href="#ejemplo-use-case-realizar-pedido" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Actor:&lt;/strong&gt; Cliente Registrado
&lt;strong&gt;Precondición:&lt;/strong&gt; Cliente logueado, carrito con 1+ items&lt;/p&gt;</description></item><item><title>Testing de Flujo de Control</title><link>https://yrkan.com/es/course/module-03-test-design/control-flow-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/control-flow-testing/</guid><description>&lt;h2 id="de-código-a-grafos"&gt;De código a grafos &lt;a href="#de-c%c3%b3digo-a-grafos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El control flow testing usa la estructura del código — sus branches, loops y secuencias — como base para el diseño de tests. La herramienta principal es el &lt;strong&gt;grafo de flujo de control&lt;/strong&gt; (CFG), que provee una representación visual de todos los caminos de ejecución posibles.&lt;/p&gt;
&lt;p&gt;A diferencia de las técnicas black-box que ignoran la implementación, el control flow testing es una técnica white-box que requiere acceso al código fuente.&lt;/p&gt;</description></item><item><title>Testing de Flujo de Datos</title><link>https://yrkan.com/es/course/module-03-test-design/data-flow-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/data-flow-testing/</guid><description>&lt;h2 id="qué-es-el-data-flow-testing"&gt;¿Qué es el data flow testing? &lt;a href="#qu%c3%a9-es-el-data-flow-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El data flow testing se enfoca en el ciclo de vida de las variables: dónde son definidas (se les asigna un valor), dónde son usadas (leídas) y dónde son eliminadas (salen de scope o son reasignadas). Al rastrear estos eventos a lo largo de los caminos de ejecución, el data flow testing revela defectos que otras técnicas no detectan.&lt;/p&gt;
&lt;p&gt;Mientras el control flow testing pregunta &amp;ldquo;¿qué caminos toma el código?&amp;rdquo;, el data flow testing pregunta &amp;ldquo;¿qué pasa con los datos a lo largo de esos caminos?&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing de Historias de Usuario</title><link>https://yrkan.com/es/course/module-03-test-design/user-story-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/user-story-testing/</guid><description>&lt;h2 id="qué-es-user-story-testing"&gt;¿Qué Es User Story Testing? &lt;a href="#qu%c3%a9-es-user-story-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En desarrollo Agile, los requerimientos se capturan como &lt;strong&gt;user stories&lt;/strong&gt; — descripciones cortas de funcionalidad desde la perspectiva del usuario. User story testing deriva test cases de estas historias y sus &lt;strong&gt;criterios de aceptación&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="formato-de-user-story"&gt;Formato de User Story &lt;a href="#formato-de-user-story" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Como [rol],
Quiero [acción],
Para que [beneficio].
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;Ejemplo:&lt;/strong&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Como cliente registrado,
Quiero filtrar productos por rango de precio,
Para poder encontrar rápidamente productos dentro de mi presupuesto.
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="las-3-cs-de-user-stories"&gt;Las 3 C&amp;rsquo;s de User Stories &lt;a href="#las-3-cs-de-user-stories" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;C&lt;/th&gt;
 &lt;th&gt;Significado&lt;/th&gt;
 &lt;th&gt;Impacto en Testing&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Card&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;La historia escrita&lt;/td&gt;
 &lt;td&gt;Proporciona el alcance del test&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Conversation&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Discusión con stakeholders&lt;/td&gt;
 &lt;td&gt;Revela requerimientos ocultos y edge cases&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Confirmation&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Criterios de aceptación&lt;/td&gt;
 &lt;td&gt;Fuente directa de test cases&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="criterios-de-aceptación-en-givenwhenthen"&gt;Criterios de Aceptación en Given/When/Then &lt;a href="#criterios-de-aceptaci%c3%b3n-en-givenwhenthen" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-gherkin" data-lang="gherkin"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;Given &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;que estoy en la página de listado de productos
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;hay productos con precios de $&lt;/span&gt;&lt;span style="color:#e6db74"&gt;5&lt;/span&gt;&lt;span style="color:#a6e22e"&gt; a $&lt;/span&gt;&lt;span style="color:#e6db74"&gt;500&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;When &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;configuro el filtro de precio a $&lt;/span&gt;&lt;span style="color:#e6db74"&gt;20&lt;/span&gt;&lt;span style="color:#a6e22e"&gt; - $&lt;/span&gt;&lt;span style="color:#e6db74"&gt;100&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;Then &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;debo ver solo productos con precio entre $&lt;/span&gt;&lt;span style="color:#e6db74"&gt;20&lt;/span&gt;&lt;span style="color:#a6e22e"&gt; y $&lt;/span&gt;&lt;span style="color:#e6db74"&gt;100&lt;/span&gt;&lt;span style="color:#a6e22e"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;el conteo de productos debe actualizarse
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt; &lt;/span&gt;&lt;span style="color:#66d9ef"&gt;And &lt;/span&gt;&lt;span style="color:#a6e22e"&gt;la URL debe incluir los parámetros del filtro
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Given&lt;/strong&gt; = Precondición (setup del test)
&lt;strong&gt;When&lt;/strong&gt; = Acción (paso del test)
&lt;strong&gt;Then&lt;/strong&gt; = Resultado esperado (aserción del test)&lt;/p&gt;</description></item><item><title>Testing de Mutaciones</title><link>https://yrkan.com/es/course/module-03-test-design/mutation-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/mutation-testing/</guid><description>&lt;h2 id="testeando-tus-tests"&gt;Testeando tus tests &lt;a href="#testeando-tus-tests" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las métricas de code coverage te dicen qué código ejecutan tus tests, pero no si tus tests realmente atraparían bugs en ese código. Un test que ejecuta una línea pero nunca verifica el resultado logra cobertura sin proveer valor.&lt;/p&gt;
&lt;p&gt;El mutation testing invierte la perspectiva: en lugar de medir cuánto código cubren tus tests, mide qué tan bien detectan fallas. Lo hace introduciendo deliberadamente bugs (mutaciones) en tu código fuente y verificando si tu test suite los atrapa.&lt;/p&gt;</description></item><item><title>Testing de Transición de Estados</title><link>https://yrkan.com/es/course/module-03-test-design/state-transition-testing/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/state-transition-testing/</guid><description>&lt;h2 id="qué-es-state-transition-testing"&gt;¿Qué Es State Transition Testing? &lt;a href="#qu%c3%a9-es-state-transition-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;State transition testing modela un sistema como una &lt;strong&gt;máquina de estados finita&lt;/strong&gt; — un sistema que puede estar en uno de un número limitado de estados, y transiciona entre estados en respuesta a eventos. Esta técnica es ideal para probar workflows, procesos y cualquier sistema con modos de operación distintos.&lt;/p&gt;
&lt;h3 id="conceptos-clave"&gt;Conceptos Clave &lt;a href="#conceptos-clave" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Estado:&lt;/strong&gt; Una condición en la que se encuentra el sistema (ej., &amp;ldquo;Sesión Cerrada&amp;rdquo;, &amp;ldquo;Activo&amp;rdquo;, &amp;ldquo;Bloqueado&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Transición:&lt;/strong&gt; Movimiento de un estado a otro&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Evento:&lt;/strong&gt; Algo que activa una transición (ej., &amp;ldquo;ingresar credenciales correctas&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Condición de guarda:&lt;/strong&gt; Una condición que debe ser verdadera para que la transición ocurra&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Acción:&lt;/strong&gt; Algo que sucede durante una transición (ej., &amp;ldquo;enviar notificación&amp;rdquo;)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="diagrama-de-transición-de-estados"&gt;Diagrama de Transición de Estados &lt;a href="#diagrama-de-transici%c3%b3n-de-estados" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="state"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;stateDiagram-v2
 [*] --&gt; SesionCerrada
 SesionCerrada --&gt; SesionAbierta: Credenciales válidas
 SesionAbierta --&gt; SesionCerrada: Cerrar sesión
 SesionAbierta --&gt; Bloqueado: 30 min inactividad
 Bloqueado --&gt; SesionAbierta: Credenciales válidas
 Bloqueado --&gt; SesionCerrada: Cerrar sesión
 SesionCerrada --&gt; SesionCerrada: Credenciales inválidas [intentos &lt; 3]
 SesionCerrada --&gt; Suspendido: Credenciales inválidas [intentos = 3]
 Suspendido --&gt; SesionCerrada: Admin desbloquea
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;p&gt;Este diagrama muestra un sistema de autenticación con 4 estados y 7 transiciones.&lt;/p&gt;</description></item><item><title>Testing por Pares con PICT</title><link>https://yrkan.com/es/course/module-03-test-design/pairwise-testing-pict/</link><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-03-test-design/pairwise-testing-pict/</guid><description>&lt;h2 id="qué-es-pairwise-testing"&gt;¿Qué Es Pairwise Testing? &lt;a href="#qu%c3%a9-es-pairwise-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Pairwise testing (también llamado all-pairs testing) es una técnica de test design combinatorio basada en una observación clave: &lt;strong&gt;la mayoría de los defectos son causados por interacciones entre dos parámetros&lt;/strong&gt;, no tres o más simultáneamente.&lt;/p&gt;
&lt;p&gt;En lugar de probar cada combinación posible (que crece exponencialmente), pairwise testing garantiza que cada par de valores de parámetros aparezca en al menos un test case.&lt;/p&gt;
&lt;h3 id="el-problema-de-la-explosión-combinatoria"&gt;El Problema de la Explosión Combinatoria &lt;a href="#el-problema-de-la-explosi%c3%b3n-combinatoria" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Considera probar una aplicación web en:&lt;/p&gt;</description></item><item><title>Análisis Estático con SonarQube</title><link>https://yrkan.com/es/course/module-02-levels-types/static-analysis-sonarqube/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/static-analysis-sonarqube/</guid><description>&lt;h2 id="qué-es-el-análisis-estático"&gt;¿Qué Es el Análisis Estático? &lt;a href="#qu%c3%a9-es-el-an%c3%a1lisis-est%c3%a1tico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El análisis estático es la examinación automatizada del código fuente sin ejecutarlo. Las herramientas escanean el código buscando patrones que indican bugs, vulnerabilidades de seguridad, violaciones de estilo y problemas de complejidad.&lt;/p&gt;
&lt;p&gt;Mientras las revisiones manuales (cubiertas en la Lección 2.29) dependen del juicio humano, las herramientas de análisis estático aplican miles de reglas consistentemente en cada línea de código en segundos. Nunca se cansan, nunca omiten un patrón conocido y se ejecutan igual cada vez.&lt;/p&gt;</description></item><item><title>Evaluación Integral del Módulo 2</title><link>https://yrkan.com/es/course/module-02-levels-types/module-2-assessment/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/module-2-assessment/</guid><description>&lt;h2 id="descripción-de-la-evaluación-del-módulo-2"&gt;Descripción de la Evaluación del Módulo 2 &lt;a href="#descripci%c3%b3n-de-la-evaluaci%c3%b3n-del-m%c3%b3dulo-2" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicitaciones por llegar a la última lección del Módulo 2. Esta evaluación integral prueba tu comprensión de todos los temas cubiertos en las 35 lecciones del módulo.&lt;/p&gt;
&lt;p&gt;La evaluación consiste en tres partes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Preguntas de Conocimiento&lt;/strong&gt; — 10 preguntas quiz en el frontmatter (tómalas antes de seguir leyendo)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Preguntas Basadas en Escenarios&lt;/strong&gt; — Clasifica y aplica conceptos a situaciones reales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ejercicio Práctico&lt;/strong&gt; — Crea una estrategia de testing para un proyecto nuevo&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="guía-de-puntuación"&gt;Guía de Puntuación &lt;a href="#gu%c3%ada-de-puntuaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Parte 1 (Quiz):&lt;/strong&gt; 10 preguntas × 3 puntos = 30 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parte 2 (Escenarios):&lt;/strong&gt; 5 escenarios × 6 puntos = 30 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parte 3 (Ejercicio):&lt;/strong&gt; 40 puntos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Total:&lt;/strong&gt; 100 puntos. &lt;strong&gt;Aprobación:&lt;/strong&gt; 70 puntos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="temas-cubiertos"&gt;Temas Cubiertos &lt;a href="#temas-cubiertos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Área&lt;/th&gt;
 &lt;th&gt;Lecciones&lt;/th&gt;
 &lt;th&gt;Conceptos Clave&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Niveles de Testing&lt;/td&gt;
 &lt;td&gt;2.1-2.6&lt;/td&gt;
 &lt;td&gt;Unitario, integración, sistema, E2E, UAT, pirámide&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tipos Funcionales&lt;/td&gt;
 &lt;td&gt;2.7-2.10&lt;/td&gt;
 &lt;td&gt;Smoke, sanity, regresión, retesting&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Testing No Funcional&lt;/td&gt;
 &lt;td&gt;2.11-2.25&lt;/td&gt;
 &lt;td&gt;Rendimiento, seguridad, usabilidad, accesibilidad, compatibilidad, confiabilidad&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Métodos de Testing&lt;/td&gt;
 &lt;td&gt;2.26-2.28&lt;/td&gt;
 &lt;td&gt;White-box, black-box, grey-box&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Estático vs. Dinámico&lt;/td&gt;
 &lt;td&gt;2.29-2.31&lt;/td&gt;
 &lt;td&gt;Revisiones, inspecciones, análisis estático&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Enfoques Exploratorios&lt;/td&gt;
 &lt;td&gt;2.32-2.34&lt;/td&gt;
 &lt;td&gt;Exploratorio, ad hoc, monkey testing, SBTM&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="parte-2-preguntas-basadas-en-escenarios"&gt;Parte 2: Preguntas Basadas en Escenarios &lt;a href="#parte-2-preguntas-basadas-en-escenarios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Escenario 1:&lt;/strong&gt; Tu equipo desplegó un hotfix de seguridad en producción que cambia el flujo de autenticación. Tienes 30 minutos antes de que cierre la ventana de despliegue.&lt;/p&gt;</description></item><item><title>Fundamentos de Pruebas de Penetración</title><link>https://yrkan.com/es/course/module-02-levels-types/penetration-testing-basics/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/penetration-testing-basics/</guid><description>&lt;h2 id="qué-es-el-pentesting"&gt;¿Qué es el Pentesting? &lt;a href="#qu%c3%a9-es-el-pentesting" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de penetración (pentesting) son un ciberataque simulado contra un sistema para evaluar su seguridad. A diferencia del escaneo de vulnerabilidades, que usa herramientas automatizadas, el pentesting involucra un tester humano intentando activamente explotar vulnerabilidades.&lt;/p&gt;
&lt;p&gt;Piénsalo así: un escáner de vulnerabilidades es como un inspector que nota que una cerradura parece débil. Un pentester realmente intenta abrir la ventana y entrar, documentando exactamente a qué pudo acceder.&lt;/p&gt;</description></item><item><title>Fundamentos de Pruebas de Seguridad</title><link>https://yrkan.com/es/course/module-02-levels-types/security-testing-fundamentals/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/security-testing-fundamentals/</guid><description>&lt;h2 id="por-qué-las-pruebas-de-seguridad-importan-para-qa"&gt;Por Qué las Pruebas de Seguridad Importan para QA &lt;a href="#por-qu%c3%a9-las-pruebas-de-seguridad-importan-para-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las brechas de seguridad cuestan a las empresas un promedio de $4.45 millones por incidente. Más allá del impacto financiero, destruyen la confianza del cliente, generan sanciones regulatorias y pueden terminar carreras.&lt;/p&gt;
&lt;p&gt;Como ingeniero QA, las pruebas de seguridad son tu responsabilidad. No necesitas ser un hacker ético certificado, pero debes entender los principios de seguridad lo suficiente para detectar vulnerabilidades comunes antes de que lleguen a producción.&lt;/p&gt;</description></item><item><title>Gestión de Pruebas Basada en Sesiones (SBTM)</title><link>https://yrkan.com/es/course/module-02-levels-types/session-based-test-management/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/session-based-test-management/</guid><description>&lt;h2 id="qué-es-sbtm"&gt;¿Qué Es SBTM? &lt;a href="#qu%c3%a9-es-sbtm" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Session-Based Test Management (SBTM) fue desarrollado por Jonathan y James Bach para resolver un problema fundamental: ¿cómo gestionas, mides y reportas testing exploratorio?&lt;/p&gt;
&lt;p&gt;El testing con scripts es fácil de gestionar — tienes test cases, rastreas cuáles pasaron y fallaron, y reportas una tasa de éxito. Pero el testing exploratorio no tiene test cases preescritos. Sin un framework de gestión, es invisible para gerentes y stakeholders.&lt;/p&gt;</description></item><item><title>OWASP Top 10 para Testers</title><link>https://yrkan.com/es/course/module-02-levels-types/owasp-top-10-testers/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/owasp-top-10-testers/</guid><description>&lt;h2 id="el-owasp-top-10"&gt;El OWASP Top 10 &lt;a href="#el-owasp-top-10" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Open Web Application Security Project (OWASP) publica el Top 10 — una lista actualizada de los riesgos de seguridad más críticos. La edición 2021 es el estándar actual referenciado por regulaciones de seguridad mundialmente.&lt;/p&gt;
&lt;p&gt;Como ingeniero QA, conocer el OWASP Top 10 te permite probar sistemáticamente las vulnerabilidades más comunes y peligrosas.&lt;/p&gt;
&lt;h2 id="a012021--broken-access-control"&gt;A01:2021 — Broken Access Control &lt;a href="#a012021--broken-access-control" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Qué es:&lt;/strong&gt; Los usuarios pueden actuar fuera de sus permisos — ver datos de otros, modificar registros, escalar a admin.&lt;/p&gt;</description></item><item><title>Panorama de los Niveles de Testing</title><link>https://yrkan.com/es/course/module-02-levels-types/testing-levels-overview/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/testing-levels-overview/</guid><description>&lt;h2 id="que-son-los-niveles-de-testing"&gt;Que Son los Niveles de Testing? &lt;a href="#que-son-los-niveles-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los niveles de testing representan una progresion estructurada de actividades de verificacion, cada una dirigida a un alcance diferente del sistema de software. Piensa en la construccion de un auto: no probarias el vehiculo completo sin antes verificar que los tornillos individuales aguantan, que los componentes del motor funcionan juntos y que cada subsistema (frenos, electrico, combustible) funciona correctamente.&lt;/p&gt;
&lt;p&gt;El testing de software sigue la misma logica. Comienzas pequeno y expandes hacia afuera:&lt;/p&gt;</description></item><item><title>Panorama del Testing de Rendimiento</title><link>https://yrkan.com/es/course/module-02-levels-types/performance-testing-overview/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/performance-testing-overview/</guid><description>&lt;h2 id="por-que-importa-el-testing-de-rendimiento"&gt;Por Que Importa el Testing de Rendimiento &lt;a href="#por-que-importa-el-testing-de-rendimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La correccion funcional no es suficiente. Una aplicacion que funciona para un usuario pero se cae con 100 concurrentes es un producto fallido.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Consecuencias reales:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Amazon: cada 100ms de latencia costaba 1% en ventas&lt;/li&gt;
&lt;li&gt;Google: 0.5 segundos de retraso causaba 20% menos trafico&lt;/li&gt;
&lt;li&gt;1 segundo de retraso en carga reduce conversiones 7%&lt;/li&gt;
&lt;li&gt;40% de usuarios abandonan sitios que tardan mas de 3 segundos&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tipos-de-testing-de-rendimiento"&gt;Tipos de Testing de Rendimiento &lt;a href="#tipos-de-testing-de-rendimiento" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="load-testing"&gt;Load Testing &lt;a href="#load-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Verifica que el sistema se desempena aceptablemente bajo la &lt;strong&gt;carga normal esperada&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Pruebas de Accesibilidad (WCAG)</title><link>https://yrkan.com/es/course/module-02-levels-types/accessibility-testing-wcag/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/accessibility-testing-wcag/</guid><description>&lt;h2 id="por-qué-importan-las-pruebas-de-accesibilidad"&gt;Por Qué Importan las Pruebas de Accesibilidad &lt;a href="#por-qu%c3%a9-importan-las-pruebas-de-accesibilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de accesibilidad aseguran que personas con discapacidades puedan usar tu producto. Esto incluye usuarios ciegos o con baja visión, sordos o con dificultades auditivas, con discapacidades motoras, cognitivas o impedimentos temporales.&lt;/p&gt;
&lt;p&gt;Aproximadamente el 15% de la población mundial — más de mil millones de personas — experimenta alguna forma de discapacidad. Más allá del imperativo ético, la accesibilidad es cada vez más un requisito legal. Leyes como ADA (EE.UU.), la Directiva Europea de Accesibilidad y similares en todo el mundo exigen productos digitales accesibles.&lt;/p&gt;</description></item><item><title>Pruebas de Caja Blanca</title><link>https://yrkan.com/es/course/module-02-levels-types/white-box-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/white-box-testing/</guid><description>&lt;h2 id="qué-son-las-pruebas-de-caja-blanca"&gt;¿Qué Son las Pruebas de Caja Blanca? &lt;a href="#qu%c3%a9-son-las-pruebas-de-caja-blanca" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de caja blanca (white-box testing) — también llamadas pruebas estructurales, de caja de cristal o caja transparente — son un enfoque de testing donde las pruebas se diseñan basándose en la estructura interna del software. El tester tiene visibilidad completa del código fuente, la arquitectura y los detalles de implementación.&lt;/p&gt;
&lt;p&gt;Piensa en ello como inspeccionar el interior de un reloj. En lugar de solo verificar si las manecillas muestran la hora correcta (caja negra), examinas cada engranaje, resorte y mecanismo para verificar que funcionen correctamente.&lt;/p&gt;</description></item><item><title>Pruebas de Caja Gris</title><link>https://yrkan.com/es/course/module-02-levels-types/grey-box-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/grey-box-testing/</guid><description>&lt;h2 id="qué-son-las-pruebas-de-caja-gris"&gt;¿Qué Son las Pruebas de Caja Gris? &lt;a href="#qu%c3%a9-son-las-pruebas-de-caja-gris" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de caja gris (grey-box testing) se ubican entre el black-box y el white-box testing. El tester tiene conocimiento parcial del funcionamiento interno del sistema — suficiente para diseñar pruebas más inteligentes que el puro black-box, pero sin la visibilidad completa del código fuente del white-box.&lt;/p&gt;
&lt;p&gt;Un tester de caja gris podría conocer:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La arquitectura del sistema (qué servicios se comunican entre sí)&lt;/li&gt;
&lt;li&gt;El esquema de base de datos (estructura de tablas, relaciones)&lt;/li&gt;
&lt;li&gt;Los contratos de API (endpoints, formatos de request/response)&lt;/li&gt;
&lt;li&gt;El flujo de datos entre componentes&lt;/li&gt;
&lt;li&gt;El stack tecnológico (framework, motor de base de datos, cola de mensajes)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pero típicamente no tiene:&lt;/p&gt;</description></item><item><title>Pruebas de Caja Negra</title><link>https://yrkan.com/es/course/module-02-levels-types/black-box-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/black-box-testing/</guid><description>&lt;h2 id="qué-son-las-pruebas-de-caja-negra"&gt;¿Qué Son las Pruebas de Caja Negra? &lt;a href="#qu%c3%a9-son-las-pruebas-de-caja-negra" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de caja negra (black-box testing) — también llamadas pruebas de comportamiento, basadas en especificación o pruebas funcionales — diseñan tests basándose completamente en lo que el software debería hacer según sus requisitos y especificaciones. El tester no tiene conocimiento del código interno, la arquitectura ni los detalles de implementación.&lt;/p&gt;
&lt;p&gt;Piensa en ello como usar una máquina expendedora. Insertas dinero, presionas un botón y esperas un producto específico. No conoces ni te importa la maquinaria interna — solo verificas que la salida correcta aparece para la entrada dada.&lt;/p&gt;</description></item><item><title>Pruebas de Carga con Gatling</title><link>https://yrkan.com/es/course/module-02-levels-types/load-testing-gatling/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/load-testing-gatling/</guid><description>&lt;h2 id="qué-es-gatling"&gt;¿Qué es Gatling? &lt;a href="#qu%c3%a9-es-gatling" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Gatling es una herramienta de pruebas de carga open-source y de alto rendimiento diseñada para integración continua y flujos de trabajo orientados a desarrolladores. Construido sobre Scala con una arquitectura asíncrona no-bloqueante (Akka + Netty), Gatling puede simular miles de usuarios concurrentes con un consumo de memoria significativamente menor que herramientas basadas en hilos como JMeter.&lt;/p&gt;
&lt;p&gt;Gatling produce reportes HTML detallados e interactivos de forma nativa — a menudo considerados los reportes de performance testing más atractivos de la industria. Estos reportes incluyen distribuciones de tiempo de respuesta, percentiles, conteo de solicitudes en el tiempo y análisis de errores.&lt;/p&gt;</description></item><item><title>Pruebas de Carga con JMeter</title><link>https://yrkan.com/es/course/module-02-levels-types/load-testing-jmeter/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/load-testing-jmeter/</guid><description>&lt;h2 id="qué-es-apache-jmeter"&gt;¿Qué es Apache JMeter? &lt;a href="#qu%c3%a9-es-apache-jmeter" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Apache JMeter es una aplicación open-source basada en Java diseñada para pruebas de carga y medición del rendimiento de aplicaciones web. Originalmente creada para probar aplicaciones web, JMeter se ha expandido para cubrir una amplia variedad de protocolos incluyendo HTTP, HTTPS, SOAP, REST, FTP, JDBC, LDAP, JMS y SMTP.&lt;/p&gt;
&lt;p&gt;JMeter es una de las herramientas de performance testing más utilizadas en la industria. Su popularidad se debe a que es gratuita, extensible mediante plugins y tiene una gran comunidad. Si trabajas en QA, casi con seguridad te encontrarás con JMeter en algún momento de tu carrera.&lt;/p&gt;</description></item><item><title>Pruebas de Carga con k6</title><link>https://yrkan.com/es/course/module-02-levels-types/load-testing-k6/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/load-testing-k6/</guid><description>&lt;h2 id="qué-es-k6"&gt;¿Qué es k6? &lt;a href="#qu%c3%a9-es-k6" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;k6 es una herramienta moderna y open-source de pruebas de carga construida por Grafana Labs. A diferencia del enfoque basado en GUI de JMeter, k6 usa scripts en JavaScript que escribes en tu editor de código y ejecutas desde la línea de comandos. Esto lo convierte en una opción natural para desarrolladores e ingenieros de automatización que prefieren código sobre configuración.&lt;/p&gt;
&lt;p&gt;k6 está escrito en Go, lo que le otorga excelentes características de rendimiento. Una sola máquina ejecutando k6 puede simular miles de usuarios virtuales con bajo consumo de recursos comparado con JMeter. La herramienta se integra naturalmente en pipelines de CI/CD, haciéndola ideal para performance testing shift-left.&lt;/p&gt;</description></item><item><title>Pruebas de Carga con Locust</title><link>https://yrkan.com/es/course/module-02-levels-types/load-testing-locust/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/load-testing-locust/</guid><description>&lt;h2 id="qué-es-locust"&gt;¿Qué es Locust? &lt;a href="#qu%c3%a9-es-locust" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Locust es una herramienta open-source de pruebas de carga escrita en Python. Su característica definitoria es que escribes tus pruebas como código Python puro, definiendo el comportamiento del usuario como clases Python. Si tú o tu equipo se sienten cómodos con Python, Locust ofrece la barrera de entrada más baja de cualquier herramienta de pruebas de carga.&lt;/p&gt;
&lt;p&gt;Locust usa una arquitectura orientada a eventos (basada en gevent) en lugar de hilos, lo que permite que un solo proceso simule miles de usuarios concurrentes. Incluye una interfaz web integrada para monitorear pruebas en tiempo real y soporta testing distribuido entre múltiples máquinas.&lt;/p&gt;</description></item><item><title>Pruebas de Compatibilidad</title><link>https://yrkan.com/es/course/module-02-levels-types/compatibility-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/compatibility-testing/</guid><description>&lt;h2 id="qué-son-las-pruebas-de-compatibilidad"&gt;¿Qué son las Pruebas de Compatibilidad? &lt;a href="#qu%c3%a9-son-las-pruebas-de-compatibilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de compatibilidad verifican que tu aplicación funciona correctamente en diferentes entornos — navegadores, sistemas operativos, dispositivos, tamaños de pantalla y condiciones de red. Un sitio web que funciona perfectamente en Chrome/macOS puede fallar en Safari/iOS o Firefox/Windows.&lt;/p&gt;
&lt;p&gt;En un mundo donde los usuarios acceden a aplicaciones desde cientos de combinaciones navegador/SO/dispositivo, las pruebas de compatibilidad aseguran una experiencia consistente en todos los entornos donde están tus usuarios.&lt;/p&gt;</description></item><item><title>Pruebas de Confiabilidad y Recuperación</title><link>https://yrkan.com/es/course/module-02-levels-types/reliability-recovery-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/reliability-recovery-testing/</guid><description>&lt;h2 id="qué-son-las-pruebas-de-confiabilidad"&gt;¿Qué Son las Pruebas de Confiabilidad? &lt;a href="#qu%c3%a9-son-las-pruebas-de-confiabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de confiabilidad (reliability testing) evalúan si un sistema realiza su función prevista de manera consistente durante un período específico bajo condiciones definidas. Un sistema no es verdaderamente confiable solo porque pase pruebas funcionales — debe continuar funcionando correctamente con el tiempo, bajo uso sostenido y a través de condiciones variables.&lt;/p&gt;
&lt;p&gt;Considera una aplicación de banca en línea. Puede pasar todas las pruebas funcionales durante una sesión de 30 minutos. Pero, ¿qué sucede cuando miles de usuarios interactúan con ella continuamente durante 72 horas? Las pruebas de confiabilidad responden esa pregunta.&lt;/p&gt;</description></item><item><title>Pruebas de Estrés, Resistencia, Pico y Volumen</title><link>https://yrkan.com/es/course/module-02-levels-types/stress-endurance-spike-volume-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/stress-endurance-spike-volume-testing/</guid><description>&lt;h2 id="más-allá-de-las-pruebas-de-carga-estándar"&gt;Más Allá de las Pruebas de Carga Estándar &lt;a href="#m%c3%a1s-all%c3%a1-de-las-pruebas-de-carga-est%c3%a1ndar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En las lecciones anteriores, aprendiste a usar herramientas como JMeter, k6, Gatling y Locust para crear pruebas de carga. Pero elegir el &lt;strong&gt;tipo&lt;/strong&gt; correcto de prueba de rendimiento es tan importante como elegir la herramienta correcta. Diferentes tipos de pruebas responden diferentes preguntas sobre tu sistema.&lt;/p&gt;
&lt;p&gt;Esta lección cubre cuatro tipos especializados de pruebas de rendimiento que van más allá de las pruebas de carga estándar. Cada uno tiene un propósito distinto, perfil de carga y conjunto de defectos que descubre.&lt;/p&gt;</description></item><item><title>Pruebas de Localización e Internacionalización</title><link>https://yrkan.com/es/course/module-02-levels-types/localization-internationalization-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/localization-internationalization-testing/</guid><description>&lt;h2 id="qué-son-i18n-y-l10n"&gt;¿Qué son I18n y L10n? &lt;a href="#qu%c3%a9-son-i18n-y-l10n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Internacionalización (I18n)&lt;/strong&gt; es el proceso de ingeniería de diseñar software para que pueda adaptarse a diferentes idiomas y regiones sin cambios de código. El &amp;ldquo;18&amp;rdquo; se refiere a las 18 letras entre la &amp;ldquo;I&amp;rdquo; y la &amp;ldquo;n&amp;rdquo; en &amp;ldquo;internationalization&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Localización (L10n)&lt;/strong&gt; es el proceso de adaptar una aplicación internacionalizada para un locale específico — traducir texto, ajustar formatos de fecha/número, manejar convenciones culturales y cumplir regulaciones locales.&lt;/p&gt;</description></item><item><title>Pruebas de Usabilidad</title><link>https://yrkan.com/es/course/module-02-levels-types/usability-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/usability-testing/</guid><description>&lt;h2 id="qué-son-las-pruebas-de-usabilidad"&gt;¿Qué son las Pruebas de Usabilidad? &lt;a href="#qu%c3%a9-son-las-pruebas-de-usabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Las pruebas de usabilidad evalúan qué tan fácil e intuitivo es usar un producto observando a usuarios reales mientras intentan completar tareas. A diferencia de las pruebas funcionales (que preguntan &amp;ldquo;¿funciona?&amp;rdquo;), las pruebas de usabilidad preguntan &amp;ldquo;¿pueden las personas reales descubrir cómo usarlo?&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Una funcionalidad que funciona perfectamente desde la perspectiva técnica puede ser un desastre si los usuarios no la encuentran, no la entienden o cometen errores constantes al usarla. Las pruebas de usabilidad detectan estos problemas antes de que lleguen a producción.&lt;/p&gt;</description></item><item><title>Sanity Testing</title><link>https://yrkan.com/es/course/module-02-levels-types/sanity-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/sanity-testing/</guid><description>&lt;h2 id="que-es-el-sanity-testing"&gt;Que Es el Sanity Testing? &lt;a href="#que-es-el-sanity-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El sanity testing es una actividad de testing estrecha y enfocada, realizada despues de un cambio especifico — tipicamente un bug fix o actualizacion menor — para verificar que el cambio funciona correctamente y no ha roto funcionalidad relacionada de manera obvia. A diferencia del smoke testing, que ampliamente verifica si todo el build es estable, el sanity testing se enfoca en un area especifica.&lt;/p&gt;</description></item><item><title>Smoke Testing</title><link>https://yrkan.com/es/course/module-02-levels-types/smoke-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/smoke-testing/</guid><description>&lt;h2 id="que-es-el-smoke-testing"&gt;Que Es el Smoke Testing? &lt;a href="#que-es-el-smoke-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El smoke testing, tambien conocido como Build Verification Testing (BVT), es un test rapido y amplio de la funcionalidad mas critica para determinar si un nuevo build es lo suficientemente estable para testing mas profundo. El nombre viene del testing de hardware — al encender una placa de circuito nueva, primero verificas si sale humo. Si sale, no tiene sentido probar nada mas.&lt;/p&gt;
&lt;p&gt;En software, el smoke testing responde una pregunta: &lt;strong&gt;&amp;ldquo;Este build esta fundamentalmente roto, o podemos proceder con testing mas profundo?&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Testing Ad Hoc y Monkey Testing</title><link>https://yrkan.com/es/course/module-02-levels-types/ad-hoc-monkey-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/ad-hoc-monkey-testing/</guid><description>&lt;h2 id="qué-es-el-testing-ad-hoc"&gt;¿Qué Es el Testing Ad Hoc? &lt;a href="#qu%c3%a9-es-el-testing-ad-hoc" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing ad hoc es testing no planificado e informal impulsado por la intuición, experiencia y conocimiento del tester sobre la aplicación. No hay casos de prueba preescritos, documentación formal ni enfoque estructurado.&lt;/p&gt;
&lt;p&gt;El término &amp;ldquo;ad hoc&amp;rdquo; literalmente significa &amp;ldquo;para este propósito&amp;rdquo; — las pruebas se inventan en el momento para la situación inmediata.&lt;/p&gt;
&lt;h3 id="cuándo-el-testing-ad-hoc-agrega-valor"&gt;Cuándo el Testing Ad Hoc Agrega Valor &lt;a href="#cu%c3%a1ndo-el-testing-ad-hoc-agrega-valor" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Verificaciones rápidas de sanidad.&lt;/strong&gt; Un desarrollador termina un fix y pide a QA que &amp;ldquo;eche un vistazo rápido.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Testing Alfa y Beta</title><link>https://yrkan.com/es/course/module-02-levels-types/alpha-beta-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/alpha-beta-testing/</guid><description>&lt;h2 id="testing-alfa-en-detalle"&gt;Testing Alfa en Detalle &lt;a href="#testing-alfa-en-detalle" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing alfa es la primera fase de validacion con usuarios reales, realizada internamente antes de que el software llegue a usuarios externos. Es como un ensayo general — la presentacion es real pero la audiencia esta limitada a personal interno.&lt;/p&gt;
&lt;h3 id="quienes-participan"&gt;Quienes Participan &lt;a href="#quienes-participan" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Empleados de otros departamentos&lt;/strong&gt; (marketing, ventas, soporte)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Equipos QA internos&lt;/strong&gt; no involucrados en el proyecto&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Stakeholders y ejecutivos&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Expertos de dominio internos&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="ambiente-de-testing-alfa"&gt;Ambiente de Testing Alfa &lt;a href="#ambiente-de-testing-alfa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Servidores staging&lt;/strong&gt; que replican produccion&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Datos de prueba&lt;/strong&gt; representando escenarios realistas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Herramientas de monitoreo&lt;/strong&gt; capturando crashes y metricas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Acceso directo al equipo de desarrollo&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="que-descubre-el-testing-alfa"&gt;Que Descubre el Testing Alfa &lt;a href="#que-descubre-el-testing-alfa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Problemas de flujo:&lt;/strong&gt; Pasos que confunden a usuarios reales&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Features faltantes:&lt;/strong&gt; Funcionalidad esperada pero no especificada&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Problemas UI/UX:&lt;/strong&gt; Navegacion confusa, etiquetas poco claras&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bugs de ambiente:&lt;/strong&gt; Problemas fuera de la maquina del desarrollador&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cuellos de botella:&lt;/strong&gt; Operaciones lentas no detectadas&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="testing-beta-en-detalle"&gt;Testing Beta en Detalle &lt;a href="#testing-beta-en-detalle" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing beta expone el software a usuarios externos reales en sus propios ambientes. Pierdes control sobre hardware, red, patrones de uso y comportamiento del usuario.&lt;/p&gt;</description></item><item><title>Testing de Aceptacion de Usuario (UAT)</title><link>https://yrkan.com/es/course/module-02-levels-types/user-acceptance-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/user-acceptance-testing/</guid><description>&lt;h2 id="que-es-el-testing-de-aceptacion-de-usuario"&gt;Que Es el Testing de Aceptacion de Usuario? &lt;a href="#que-es-el-testing-de-aceptacion-de-usuario" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Testing de Aceptacion de Usuario (UAT) es el ultimo nivel de testing antes de que el software se libere a produccion. Responde una pregunta fundamentalmente diferente a todos los demas niveles. Mientras que unit, integracion, sistema y E2E preguntan &amp;ldquo;El software funciona correctamente?&amp;rdquo;, el UAT pregunta &lt;strong&gt;&amp;ldquo;El software hace lo que el negocio realmente necesita?&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Esta distincion es critica. Un sistema puede pasar cada test tecnico y aun asi fallar en UAT porque no resuelve el problema que el negocio pretendia resolver.&lt;/p&gt;</description></item><item><title>Testing de Integracion</title><link>https://yrkan.com/es/course/module-02-levels-types/integration-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/integration-testing/</guid><description>&lt;h2 id="que-es-el-testing-de-integracion"&gt;Que Es el Testing de Integracion? &lt;a href="#que-es-el-testing-de-integracion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de integracion verifica que los componentes individuales del software funcionan correctamente cuando se combinan. Mientras que los unit tests prueban que cada funcion funciona en aislamiento, los tests de integracion prueban que esas funciones funcionan juntas — que los datos fluyen correctamente a traves de los limites entre modulos, que los contratos de API se respetan y que los componentes combinados producen el comportamiento esperado.&lt;/p&gt;</description></item><item><title>Testing de Regresion</title><link>https://yrkan.com/es/course/module-02-levels-types/regression-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/regression-testing/</guid><description>&lt;h2 id="que-es-el-testing-de-regresion"&gt;Que Es el Testing de Regresion? &lt;a href="#que-es-el-testing-de-regresion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de regresion verifica que funcionalidad de software previamente funcional no se ha roto por cambios recientes. Cada vez que se modifica codigo — nuevos features, bug fixes, actualizaciones de configuracion — hay riesgo de romper algo que funcionaba. La regresion detecta estos efectos secundarios no deseados.&lt;/p&gt;
&lt;p&gt;El termino &amp;ldquo;regresion&amp;rdquo; significa retroceder. Una regresion de software es cuando una funcion que funcionaba en la version 1.0 deja de funcionar en la 1.1.&lt;/p&gt;</description></item><item><title>Testing de Sistema</title><link>https://yrkan.com/es/course/module-02-levels-types/system-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/system-testing/</guid><description>&lt;h2 id="que-es-el-testing-de-sistema"&gt;Que Es el Testing de Sistema? &lt;a href="#que-es-el-testing-de-sistema" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing de sistema es el proceso de probar una aplicacion de software completa e integrada para verificar que cumple sus requisitos especificados. A diferencia del unit testing (que se enfoca en funciones individuales) y el testing de integracion (que se enfoca en interacciones entre componentes), el testing de sistema evalua toda la aplicacion como un todo — tal como un usuario o sistema externo interactuaria con ella.&lt;/p&gt;</description></item><item><title>Testing Dinámico</title><link>https://yrkan.com/es/course/module-02-levels-types/dynamic-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/dynamic-testing/</guid><description>&lt;h2 id="qué-es-el-testing-dinámico"&gt;¿Qué Es el Testing Dinámico? &lt;a href="#qu%c3%a9-es-el-testing-din%c3%a1mico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing dinámico es el proceso de evaluar software ejecutándolo. Proporcionas entradas al sistema en ejecución, este las procesa, y observas si las salidas y comportamientos reales coinciden con lo esperado.&lt;/p&gt;
&lt;p&gt;Cada vez que haces clic en un botón de una aplicación y verificas si hizo lo correcto, estás realizando testing dinámico. Cada vez que un framework de pruebas automatizadas lanza un navegador, llena un formulario y verifica el resultado, eso es testing dinámico.&lt;/p&gt;</description></item><item><title>Testing End-to-End</title><link>https://yrkan.com/es/course/module-02-levels-types/end-to-end-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/end-to-end-testing/</guid><description>&lt;h2 id="que-es-el-testing-end-to-end"&gt;Que Es el Testing End-to-End? &lt;a href="#que-es-el-testing-end-to-end" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing end-to-end (E2E) valida que un flujo de negocio completo funciona correctamente de principio a fin, tal como lo experimentaria un usuario real. A diferencia del testing de sistema, que se enfoca en una sola aplicacion de forma aislada, el testing E2E abarca todo el stack tecnologico — frontend, backend, bases de datos, servicios de terceros, sistemas de email y cualquier otro componente involucrado en el viaje del usuario.&lt;/p&gt;</description></item><item><title>Testing Estático: Revisiones y Walkthroughs</title><link>https://yrkan.com/es/course/module-02-levels-types/static-testing-reviews/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/static-testing-reviews/</guid><description>&lt;h2 id="qué-es-el-testing-estático"&gt;¿Qué Es el Testing Estático? &lt;a href="#qu%c3%a9-es-el-testing-est%c3%a1tico" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing estático examina productos de trabajo del software — requisitos, documentos de diseño, código, planes de prueba — sin ejecutar el software. Observas el artefacto en sí, buscando defectos, inconsistencias y mejoras.&lt;/p&gt;
&lt;p&gt;El testing dinámico ejecuta el software y verifica su comportamiento. El testing estático lee el software (o su documentación) y verifica su corrección.&lt;/p&gt;
&lt;p&gt;Piensa en ello como revisar una receta antes de cocinar versus probar el plato después de cocinarlo. Ambos enfoques encuentran problemas, pero la revisión previa es más barata — detectas &amp;ldquo;agregar 10 tazas de sal en vez de 1 cucharadita&amp;rdquo; antes de arruinar los ingredientes.&lt;/p&gt;</description></item><item><title>Testing Exploratorio</title><link>https://yrkan.com/es/course/module-02-levels-types/exploratory-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/exploratory-testing/</guid><description>&lt;h2 id="qué-es-el-testing-exploratorio"&gt;¿Qué Es el Testing Exploratorio? &lt;a href="#qu%c3%a9-es-el-testing-exploratorio" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El testing exploratorio es un enfoque donde el tester simultáneamente aprende sobre el sistema, diseña pruebas y las ejecuta — todo en un proceso cognitivo continuo. Fue formalizado por James Bach y Cem Kaner, quienes lo definieron como:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Aprendizaje, diseño de pruebas y ejecución simultáneos.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;A diferencia del testing con scripts donde escribes todos los casos de prueba primero y luego los ejecutas paso a paso, el testing exploratorio se adapta en tiempo real. Lo que descubres en una prueba influye en lo que pruebas después.&lt;/p&gt;</description></item><item><title>Testing Funcional vs No Funcional</title><link>https://yrkan.com/es/course/module-02-levels-types/functional-vs-nonfunctional-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/functional-vs-nonfunctional-testing/</guid><description>&lt;h2 id="la-distincion-fundamental"&gt;La Distincion Fundamental &lt;a href="#la-distincion-fundamental" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Todo testing de software cae en dos categorias:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Testing funcional&lt;/strong&gt; verifica &lt;strong&gt;QUE&lt;/strong&gt; hace el sistema — sus features, reglas de negocio, procesamiento de datos e interacciones. El formulario de login acepta credenciales validas? La busqueda retorna resultados correctos?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Testing no funcional&lt;/strong&gt; verifica &lt;strong&gt;COMO&lt;/strong&gt; el sistema ejecuta sus funciones — velocidad, seguridad, fiabilidad, usabilidad y otros atributos de calidad. La pagina carga en menos de 2 segundos? El sistema maneja 10,000 usuarios concurrentes?&lt;/p&gt;</description></item><item><title>Unit Testing</title><link>https://yrkan.com/es/course/module-02-levels-types/unit-testing/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-02-levels-types/unit-testing/</guid><description>&lt;h2 id="que-es-unit-testing"&gt;Que Es Unit Testing? &lt;a href="#que-es-unit-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Unit testing es la practica de probar las partes mas pequenas de una aplicacion de software — funciones individuales, metodos o clases — en completo aislamiento del resto del sistema. Cuando haces unit testing de una funcion, la llamas con entradas especificas y verificas que produce la salida esperada, sin llamadas a base de datos, sin peticiones de red, sin acceso al sistema de archivos y sin dependencia de otros componentes.&lt;/p&gt;</description></item><item><title>Agile a Escala: SAFe para QA</title><link>https://yrkan.com/es/course/module-01-fundamentals/scaled-agile-safe-qa/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/scaled-agile-safe-qa/</guid><description>&lt;h2 id="qué-es-safe"&gt;¿Qué es SAFe? &lt;a href="#qu%c3%a9-es-safe" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Scaled Agile Framework (SAFe) es un conjunto de patrones para implementar prácticas ágiles a escala empresarial. Mientras Scrum funciona bien para un solo equipo de 5-9 personas, SAFe coordina el trabajo de decenas o incluso cientos de equipos construyendo un solo producto o solución.&lt;/p&gt;
&lt;p&gt;SAFe es el framework de escalamiento más adoptado, utilizado por aproximadamente el 53% de las organizaciones que practican agile a escala. Como ingeniero QA, puedes encontrar SAFe en empresas medianas a grandes, especialmente en industrias reguladas como finanzas, salud y gobierno.&lt;/p&gt;</description></item><item><title>Ciclo de Vida del Testing de Software (STLC)</title><link>https://yrkan.com/es/course/module-01-fundamentals/software-testing-life-cycle/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/software-testing-life-cycle/</guid><description>&lt;h2 id="qué-es-el-ciclo-de-vida-del-testing-de-software"&gt;¿Qué es el Ciclo de Vida del Testing de Software? &lt;a href="#qu%c3%a9-es-el-ciclo-de-vida-del-testing-de-software" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Software Testing Life Cycle (STLC) es un enfoque sistemático para el testing que define los pasos y actividades realizadas durante cada fase. Así como el desarrollo sigue el SDLC, el testing sigue el STLC.&lt;/p&gt;
&lt;p&gt;El STLC asegura que el testing sea organizado, exhaustivo y rastreable. Transforma el testing de una actividad ad-hoc en un proceso estructurado con entradas, salidas y criterios de calidad claros.&lt;/p&gt;</description></item><item><title>Construyendo una Estrategia de Testing desde Cero</title><link>https://yrkan.com/es/course/module-01-fundamentals/construyendo-estrategia-testing-desde-cero/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/construyendo-estrategia-testing-desde-cero/</guid><description>&lt;h2 id="por-qué-necesitas-una-estrategia-de-testing"&gt;Por Qué Necesitas una Estrategia de Testing &lt;a href="#por-qu%c3%a9-necesitas-una-estrategia-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Imagina unirte a una startup como la primera contratación de QA. El CEO dice: &amp;ldquo;Tenemos producto, desarrolladores y bugs. Arréglalo.&amp;rdquo; ¿Por dónde empiezas?&lt;/p&gt;
&lt;p&gt;Sin una estrategia, el testing se vuelve reactivo — pruebas lo que tienes enfrente, pierdes áreas críticas y no puedes medir si tu testing es efectivo. Una estrategia de testing es tu &lt;strong&gt;hoja de ruta para la calidad&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="estrategia-vs-plan-de-pruebas"&gt;Estrategia vs Plan de Pruebas &lt;a href="#estrategia-vs-plan-de-pruebas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Aspecto&lt;/th&gt;
 &lt;th&gt;Estrategia de Testing&lt;/th&gt;
 &lt;th&gt;Plan de Pruebas&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Alcance&lt;/td&gt;
 &lt;td&gt;Nivel de organización o producto&lt;/td&gt;
 &lt;td&gt;Nivel de proyecto, release o sprint&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Enfoque&lt;/td&gt;
 &lt;td&gt;Filosofía y enfoque general&lt;/td&gt;
 &lt;td&gt;Actividades y cronograma específicos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Duración&lt;/td&gt;
 &lt;td&gt;Larga vida, actualización periódica&lt;/td&gt;
 &lt;td&gt;Creado por proyecto/release&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Contenido&lt;/td&gt;
 &lt;td&gt;Tipos de testing, herramientas, entornos, enfoque de riesgo&lt;/td&gt;
 &lt;td&gt;Qué probar, cuándo, por quién, criterios&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="el-proceso-de-8-pasos"&gt;El Proceso de 8 Pasos &lt;a href="#el-proceso-de-8-pasos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph TD
 A[1. Entender el Producto] --&gt; B[2. Identificar Riesgos]
 B --&gt; C[3. Definir Alcance]
 C --&gt; D[4. Elegir Enfoque]
 D --&gt; E[5. Seleccionar Herramientas]
 E --&gt; F[6. Planificar Recursos]
 F --&gt; G[7. Definir Métricas]
 G --&gt; H[8. Revisar y Aprobar]
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;h3 id="paso-1-entender-el-producto"&gt;Paso 1: Entender el Producto &lt;a href="#paso-1-entender-el-producto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Responde: ¿Qué hace el producto? ¿Quiénes son los usuarios? ¿Qué plataformas soporta? ¿Cuál es el tech stack? ¿Cuáles son los flujos críticos? ¿Qué modelo de negocio tiene? ¿Qué pasa si el producto cae? ¿Qué requisitos de compliance existen? ¿Con qué frecuencia se libera?&lt;/p&gt;</description></item><item><title>Criterios de Entrada y Salida</title><link>https://yrkan.com/es/course/module-01-fundamentals/criterios-entrada-salida/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/criterios-entrada-salida/</guid><description>&lt;h2 id="por-qué-el-testing-necesita-gates"&gt;Por Qué el Testing Necesita Gates &lt;a href="#por-qu%c3%a9-el-testing-necesita-gates" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Imagina comenzar system testing solo para descubrir que el entorno de pruebas no está configurado, o que la mitad de las funcionalidades aún están siendo desarrolladas. Desperdiciarías días antes de que cualquier testing significativo pudiera ocurrir. Ahora imagina declarar el testing como &amp;ldquo;completo&amp;rdquo; sin una definición clara de qué significa &amp;ldquo;completo&amp;rdquo; — cada stakeholder tendría una opinión diferente.&lt;/p&gt;
&lt;p&gt;Los criterios de entrada y salida resuelven ambos problemas. Son los &lt;strong&gt;gates&lt;/strong&gt; (puertas de control) que determinan cuándo una fase de testing comienza y cuándo puede terminar.&lt;/p&gt;</description></item><item><title>DevOps y Testing Continuo</title><link>https://yrkan.com/es/course/module-01-fundamentals/devops-continuous-testing/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/devops-continuous-testing/</guid><description>&lt;h2 id="qué-es-devops"&gt;¿Qué es DevOps? &lt;a href="#qu%c3%a9-es-devops" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;DevOps es un conjunto de prácticas que combina desarrollo de software (Dev) y operaciones de TI (Ops) para acortar el ciclo de desarrollo y entregar software de alta calidad continuamente. Rompe los silos tradicionales entre equipos que construyen software y equipos que lo despliegan y mantienen.&lt;/p&gt;
&lt;p&gt;Para ingenieros QA, DevOps representa un cambio fundamental: el testing ya no es una fase que ocurre después del desarrollo. Es una parte integral de cada etapa del pipeline de entrega de software.&lt;/p&gt;</description></item><item><title>El Costo de los Bugs de Software</title><link>https://yrkan.com/es/course/module-01-fundamentals/cost-of-software-bugs/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/cost-of-software-bugs/</guid><description>&lt;h2 id="por-que-importa-el-costo-de-los-bugs"&gt;Por Que Importa el Costo de los Bugs &lt;a href="#por-que-importa-el-costo-de-los-bugs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada defecto de software tiene un precio. A veces son los 30 minutos que un desarrollador pasa corrigiendo un typo. Otras veces son $440 millones perdidos en 45 minutos, como le ocurrio a Knight Capital Group.&lt;/p&gt;
&lt;p&gt;Entender la economia de los defectos de software no es solo un ejercicio academico. Es el argumento mas poderoso que tendras para testear temprano, testear a fondo e invertir en aseguramiento de calidad. Cuando alguien pregunte &amp;ldquo;para que necesitamos testers?&amp;rdquo; — esta leccion te da los numeros para responder.&lt;/p&gt;</description></item><item><title>Error, Defecto y Falla</title><link>https://yrkan.com/es/course/module-01-fundamentals/error-defect-failure/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/error-defect-failure/</guid><description>&lt;h2 id="por-que-importa-la-precision"&gt;Por Que Importa la Precision &lt;a href="#por-que-importa-la-precision" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En conversaciones cotidianas, la gente usa &amp;ldquo;bug,&amp;rdquo; &amp;ldquo;error,&amp;rdquo; &amp;ldquo;defecto&amp;rdquo; y &amp;ldquo;falla&amp;rdquo; indistintamente. En testing profesional, estos terminos tienen significados especificos y distintos. Entender la diferencia no es pedanteria — determina si corriges el sintoma o la causa raiz.&lt;/p&gt;
&lt;p&gt;Cuando un cliente reporta &amp;ldquo;la app se cayo,&amp;rdquo; esta describiendo una &lt;strong&gt;falla&lt;/strong&gt;. Cuando un desarrollador encuentra la excepcion de puntero nulo en la linea 42, encontro el &lt;strong&gt;defecto&lt;/strong&gt;. Cuando el equipo descubre que el desarrollador olvido manejar el caso donde la base de datos retorna resultados vacios, identificaron el &lt;strong&gt;error&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Estándares: IEEE 829</title><link>https://yrkan.com/es/course/module-01-fundamentals/estandares-ieee-829/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/estandares-ieee-829/</guid><description>&lt;h2 id="por-qué-estándares-para-documentación"&gt;¿Por Qué Estándares para Documentación? &lt;a href="#por-qu%c3%a9-est%c3%a1ndares-para-documentaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cuando cambias de trabajo, encuentras nuevos planes de prueba, nuevos formatos de reportes, nuevas formas de organizar test cases. Cada organización parece reinventar la documentación. IEEE 829 existe para resolver este problema proporcionando un &lt;strong&gt;framework estandarizado&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="qué-es-ieee-829"&gt;¿Qué Es IEEE 829? &lt;a href="#qu%c3%a9-es-ieee-829" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;IEEE 829 (oficialmente &amp;ldquo;IEEE Standard for Software and System Test Documentation&amp;rdquo;) define un conjunto de documentos que cubren todo el proceso de testing. Publicado originalmente en 1998 y actualizado en 2008, sigue siendo el estándar de documentación más referenciado.&lt;/p&gt;</description></item><item><title>Estándares: ISO 29119</title><link>https://yrkan.com/es/course/module-01-fundamentals/estandares-iso-29119/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/estandares-iso-29119/</guid><description>&lt;h2 id="la-evolución-de-ieee-829-a-iso-29119"&gt;La Evolución de IEEE 829 a ISO 29119 &lt;a href="#la-evoluci%c3%b3n-de-ieee-829-a-iso-29119" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;IEEE 829 nos dio documentación estandarizada. Pero la documentación es solo una pieza del rompecabezas. ¿Qué hay del proceso? ¿De las técnicas? ¿Del vocabulario?&lt;/p&gt;
&lt;p&gt;ISO 29119 intenta ser un &lt;strong&gt;estándar comprensivo y todo-en-uno&lt;/strong&gt; para testing de software. Donde IEEE 829 se enfocó estrectamente en documentación, ISO 29119 cubre toda la disciplina.&lt;/p&gt;
&lt;h2 id="las-cinco-partes"&gt;Las Cinco Partes &lt;a href="#las-cinco-partes" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="parte-1-conceptos-y-definiciones"&gt;Parte 1: Conceptos y Definiciones &lt;a href="#parte-1-conceptos-y-definiciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Establece el vocabulario (300+ términos) y el framework conceptual. Proporciona un lenguaje común para que organizaciones se comuniquen precisamente.&lt;/p&gt;</description></item><item><title>Evaluación del Módulo 1</title><link>https://yrkan.com/es/course/module-01-fundamentals/evaluacion-modulo-1/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/evaluacion-modulo-1/</guid><description>&lt;h2 id="descripción-de-la-evaluación"&gt;Descripción de la Evaluación &lt;a href="#descripci%c3%b3n-de-la-evaluaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Felicitaciones por llegar al final del Módulo 1: Fundamentos de Software Testing. Esta evaluación prueba tu comprensión de todos los temas cubiertos en las lecciones 1.1 a 1.29.&lt;/p&gt;
&lt;p&gt;La evaluación tiene tres partes:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Parte&lt;/th&gt;
 &lt;th&gt;Formato&lt;/th&gt;
 &lt;th&gt;Preguntas&lt;/th&gt;
 &lt;th&gt;Tiempo Estimado&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 1&lt;/td&gt;
 &lt;td&gt;Quiz de opción múltiple&lt;/td&gt;
 &lt;td&gt;10 preguntas&lt;/td&gt;
 &lt;td&gt;10 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 2&lt;/td&gt;
 &lt;td&gt;Preguntas basadas en escenarios&lt;/td&gt;
 &lt;td&gt;3 escenarios&lt;/td&gt;
 &lt;td&gt;15 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Parte 3&lt;/td&gt;
 &lt;td&gt;Ejercicio práctico&lt;/td&gt;
 &lt;td&gt;1 ejercicio&lt;/td&gt;
 &lt;td&gt;20 minutos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="cómo-usar-esta-evaluación"&gt;Cómo Usar Esta Evaluación &lt;a href="#c%c3%b3mo-usar-esta-evaluaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Antes de comenzar:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>La Mentalidad del Tester</title><link>https://yrkan.com/es/course/module-01-fundamentals/testing-mindset/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/testing-mindset/</guid><description>&lt;h2 id="dos-formas-de-pensar"&gt;Dos Formas de Pensar &lt;a href="#dos-formas-de-pensar" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El desarrollo de software requiere dos modos de pensamiento fundamentalmente diferentes. El desarrollador pregunta: &amp;ldquo;Como hago que esto funcione?&amp;rdquo; El tester pregunta: &amp;ldquo;Como podria fallar esto?&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Ninguna pregunta es mas importante que la otra. Ambas son esenciales. Pero requieren modelos mentales diferentes, suposiciones diferentes e instintos diferentes. Entender la mentalidad de testing es la base sobre la cual se construyen todas las habilidades de testing.&lt;/p&gt;</description></item><item><title>Matriz de Trazabilidad de Requisitos</title><link>https://yrkan.com/es/course/module-01-fundamentals/matriz-trazabilidad-requisitos/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/matriz-trazabilidad-requisitos/</guid><description>&lt;h2 id="el-problema-de-la-cobertura"&gt;El Problema de la Cobertura &lt;a href="#el-problema-de-la-cobertura" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Tienes 150 requisitos y 500 test cases. ¿Cómo sabes que cada requisito está cubierto por al menos un test? ¿Cómo sabes que no hay test cases huérfanos probando funcionalidades que ya no existen? Cuando un requisito cambia, ¿qué test cases necesitan actualizarse?&lt;/p&gt;
&lt;p&gt;Sin una forma sistemática de vincular requisitos con pruebas, estas preguntas son casi imposibles de responder. La Matriz de Trazabilidad de Requisitos (RTM) es ese vínculo sistemático.&lt;/p&gt;</description></item><item><title>Mejora del Proceso de Testing: TMMi</title><link>https://yrkan.com/es/course/module-01-fundamentals/mejora-proceso-testing-tmmi/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/mejora-proceso-testing-tmmi/</guid><description>&lt;h2 id="por-qué-importa-la-mejora-del-proceso-de-testing"&gt;Por Qué Importa la Mejora del Proceso de Testing &lt;a href="#por-qu%c3%a9-importa-la-mejora-del-proceso-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Tener buenos testers no es suficiente si trabajan dentro de un proceso roto. Un ingeniero QA talentoso no puede compensar por planes de prueba faltantes, criterios de entrada indefinidos o una cultura donde el testing es una ocurrencia tardía. Para entregar software de calidad consistentemente, las organizaciones necesitan un &lt;strong&gt;proceso de testing maduro&lt;/strong&gt; — uno que esté definido, medido y continuamente mejorado.&lt;/p&gt;</description></item><item><title>Mejora del Proceso de Testing: TPI Next</title><link>https://yrkan.com/es/course/module-01-fundamentals/mejora-proceso-testing-tpi-next/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/mejora-proceso-testing-tpi-next/</guid><description>&lt;h2 id="de-tmmi-a-tpi-next"&gt;De TMMi a TPI Next &lt;a href="#de-tmmi-a-tpi-next" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la lección anterior aprendiste sobre TMMi — un modelo de madurez basado en niveles para procesos de testing. TPI Next ofrece un enfoque alternativo. Mientras TMMi requiere que las organizaciones satisfagan todas las áreas de proceso en un nivel antes de avanzar, TPI Next permite la mejora en &lt;strong&gt;áreas clave individuales de forma independiente&lt;/strong&gt;. Esto lo hace más flexible y frecuentemente más práctico.&lt;/p&gt;</description></item><item><title>Métricas de Testing y KPIs</title><link>https://yrkan.com/es/course/module-01-fundamentals/metricas-testing-kpis/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/metricas-testing-kpis/</guid><description>&lt;h2 id="por-qué-las-métricas-importan-en-qa"&gt;Por Qué las Métricas Importan en QA &lt;a href="#por-qu%c3%a9-las-m%c3%a9tricas-importan-en-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Sin métricas, la calidad es solo una opinión. Un desarrollador dice &amp;ldquo;el código está sólido,&amp;rdquo; un tester dice &amp;ldquo;encontramos muchos bugs,&amp;rdquo; y un manager pregunta &amp;ldquo;¿podemos liberar?&amp;rdquo; — y nadie tiene datos que respalden su posición.&lt;/p&gt;
&lt;p&gt;Las métricas de testing transforman opiniones subjetivas en datos objetivos. Ayudan a responder preguntas críticas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;¿Estamos encontrando suficientes bugs antes del release?&lt;/li&gt;
&lt;li&gt;¿Nuestro testing se está volviendo más eficiente con el tiempo?&lt;/li&gt;
&lt;li&gt;¿Dónde deberíamos enfocar nuestro esfuerzo de testing?&lt;/li&gt;
&lt;li&gt;¿Está el producto listo para salir?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pero las métricas también tienen un lado oscuro. Métricas mal elegidas pueden impulsar el comportamiento equivocado. Si mides a los testers por &amp;ldquo;número de bugs encontrados,&amp;rdquo; reportarán issues triviales. Si mides por &amp;ldquo;test cases ejecutados por día,&amp;rdquo; escribirán pruebas superficiales. Elegir las métricas correctas es tan importante como medirlas.&lt;/p&gt;</description></item><item><title>Planificación de Tests: Estrategia vs Plan</title><link>https://yrkan.com/es/course/module-01-fundamentals/test-planning-strategy-vs-plan/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/test-planning-strategy-vs-plan/</guid><description>&lt;h2 id="estrategia-vs-plan-por-qué-la-distinción-importa"&gt;Estrategia vs Plan: Por Qué la Distinción Importa &lt;a href="#estrategia-vs-plan-por-qu%c3%a9-la-distinci%c3%b3n-importa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una de las confusiones más comunes en QA es la diferencia entre estrategia y plan de testing. Muchos equipos usan los términos indistintamente, pero sirven propósitos diferentes.&lt;/p&gt;
&lt;h2 id="estrategia-de-testing"&gt;Estrategia de Testing &lt;a href="#estrategia-de-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una &lt;strong&gt;estrategia de testing&lt;/strong&gt; es un documento a nivel organizacional que define el enfoque general de testing entre proyectos y equipos. Es de largo plazo, reutilizable y raramente cambia.&lt;/p&gt;
&lt;h3 id="qué-contiene"&gt;Qué Contiene &lt;a href="#qu%c3%a9-contiene" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Enfoque de testing:&lt;/strong&gt; Tipos de testing que realiza la organización&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Niveles de testing:&lt;/strong&gt; Unit, integración, sistema, aceptación — cuáles son obligatorios&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Política de automatización:&lt;/strong&gt; Qué automatizar, herramientas aprobadas, metas de cobertura&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Estándares de herramientas:&lt;/strong&gt; Herramientas aprobadas de gestión, automatización y monitoreo&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Estrategia de entornos:&lt;/strong&gt; Cómo se aprovisionan y gestionan&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proceso de gestión de defectos:&lt;/strong&gt; Clasificación de severidad, proceso de triage, SLAs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Métricas y reportes:&lt;/strong&gt; Qué se rastrea, cómo se generan reportes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Roles y responsabilidades:&lt;/strong&gt; Roles QA estándar y su alcance&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gestión de riesgos:&lt;/strong&gt; Cómo se identifican y mitigan riesgos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Requisitos de compliance:&lt;/strong&gt; Estándares de la industria (HIPAA, PCI-DSS, SOX)&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="estrategia-por-tamaño-de-empresa"&gt;Estrategia por Tamaño de Empresa &lt;a href="#estrategia-por-tama%c3%b1o-de-empresa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Startup (5-20 personas):&lt;/strong&gt; Informal, 1-2 páginas. Foco en qué automatizar primero y estándares mínimos de calidad.&lt;/p&gt;</description></item><item><title>QA vs QC vs Testing</title><link>https://yrkan.com/es/course/module-01-fundamentals/qa-vs-qc-vs-testing/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/qa-vs-qc-vs-testing/</guid><description>&lt;h2 id="la-gran-confusion"&gt;La Gran Confusion &lt;a href="#la-gran-confusion" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la industria del software, los terminos &amp;ldquo;QA,&amp;rdquo; &amp;ldquo;QC&amp;rdquo; y &amp;ldquo;Testing&amp;rdquo; se usan indistintamente con tanta frecuencia que la mayoria de las personas han dejado de notar la diferencia. Las ofertas de trabajo dicen &amp;ldquo;QA Engineer&amp;rdquo; cuando quieren decir &amp;ldquo;Tester.&amp;rdquo; Los departamentos se llaman &amp;ldquo;QA&amp;rdquo; cuando solo hacen &amp;ldquo;QC.&amp;rdquo; Y &amp;ldquo;testing&amp;rdquo; se usa como termino general para todo lo relacionado con calidad.&lt;/p&gt;
&lt;p&gt;Esta confusion importa. Entender estos tres conceptos como disciplinas distintas pero relacionadas cambia como piensas sobre la calidad y, en ultima instancia, como construyes mejor software.&lt;/p&gt;</description></item><item><title>Que es el Software Testing?</title><link>https://yrkan.com/es/course/module-01-fundamentals/what-is-software-testing/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/what-is-software-testing/</guid><description>&lt;h2 id="que-es-el-software-testing"&gt;Que es el Software Testing? &lt;a href="#que-es-el-software-testing" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El software testing es el proceso de evaluar una aplicacion de software para encontrar diferencias entre el comportamiento esperado y el comportamiento real. Pero esta definicion de libro apenas roza la superficie.&lt;/p&gt;
&lt;p&gt;En la practica, el software testing es una investigacion sistematica realizada para proporcionar a los stakeholders informacion sobre la calidad del producto bajo prueba. Implica ejecutar un programa o sistema con la intencion de encontrar defectos, verificar que cumple con los requisitos especificados y validar que satisface las necesidades del usuario.&lt;/p&gt;</description></item><item><title>SDLC: Iterativo e Incremental</title><link>https://yrkan.com/es/course/module-01-fundamentals/sdlc-iterative-incremental/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/sdlc-iterative-incremental/</guid><description>&lt;h2 id="mas-alla-de-la-linea-recta"&gt;Mas Alla de la Linea Recta &lt;a href="#mas-alla-de-la-linea-recta" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Waterfall y el Modelo V comparten una suposicion fundamental: puedes definir todo al inicio y ejecutar en un solo paso. En la practica, esta suposicion falla para la mayoria de proyectos. Los requisitos cambian. Los usuarios dan feedback que invalida suposiciones. La tecnologia evoluciona. Los competidores lanzan funcionalidades que cambian prioridades.&lt;/p&gt;
&lt;p&gt;Los modelos iterativo e incremental abordan esta realidad dividiendo el proyecto en ciclos mas pequenos, cada uno produciendo software funcional que puede probarse, demostrarse y refinarse.&lt;/p&gt;</description></item><item><title>SDLC: Modelo V</title><link>https://yrkan.com/es/course/module-01-fundamentals/sdlc-v-model/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/sdlc-v-model/</guid><description>&lt;h2 id="de-waterfall-al-modelo-v"&gt;De Waterfall al Modelo V &lt;a href="#de-waterfall-al-modelo-v" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Modelo V (Modelo de Verificacion y Validacion) surgio como una mejora a Waterfall. Aborda la mayor debilidad de Waterfall — el testing tardio — haciendo del testing una actividad paralela al desarrollo en lugar de una ocurrencia posterior secuencial.&lt;/p&gt;
&lt;p&gt;La idea central: &lt;strong&gt;para cada actividad de desarrollo, hay una actividad de testing correspondiente.&lt;/strong&gt; Los requisitos impulsan el testing de aceptacion. El diseno del sistema impulsa el testing de sistema. El diseno detallado impulsa el testing de integracion. La codificacion impulsa el testing unitario.&lt;/p&gt;</description></item><item><title>SDLC: Modelo Waterfall</title><link>https://yrkan.com/es/course/module-01-fundamentals/sdlc-waterfall-model/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/sdlc-waterfall-model/</guid><description>&lt;h2 id="que-es-el-sdlc"&gt;Que es el SDLC? &lt;a href="#que-es-el-sdlc" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El Ciclo de Vida de Desarrollo de Software (SDLC) es un framework que define el proceso para planificar, crear, probar y desplegar software. Diferentes modelos SDLC describen diferentes enfoques para organizar estas actividades.&lt;/p&gt;
&lt;p&gt;Entender los modelos SDLC es esencial para testers porque &lt;strong&gt;tu enfoque de testing esta determinado por el modelo de desarrollo que sigue tu equipo.&lt;/strong&gt; Cuando testeas en un proyecto Waterfall, tus actividades, tiempos y entregables son fundamentalmente diferentes de testear en un proyecto Agile.&lt;/p&gt;</description></item><item><title>Shift-Left Testing</title><link>https://yrkan.com/es/course/module-01-fundamentals/shift-left-testing/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/shift-left-testing/</guid><description>&lt;h2 id="el-costo-de-encontrar-bugs-tarde"&gt;El Costo de Encontrar Bugs Tarde &lt;a href="#el-costo-de-encontrar-bugs-tarde" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Todo proyecto de software tiene una verdad fundamental: cuanto más tarde encuentras un bug, más caro es corregirlo. Esto no es solo una teoría — décadas de datos de la industria lo respaldan.&lt;/p&gt;
&lt;figure class="mermaid-wrapper" data-diagram-type="graph"&gt;
 &lt;div class="mermaid-viewport"&gt;
 &lt;div class="mermaid"&gt;graph LR
 subgraph Costo de Corregir un Bug
 R[Requisitos&lt;br/&gt;$1] --&gt; D[Diseño&lt;br/&gt;$5]
 D --&gt; C[Codificación&lt;br/&gt;$10]
 C --&gt; T[Testing&lt;br/&gt;$20]
 T --&gt; P[Producción&lt;br/&gt;$100+]
 end

 style R fill:#4CAF50,color:#fff
 style D fill:#8BC34A,color:#fff
 style C fill:#FFC107,color:#000
 style T fill:#FF9800,color:#fff
 style P fill:#F44336,color:#fff
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="mermaid-toolbar"&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-in" aria-label="Zoom in" title="Zoom in"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="11" y1="8" x2="11" y2="14"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-zoom-out" aria-label="Zoom out" title="Zoom out"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;circle cx="11" cy="11" r="8"/&gt;&lt;line x1="21" y1="21" x2="16.65" y2="16.65"/&gt;&lt;line x1="8" y1="11" x2="14" y2="11"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-reset" aria-label="Reset zoom" title="Reset"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/&gt;&lt;path d="M3 3v5h5"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;button class="mermaid-btn mermaid-btn-fullscreen" aria-label="Fullscreen" title="Fullscreen"&gt;
 &lt;svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"&gt;&lt;path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"/&gt;&lt;/svg&gt;
 &lt;/button&gt;
 &lt;/div&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;Por qué se multiplica el costo:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Shift-Right Testing: Testing en Producción</title><link>https://yrkan.com/es/course/module-01-fundamentals/shift-right-testing/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/shift-right-testing/</guid><description>&lt;h2 id="por-qué-probar-en-producción"&gt;¿Por Qué Probar en Producción? &lt;a href="#por-qu%c3%a9-probar-en-producci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En la lección anterior aprendiste sobre shift-left testing — comenzar actividades de calidad más temprano. Shift-right testing es su complemento: extender actividades de calidad al entorno de producción.&lt;/p&gt;
&lt;p&gt;¿Por qué? Porque ningún entorno de prueba puede replicar perfectamente producción:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Patrones de tráfico reales&lt;/strong&gt; son impredecibles y diversos&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Datos reales&lt;/strong&gt; tienen casos límite que nunca imaginaste&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Infraestructura real&lt;/strong&gt; se comporta diferente bajo carga&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Usuarios reales&lt;/strong&gt; interactúan con tu software de formas inesperadas&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Shift-right testing reconoce que algunos defectos solo pueden encontrarse en producción — y proporciona técnicas para encontrarlos de forma segura.&lt;/p&gt;</description></item><item><title>Siete Principios del Testing (ISTQB)</title><link>https://yrkan.com/es/course/module-01-fundamentals/seven-principles-of-testing/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/seven-principles-of-testing/</guid><description>&lt;h2 id="por-que-importan-los-principios"&gt;Por Que Importan los Principios &lt;a href="#por-que-importan-los-principios" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Antes de aprender tecnicas, herramientas o metodologias especificas de testing, cada tester necesita internalizar siete principios fundamentales. Estos principios, definidos por el ISTQB (International Software Testing Qualifications Board), representan decadas de sabiduria colectiva sobre lo que el testing puede y no puede hacer.&lt;/p&gt;
&lt;p&gt;No son reglas abstractas. Son guias practicas que previenen errores costosos. Todo tester experimentado ha aprendido estos principios de la manera dificil — violandolos y sufriendo las consecuencias.&lt;/p&gt;</description></item><item><title>Técnicas de Estimación de Testing</title><link>https://yrkan.com/es/course/module-01-fundamentals/test-estimation-techniques/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/test-estimation-techniques/</guid><description>&lt;h2 id="por-qué-la-estimación-importa"&gt;Por Qué la Estimación Importa &lt;a href="#por-qu%c3%a9-la-estimaci%c3%b3n-importa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Cada sprint planning incluye la pregunta: &amp;ldquo;¿Cuánto tomará el testing?&amp;rdquo; Equivocarse tiene consecuencias reales:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Subestimar:&lt;/strong&gt; Testing apresurado, bugs escapan a producción, equipo agotado&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sobreestimar:&lt;/strong&gt; Presupuesto desperdiciado, credibilidad afectada, features retrasados&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="factores-que-afectan-las-estimaciones"&gt;Factores que Afectan las Estimaciones &lt;a href="#factores-que-afectan-las-estimaciones" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Factor&lt;/th&gt;
 &lt;th&gt;Impacto&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Complejidad del feature&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Más complejo = más casos de prueba, más edge cases&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Experiencia del equipo&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Equipo nuevo o dominio nuevo = testing más largo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Calidad de requisitos&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Requisitos vagos = más testing exploratorio y retrabajo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Madurez de automatización&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Más automatización = menos ejecución manual&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Estabilidad del entorno&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Entornos inestables = testing bloqueado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Dependencias&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Servicios externos, otros equipos = tiempo de espera&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Densidad de defectos&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Más bugs = más retesting y regresión&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="técnicas-de-estimación"&gt;Técnicas de Estimación &lt;a href="#t%c3%a9cnicas-de-estimaci%c3%b3n" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-work-breakdown-structure-wbs"&gt;1. Work Breakdown Structure (WBS) &lt;a href="#1-work-breakdown-structure-wbs" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;WBS divide el testing en tareas más pequeñas y estimables.&lt;/p&gt;</description></item><item><title>Testing Ágil: Kanban</title><link>https://yrkan.com/es/course/module-01-fundamentals/agile-testing-kanban/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/agile-testing-kanban/</guid><description>&lt;h2 id="qué-es-kanban"&gt;¿Qué es Kanban? &lt;a href="#qu%c3%a9-es-kanban" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Kanban es una metodología ágil basada en visualizar el trabajo, limitar el trabajo en progreso y optimizar el flujo. A diferencia de Scrum, Kanban no usa sprints con time-box. En su lugar, los items de trabajo fluyen continuamente a través de una serie de etapas desde &amp;ldquo;Por Hacer&amp;rdquo; hasta &amp;ldquo;Hecho&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;La palabra &amp;ldquo;Kanban&amp;rdquo; proviene del japonés y significa &amp;ldquo;señal visual&amp;rdquo; o &amp;ldquo;tarjeta&amp;rdquo;. La metodología se originó en el sistema de manufactura de Toyota en los años 1940 y fue adaptada para desarrollo de software por David J. Anderson en los años 2000.&lt;/p&gt;</description></item><item><title>Testing Ágil: Scrum</title><link>https://yrkan.com/es/course/module-01-fundamentals/agile-testing-scrum/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/agile-testing-scrum/</guid><description>&lt;h2 id="el-framework-scrum-perspectiva-de-qa"&gt;El Framework Scrum: Perspectiva de QA &lt;a href="#el-framework-scrum-perspectiva-de-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Scrum es el framework ágil más adoptado, utilizado por aproximadamente el 66% de los equipos ágiles a nivel mundial. Como ingeniero QA, casi con certeza trabajarás en un entorno Scrum en algún momento de tu carrera. Entender cómo el testing encaja en Scrum no es opcional — es esencial.&lt;/p&gt;
&lt;p&gt;Esta lección cubre Scrum desde la perspectiva del tester: no solo qué es el framework, sino cómo contribuyes activamente en cada ceremonia y artefacto.&lt;/p&gt;</description></item><item><title>Testing Basado en Riesgos</title><link>https://yrkan.com/es/course/module-01-fundamentals/risk-based-testing/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/risk-based-testing/</guid><description>&lt;h2 id="por-qué-testing-basado-en-riesgos"&gt;¿Por Qué Testing Basado en Riesgos? &lt;a href="#por-qu%c3%a9-testing-basado-en-riesgos" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Ningún proyecto tiene tiempo y recursos ilimitados. No puedes probar todo por igual. El testing basado en riesgos responde: &lt;strong&gt;¿Dónde debemos enfocar nuestro esfuerzo?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;La respuesta: enfócate en áreas de mayor riesgo — donde los defectos son más probables Y donde su impacto sería más severo.&lt;/p&gt;
&lt;h2 id="entendiendo-el-riesgo"&gt;Entendiendo el Riesgo &lt;a href="#entendiendo-el-riesgo" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Riesgo = Probabilidad × Impacto&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Probabilidad:&lt;/strong&gt; ¿Qué tan probable es que exista un defecto?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Impacto:&lt;/strong&gt; Si existe, ¿qué tan severas son las consecuencias?&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="factores-de-probabilidad"&gt;Factores de Probabilidad &lt;a href="#factores-de-probabilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Factor&lt;/th&gt;
 &lt;th&gt;Mayor Probabilidad&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Complejidad de código&lt;/td&gt;
 &lt;td&gt;Algoritmos complejos, muchas condiciones&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Nueva tecnología&lt;/td&gt;
 &lt;td&gt;Primera vez usando un framework o API&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Experiencia del desarrollador&lt;/td&gt;
 &lt;td&gt;Desarrollador junior o nuevo&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Frecuencia de cambios&lt;/td&gt;
 &lt;td&gt;Código modificado frecuentemente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Puntos de integración&lt;/td&gt;
 &lt;td&gt;Múltiples sistemas interactuando&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Deadlines ajustados&lt;/td&gt;
 &lt;td&gt;Código escrito bajo presión&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Historial&lt;/td&gt;
 &lt;td&gt;Área con muchos defectos previos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="factores-de-impacto"&gt;Factores de Impacto &lt;a href="#factores-de-impacto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Factor&lt;/th&gt;
 &lt;th&gt;Mayor Impacto&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Transacciones financieras&lt;/td&gt;
 &lt;td&gt;Pérdida de dinero, cargos incorrectos&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Seguridad/privacidad&lt;/td&gt;
 &lt;td&gt;Brecha de datos, acceso no autorizado&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Seguridad crítica&lt;/td&gt;
 &lt;td&gt;Daño físico a usuarios&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Flujo de usuario principal&lt;/td&gt;
 &lt;td&gt;Login, checkout, features primarios&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Regulatorio&lt;/td&gt;
 &lt;td&gt;Violaciones de compliance, multas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Reputación&lt;/td&gt;
 &lt;td&gt;Fallas públicas&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Integridad de datos&lt;/td&gt;
 &lt;td&gt;Pérdida o corrupción permanente&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="riesgo-de-producto-vs-riesgo-de-proyecto"&gt;Riesgo de Producto vs Riesgo de Proyecto &lt;a href="#riesgo-de-producto-vs-riesgo-de-proyecto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="riesgos-de-producto"&gt;Riesgos de Producto &lt;a href="#riesgos-de-producto" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Problemas potenciales de calidad en el software:&lt;/p&gt;</description></item><item><title>Testing en Industrias Reguladas</title><link>https://yrkan.com/es/course/module-01-fundamentals/testing-industrias-reguladas/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/testing-industrias-reguladas/</guid><description>&lt;h2 id="cuando-el-software-puede-dañar-personas"&gt;Cuando el Software Puede Dañar Personas &lt;a href="#cuando-el-software-puede-da%c3%b1ar-personas" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;La mayoría de bugs de software son molestos — un botón roto, una página lenta, un error de formato. Pero en algunas industrias, los bugs pueden lesionar o matar personas, causar fraude financiero o comprometer la seguridad nacional.&lt;/p&gt;
&lt;p&gt;En estas &lt;strong&gt;industrias reguladas&lt;/strong&gt;, gobiernos y organismos de la industria exigen estándares específicos. El testing en estos entornos va mucho más allá del QA típico — requiere &lt;strong&gt;validación&lt;/strong&gt;, &lt;strong&gt;documentación formal&lt;/strong&gt;, &lt;strong&gt;audit trails&lt;/strong&gt; y &lt;strong&gt;aprobación regulatoria&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Verificacion vs Validacion</title><link>https://yrkan.com/es/course/module-01-fundamentals/verification-vs-validation/</link><pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-01-fundamentals/verification-vs-validation/</guid><description>&lt;h2 id="las-dos-preguntas-que-definen-la-calidad"&gt;Las Dos Preguntas Que Definen la Calidad &lt;a href="#las-dos-preguntas-que-definen-la-calidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En software testing, dos preguntas fundamentales moldean todo lo que hacemos:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Estamos construyendo el producto correctamente?&lt;/strong&gt; (Verificacion)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Estamos construyendo el producto correcto?&lt;/strong&gt; (Validacion)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Estas dos preguntas — conocidas como Verificacion y Validacion, o V&amp;amp;V — representan dos perspectivas fundamentalmente diferentes sobre la calidad. Entender su distincion es esencial para cualquier tester, porque confundirlas lleva a construir software pulido que nadie quiere, o software util lleno de defectos.&lt;/p&gt;</description></item><item><title>Como Obtener el Maximo Valor</title><link>https://yrkan.com/es/course/module-00-orientation/how-to-get-maximum-value/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-00-orientation/how-to-get-maximum-value/</guid><description>&lt;h2 id="aprender-es-una-habilidad"&gt;Aprender Es una Habilidad &lt;a href="#aprender-es-una-habilidad" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Antes de sumergirnos en conceptos de QA, hablemos de &lt;em&gt;como&lt;/em&gt; aprender. La diferencia entre alguien que completa un curso y realmente retiene el conocimiento versus alguien que lo olvida todo en un mes se reduce a la tecnica de estudio, no a la inteligencia.&lt;/p&gt;
&lt;p&gt;Esta leccion cubre metodos respaldados por investigacion que haran que cada hora que inviertas en este curso valga la pena.&lt;/p&gt;
&lt;h2 id="como-esta-estructurado-el-curso"&gt;Como Esta Estructurado el Curso &lt;a href="#como-esta-estructurado-el-curso" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Entender la estructura te ayuda a planificar tu enfoque:&lt;/p&gt;</description></item><item><title>Configuracion del Entorno de Trabajo</title><link>https://yrkan.com/es/course/module-00-orientation/setting-up-environment/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-00-orientation/setting-up-environment/</guid><description>&lt;h2 id="por-que-importa-la-configuracion-del-entorno"&gt;Por Que Importa la Configuracion del Entorno &lt;a href="#por-que-importa-la-configuracion-del-entorno" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un entorno bien configurado elimina fricciones cuando comienzas a practicar. Nada mata mas la motivacion que pasar una hora solucionando problemas de instalacion cuando deberias estar aprendiendo conceptos de QA.&lt;/p&gt;
&lt;p&gt;Esta leccion te guia en la instalacion de todo lo necesario. No se requiere programacion — solo descargar, instalar y verificar que las herramientas funcionan correctamente.&lt;/p&gt;
&lt;h2 id="el-ecosistema-de-herramientas-qa"&gt;El Ecosistema de Herramientas QA &lt;a href="#el-ecosistema-de-herramientas-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Asi es como las herramientas que instalaras se relacionan con los diferentes tipos de testing:&lt;/p&gt;</description></item><item><title>Glosario de Terminos Clave</title><link>https://yrkan.com/es/course/module-00-orientation/glossary-of-key-terms/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-00-orientation/glossary-of-key-terms/</guid><description>&lt;h2 id="como-usar-este-glosario"&gt;Como Usar Este Glosario &lt;a href="#como-usar-este-glosario" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Este glosario contiene mas de 70 terminos que encontraras a lo largo del curso. Cada entrada incluye:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Termino&lt;/strong&gt; — el nombre (con abreviatura si aplica)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Definicion&lt;/strong&gt; — una explicacion concisa en 1-2 oraciones&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Modulo&lt;/strong&gt; — donde se cubre el termino en profundidad&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Guarda esta pagina en marcadores. Regresa a ella cuando encuentres un termino desconocido.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="a"&gt;A &lt;a href="#a" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Acceptance Testing (Pruebas de Aceptacion)&lt;/strong&gt; — Testing realizado para determinar si el sistema satisface los criterios de aceptacion, tipicamente ejecutado por el cliente o usuario final. &lt;em&gt;Modulo 2&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Mapa de Carrera en QA</title><link>https://yrkan.com/es/course/module-00-orientation/qa-career-roadmap/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-00-orientation/qa-career-roadmap/</guid><description>&lt;h2 id="el-panorama-profesional-en-qa"&gt;El Panorama Profesional en QA &lt;a href="#el-panorama-profesional-en-qa" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Quality Assurance es uno de los puntos de entrada mas accesibles al mundo tech — y una de las trayectorias profesionales mas versatiles una vez que estas dentro. Desde testing manual hasta ingenieria de automatizacion, desde liderazgo de equipos hasta VP de Calidad, hay un camino para cada ambicion.&lt;/p&gt;
&lt;p&gt;Esta leccion mapea las rutas, los salarios y las habilidades requeridas en cada etapa — para que puedas establecer metas claras desde el primer dia.&lt;/p&gt;</description></item><item><title>Para Quien Es Este Curso</title><link>https://yrkan.com/es/course/module-00-orientation/who-this-course-is-for/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><guid>https://yrkan.com/es/course/module-00-orientation/who-this-course-is-for/</guid><description>&lt;h2 id="bienvenido-al-curso-de-qa-engineering"&gt;Bienvenido al Curso de QA Engineering &lt;a href="#bienvenido-al-curso-de-qa-engineering" class="heading-anchor" aria-hidden="true"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Ya seas un principiante total considerando una carrera en Aseguramiento de Calidad, un tester manual buscando avanzar hacia la automatizacion, o un ingeniero QA experimentado apuntando a un rol de Lead o Manager — este curso tiene un camino para ti.&lt;/p&gt;
&lt;p&gt;Este curso fue creado por un Senior QA Lead con mas de 7 anos de experiencia en empresas como Google (Waze) y plataformas de IA. Cada leccion se basa en experiencia real probando productos usados por mas de 150 millones de personas.&lt;/p&gt;</description></item></channel></rss>