<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Santiago Hernandez on Medium]]></title>
        <description><![CDATA[Stories by Santiago Hernandez on Medium]]></description>
        <link>https://medium.com/@santius?source=rss-7edae4144c2c------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/0*eNPfVca13FNiH9LE.</url>
            <title>Stories by Santiago Hernandez on Medium</title>
            <link>https://medium.com/@santius?source=rss-7edae4144c2c------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 07:25:17 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@santius/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[How to use Model Based Testing to increase test automation coverage?]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://medium.com/globant/how-to-use-model-based-testing-to-increase-test-automation-coverage-4299ef93d088?source=rss-7edae4144c2c------2"><img src="https://cdn-images-1.medium.com/max/2600/1*6VIi-RxMJGTEP2JdVvD2ig.jpeg" width="3925"></a></p><p class="medium-feed-snippet">When we think about software testing the first thing that comes into our minds are manual validations for which we need to identify&#x2026;</p><p class="medium-feed-link"><a href="https://medium.com/globant/how-to-use-model-based-testing-to-increase-test-automation-coverage-4299ef93d088?source=rss-7edae4144c2c------2">Continue reading on Globant »</a></p></div>]]></description>
            <link>https://medium.com/globant/how-to-use-model-based-testing-to-increase-test-automation-coverage-4299ef93d088?source=rss-7edae4144c2c------2</link>
            <guid isPermaLink="false">https://medium.com/p/4299ef93d088</guid>
            <category><![CDATA[model-based-testing]]></category>
            <category><![CDATA[quality-assurance]]></category>
            <category><![CDATA[testing-tools]]></category>
            <category><![CDATA[software-development]]></category>
            <category><![CDATA[test-automation]]></category>
            <dc:creator><![CDATA[Santiago Hernandez]]></dc:creator>
            <pubDate>Tue, 19 Jan 2021 19:14:50 GMT</pubDate>
            <atom:updated>2021-01-19T19:14:50.915Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Como automatizar pruebas de software]]></title>
            <link>https://medium.com/@santius/como-automatizar-pruebas-de-software-41dd26b5d971?source=rss-7edae4144c2c------2</link>
            <guid isPermaLink="false">https://medium.com/p/41dd26b5d971</guid>
            <category><![CDATA[automation]]></category>
            <category><![CDATA[software]]></category>
            <category><![CDATA[testing]]></category>
            <category><![CDATA[webdriver]]></category>
            <category><![CDATA[selenium]]></category>
            <dc:creator><![CDATA[Santiago Hernandez]]></dc:creator>
            <pubDate>Sat, 17 Oct 2020 07:15:24 GMT</pubDate>
            <atom:updated>2020-10-17T07:15:24.001Z</atom:updated>
            <content:encoded><![CDATA[<p><strong>Como automatizar pruebas de software</strong></p><p>Cuando empecé a dedicarme al testing automatizado, allá por el 2007, había una línea muy marcada entre los testers que trabajaban solamente haciendo testing manual y los que hacían solamente automatización o performance. Actualmente, sin embargo, esa línea no existe o está tendiendo a desaparecer ya que hoy un tester necesita, mucho más que antes, conocer a fondo el funcionamiento del software bajo prueba. De hecho, no está bien la diferenciación de arriba, ya que todo es testing, por lo tanto, así como un tester que no sabe automatizar debería aprenderlo, también un tester que hace automatización debería aprender a hacer testing manual si no lo sabe.</p><p><strong>¿Qué es la automatización de pruebas de software?</strong></p><p>La automatización de pruebas de software es una disciplina que hace uso de diferentes herramientas para lograr que un sistema actúe simulando la interacción de un humano con el software que queremos testear, a modo de poder validar su comportamiento.</p><p>Por ejemplo, supongamos que tenemos una aplicación cualquiera, la cual permite buscar artículos a la venta de acuerdo a diferentes categorías, como ser: ropa, libros, tecnología, etc. Esta aplicación necesita ser probada, sobre todo cuando se realizan cambios, para asegurarnos de que todo sigue funcionando como debería. Por ejemplo: si hago una busqueda de “botas” en la categoría libros, no debería mostrar resultados de calzado, pero sí el libro del gato con botas.</p><p>Una de las formas de testear esta funcionalidad, es tomar un teléfono celular (si es una app) o un navegador web y hacer los pasos necesarios:</p><ul><li>Ingresar en la app.</li><li>Buscar artículos.</li><li>Validar los resultados.</li></ul><p>A su vez, es recomendable probar diferentes combinaciones, por ejemplo: otras categorías, artículos no existentes, etc. A estas combinaciones también les tenemos que sumar otras que dependen del entorno de ejecución, es decir, si es una app de teléfonos móviles, deberíamos probar en iOS y Android y a su vez, con diferentes versiones de los mismos, así como distintas combinaciones de modelos de equipos, etc, para asegurarnos de que la búsqueda funciona bien siempre, sin importar qué sistema utilice el usuario.</p><p>Parece mucho, no? Bueno, de hecho lo es, sumado a que tendremos que repetir esto cada vez que el equipo necesite sacar una nueva versión de la app, incluso muchas veces en un mes, y sin contar que esto es una sola funcionalidad en una app que puede tener decenas.</p><p>Ahí es donde la automatización entra en juego, es decir, si nosotros tenemos que hacer una tarea N veces durante mucho tiempo, es más seguro y económico automatizarla para que se haga sola, sin interacción humana, y que nos avise si hay un error.</p><p><strong>¿Cuándo se deben automatizar las pruebas de software?</strong></p><p>No siempre es recomendable automatizar pruebas de software, ya que hay condiciones donde esto no es necesario, como por ejemplo:</p><ul><li>Software que esté en etapas muy tempranas de desarrollo.</li><li>Validaciones difíciles o poco confiables para realizar con una computadora.</li><li>Software muy cambiante en el tiempo, con requerimientos poco claros.</li><li>Pruebas que no se van a ejecutar más que unas pocas veces.</li><li>Proyectos de muy corta duración.</li></ul><p>Es decir, no queremos invertir tiempo y dinero en automatizar algo que en dos semanas va a cambiar (porque eso implica modificar o desarrollar nuevamente la automatización); o pruebas que se van a ejecutar pocas veces (ya que automatizar tiene un costo inicial que nos retorna un valor recién en el mediano plazo).</p><p>Ahora bien, si las condiciones de arriba no se cumplen, es decir, si tenemos un software relativamente estable, en un proyecto de larga duración y con una línea de desarrollo establecida, podemos decir que tenemos las condiciones dadas para automatizar nuestras pruebas.</p><p><strong>¿Cuáles son las ventajas de automatizar nuestras pruebas?</strong>Las ventajas de automatizar pruebas son variadas, por ejemplo la repetibilidad de las mismas, reduciendo errores de ejecución, ya que un sistema programado a realizar una tarea N veces es mas confiable que un humano haciendo la misma tarea repetidas veces.</p><p>A su vez, la velocidad es otro factor importante, ya sea porque las pruebas automatizadas pueden ejecutarse las veces que queramos, en los horarios que queramos, o porque la ejecución de las mismas es de por sí más rápida.</p><p>La confiabilidad de las mismas también aumenta, ya que podemos lanzar las mismas pruebas con la confianza de que siempre se van a ejecutar de la misma manera, con los mismos pasos y a su vez recolectando la evidencia que necesitemos, como capturas de pantalla o videos.</p><p><strong>¿Qué debo saber antes de aprender a automatizar pruebas de software?</strong></p><p>La automatizacion de pruebas, requiere ciertos conocimientos previos, sin los cuales va a ser imposible aprender a automatizar. Lamentablemente, no podemos empezar si no sabemos programar de antemano, ya que automatizar es programar.</p><p><strong>¿Qué lenguaje de programación necesito para empezar a automatizar?</strong></p><p>Hoy el mercado esta cubierto en un gran porcentaje por un grupo relativamente chico de frameworks de automatización, tales como: Selenium Webdriver, Appium, Expresso, etc, y los lenguajes que podemos utilizar son variados, tales como: Java, Python, Javascript, Ruby o C#.</p><p><strong>¿Qué nivel necesito tener para empezar a automatizar?</strong></p><p>La respuesta a esta pregunta es amplia, y va desde un nivel básico de programación orientada a objetos, hasta niveles más avanzados, dependiendo de lo que queramos hacer. Esto abarca desde la creación de casos de prueba utilizando pasos pre establecidos, hasta la creación de frameworks complejos de automatización que corran tests en paralelo, que interactúen con sistemas de integración continua o otras herramientas de reporte y gestión de dependencias.</p><p><strong>¿Qué opciones hay para empezar?</strong></p><p>Personalmente recomiendo empezar con alguna herramienta open source, como Selenium Webdriver, principalmente porque nos permite empezar sin atarnos a ninguna empresa en particular, además de que es sin lugar a dudas, la más usada del mercado, junto con su primo cercano, Appium, para pruebas en celulares y tabletas.Otra de las ventajas de Selenium es que puede ser utilizado con muchos lenguajes de programación, como: Java, Python, Javascript, .NET, etc., además de contar con una enorme comunidad que lo soporta.Además, el ecosistema que lo rodea es muy amplio, ya que podemos extender el framework y sumar funcionalidades con innumerables herramientas, de probada calidad, como ser: TestNG, jUnit, Allure, etc.Como vemos, Selenium es una herramienta muy flexible, con la que podemos aprender a automatizar casos sencillos en apenas minutos.</p><p>Además, el ecosistema que lo rodea es muy amplio, ya que podemos extender el framework y sumar funcionalidades con innumerables herramientas, de probada calidad, como ser: TestNG, jUnit, Allure, etc.</p><p>Gracias por haberte tomado el tiempo de leer el post, espero que te haya sido de utilidad y si te interesa aprender mas, suelo escribir y explicar cosas en mi blog http://elblogdesanti.com</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=41dd26b5d971" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>