<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>selenium-webdriver on Una QA en Apuros</title><link>https://unaqaenapuros.com/categories/selenium-webdriver/</link><description>Recent content in selenium-webdriver on Una QA en Apuros</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Wed, 28 Apr 2021 07:00:00 +0000</lastBuildDate><atom:link href="https://unaqaenapuros.com/categories/selenium-webdriver/index.xml" rel="self" type="application/rss+xml"/><item><title>072 - Pruebas de Integración (III): Herramientas.</title><link>https://unaqaenapuros.com/2021/04/28/072-pruebas-de-integracion-iii-herramientas/</link><pubDate>Wed, 28 Apr 2021 07:00:00 +0000</pubDate><guid>https://unaqaenapuros.com/2021/04/28/072-pruebas-de-integracion-iii-herramientas/</guid><description>¡Hola a todos!
En esta entrada hablaremos de las diferentes herramientas que tenemos para realizar pruebas de integración. ¡Comenzamos!
Herramientas disponibles. Para la realización de las pruebas de integración, las herramientas que podemos usar son prácticamente las mismas que para las pruebas unitarias. Además de las descritas en el artículo de pruebas unitarias, destacamos:
Selenium: entorno de pruebas de software para aplicaciones basadas en la web. SoapUI: para la realización de pruebas a aplicaciones con arquitectura orientada a servicio (SOA) y transferencia de estado representacional (REST). Postman: herramienta para hacer peticiones a APIs y generar colecciones de peticiones que nos permitan probarlas de una manera rápida y sencilla. Watir: una familia de bibliotecas bajo la Licencia BSD para el lenguaje de programación Ruby que automatiza la operación de los navegadores web. Mocha: framework de pruebas de JavaScript que se ejecuta en Node.js. Nos da la posibilidad de crear tanto tests síncronos como asíncronos de una forma muy sencilla. Jasmine: framework para realizar pruebas unitarias y de integración de código JavaScript. Puede ser ejecutado en el navegador o sin él. Jest: framework basado en Jasmine pero que posee muchas más funcionalidades. Ava: framework como Mocha que permite correr nuestros tests de manera paralela en procesos aislados. Y hasta aquí esta entrada dedicada a las herramientas de las pruebas unitarias.</description></item><item><title>059- Preguntas para una entrevista a un QA.</title><link>https://unaqaenapuros.com/2019/10/23/059-preguntas-para-una-entrevista-a-un-qa/</link><pubDate>Wed, 23 Oct 2019 07:00:03 +0000</pubDate><guid>https://unaqaenapuros.com/2019/10/23/059-preguntas-para-una-entrevista-a-un-qa/</guid><description>¡Hola a todos!
para seguir el tema de perfiles, prueba técnica y entrevistas, vamos a hacer un artículo sobre qué preguntas hacer en una entrevista a un QA. ¡Comenzamos!
¿Cuáles son las mejores preguntas para hacer en una entrevista a una persona de QA?, ¿Qué necesitamos conocer? cuando me iba a enfrentar a mi primera entrevista como entrevistadora (y no como entrevistada que es a lo que estaba acostumbrada), me hice una lista de todas las cosas que yo me preguntaría a mi misma o de las preguntas que me habían hecho durante todos los años que llevo trabajando y me habían gustado.</description></item><item><title>047 - Appium 101</title><link>https://unaqaenapuros.com/2019/02/16/047-appium-101/</link><pubDate>Sat, 16 Feb 2019 12:17:50 +0000</pubDate><guid>https://unaqaenapuros.com/2019/02/16/047-appium-101/</guid><description>¡Hola a todos!
En esta entrada vamos a hablar de Appium: qué es, para qué sirve y qué nos aporta. ¡Empezamos!
¿Qué es Appium? Web Oficial de Appium: http://appium.io/
Repositorio de GitHub: https://github.com/appium/appium
Appium es el estándar en automatización de pruebas para móviles. Se trata de un framework Open Source que permite probar aplicaciones móviles nativas o híbridas en las plataformas móviles iOS y Android. Es una herramienta cross-platform, es decir, un framework que sirve para varias plataformas a la vez, con lo cual, podemos crear pruebas en diferentes plataformas utilizando la misma API de Appium. Esto también nos permite reutilizar el código de pruebas que desarrollamos para una aplicación que está en varias plataformas.</description></item><item><title>035 - Proyecto Selenium - Cucumber (V).</title><link>https://unaqaenapuros.com/2017/11/08/035-proyecto-selenium-cucumber-v/</link><pubDate>Wed, 08 Nov 2017 08:00:00 +0000</pubDate><guid>https://unaqaenapuros.com/2017/11/08/035-proyecto-selenium-cucumber-v/</guid><description>¡Hola a todos!
Esta será la última entrada referente al proyecto Selenium-Cucumber. ¡Comenzamos!
URL Repositorio: https://github.com/estefafdez/selenium-cucumber En esta entrada vamos a explicar la sección Features del proyecto y los selectores para completar nuestro primer test.
Features. Esta sección se compone de las diferentes Features (test) del proyecto.
HomePage.feature</description></item><item><title>034 - Proyecto Selenium - Cucumber (IV).</title><link>https://unaqaenapuros.com/2017/11/01/034-proyecto-selenium-cucumber-iv/</link><pubDate>Wed, 01 Nov 2017 08:00:08 +0000</pubDate><guid>https://unaqaenapuros.com/2017/11/01/034-proyecto-selenium-cucumber-iv/</guid><description>¡Hola a todos!
En esta entrada seguiremos hablando del proyecto Selenium-Cucumber. ¡Comenzamos!
URL Repositorio: https://github.com/estefafdez/selenium-cucumber En esta entrada vamos a explicar la sección Step Definitions del proyecto centrándonos en la clase Hooks y en una clase con pasos ya definidos como es ClickSteps().
Step Definitions. Esta sección se compone de las siguientes clases:
ConfigurationSteps.java Hooks.java ClickSteps.java AssertionSteps.java ConfigurationSteps.java InputSteps.javaJavascript HandlingSteps.java KeyboardSteps.java NavigationSteps.java ProgressSteps.java ScreenshotSteps.java \* Cada una de estas clases representa un conjunto de acciones agrupadas en cada clase.</description></item><item><title>033 - Proyecto Selenium - Cucumber (III).</title><link>https://unaqaenapuros.com/2017/10/25/033-proyecto-selenium-cucumber-iii/</link><pubDate>Wed, 25 Oct 2017 07:00:42 +0000</pubDate><guid>https://unaqaenapuros.com/2017/10/25/033-proyecto-selenium-cucumber-iii/</guid><description>¡Hola a todos!
En esta entrada seguiremos hablando del proyecto Selenium-Cucumber. ¡Comenzamos!
URL Repositorio: https://github.com/estefafdez/selenium-cucumber En esta entrada vamos a explicar la sección Configure Environment del proyecto centrándonos en la clase WebDriverFactory y PropertiesHandler.
Configure Environment. Esta sección se compone de las siguientes clases:
CreateDriver.java WebDriverFactory.java PropertiesHandler.java *Nota: Las clases HandlerRepo.java y Main.java las comentaremos una vez que estén terminadas ya que siguen siendo un WIP.</description></item><item><title>032 - Proyecto Selenium - Cucumber (II).</title><link>https://unaqaenapuros.com/2017/10/18/031-proyecto-selenium-cucumber-ii/</link><pubDate>Wed, 18 Oct 2017 07:00:25 +0000</pubDate><guid>https://unaqaenapuros.com/2017/10/18/031-proyecto-selenium-cucumber-ii/</guid><description>¡Hola a todos!
En esta entrada seguiremos hablando del proyecto Selenium-Cucumber que comenzamos en la anterior entrada. ¡Comenzamos!
URL Repositorio: https://github.com/estefafdez/selenium-cucumber En esta entrada vamos a explicar la sección Configure Environment del proyecto centrándonos en la clase createDriver.
Configure Environment. Esta sección se compone de las siguientes clases:
CreateDriver.java WebDriverFactory.java PropertiesHandler.java *Nota: Las clases HandlerRepo.java y Main.java las comentaremos una vez que estén terminadas ya que siguen siendo un WIP.</description></item><item><title>031 - Proyecto Selenium - Cucumber (I).</title><link>https://unaqaenapuros.com/2017/10/11/031-proyecto-selenium-cucumber-i/</link><pubDate>Wed, 11 Oct 2017 07:00:33 +0000</pubDate><guid>https://unaqaenapuros.com/2017/10/11/031-proyecto-selenium-cucumber-i/</guid><description>¡Hola a todos!
En esta entrada hablaremos del proyecto Selenium-Cucumber. ¡Comenzamos!
Este proyecto propio fue llevado a cabo con Francisco Fernández González, gran compañero y amigo.
URL Repositorio: https://github.com/estefafdez/selenium-cucumber ¿Por qué hacer este proyecto? Este proyecto surge, primero, de poder tener un &amp;ldquo;core&amp;rdquo; propio donde poder ejecutar pruebas usando Selenium Webdriver 3 en cualquier sistema operativo y cualquier navegador simplemente cambiando las configuraciones necesarias en el fichero pom.xml y segundo, para poder aprender Cucumber y cómo trabajar con él en el desarrollo de test automáticos con Selenium.</description></item><item><title>026 - Selenium 103.</title><link>https://unaqaenapuros.com/2017/09/06/026-selenium-103-sin-empezar-q26/</link><pubDate>Wed, 06 Sep 2017 09:00:59 +0000</pubDate><guid>https://unaqaenapuros.com/2017/09/06/026-selenium-103-sin-empezar-q26/</guid><description>¡Hola a todos!
En esta entrada vamos a continuar con la recopilación de preguntas acerca de Selenium Webdriver a la hora de enfrentarnos a una entrevista de trabajo….¡Comenzamos!
¿Qué comandos existen para los diferentes tipos de navegación? Pon un ejemplo. Los comandos de navegación disponibles en Selenium son los siguientes: navigate().back() – Este método de navegación lo que hará es volver a la página anterior que estuviéramos visitando. No necesitamos ningún parámetro. Lo usaremos de la siguiente forma: driver.navigate().back(); navigate().forward() – Este método se puede usar cuando hemos vuelto a una página anterior y queremos volver a la página en la que estábamos antes, al contrario del navigate.back, este comando navega a la página siguiente. Tampoco necesita ningún parámetro y lo usaremos: driver.navigate().forward(); navigate().refresh() – Este método refresca la página actual del usuario, volviendo a cargar todos los elementos de nuevo. No se necesita ningún parámetro y lo usamos de la forma: driver.navigate().refresh(); navigate().to() – Este método sirve para lanzar una nueva página y navegar a una URL específica que debemos pasar como parámetro. Lo usaremos de la forma: driver.navigate().to(“https://estefafdez.com”);</description></item><item><title>025 - Selenium 102.</title><link>https://unaqaenapuros.com/2017/08/30/025-selenium-102/</link><pubDate>Wed, 30 Aug 2017 07:00:34 +0000</pubDate><guid>https://unaqaenapuros.com/2017/08/30/025-selenium-102/</guid><description>¡Hola a todos!
En esta entrada haremos una recopilación de preguntas acerca de Selenium Webdriver a la hora de enfrentarnos a una entrevista de trabajo&amp;hellip;.¡Comenzamos!
¿Qué es Selenium? Selenium es una herramienta de automatización de pruebas funcionales basada en el navegador. Es básicamente una biblioteca que puede utilizar en su programa para probar una aplicación web.
¿Qué versiones existen de Selenium? Selenium WebDriver - Se usa para la automatización de pruebas en aplicaciones web usando métodos en un navegador nativo. Selenium IDE - Plugin de Firefox para grabar y ejecutar pruebas. Selenium Grid - Permite ejecutar test de selenium en paralelo a través de múltiples máquinas. ¿Qué lenguajes de programación soporta Selenium Webdriver? Los lenguajes soportados son: Java, C#, php, Ruby, Python.</description></item><item><title>024 - Creando nuestro primer proyecto con Selenium Webdriver.</title><link>https://unaqaenapuros.com/2017/08/23/024-creando-nuestro-primer-proyecto-con-selenium-webdriver/</link><pubDate>Wed, 23 Aug 2017 07:00:34 +0000</pubDate><guid>https://unaqaenapuros.com/2017/08/23/024-creando-nuestro-primer-proyecto-con-selenium-webdriver/</guid><description>¡Hola a todos!
En esta entrada vamos a aprender a hacer nuestro primer proyecto de pruebas automáticas usando Selenium Webdriver&amp;hellip;. ¡Comenzamos!
Herramientas utilizadas en este tutorial:
MacbookPro con MacOSX Sierra. InteliJ Idea 2017. Geckodriver for MacOSX: https://github.com/mozilla/geckodriver/releases Vamos a comenzar creando un nuevo proyecto Maven de la siguiente forma:
Create new project -&amp;gt; Maven.</description></item><item><title>023 - Selenium Webdriver: seleccionando Xpath.</title><link>https://unaqaenapuros.com/2017/08/16/023-selenium-webdriver-seleccionando-xpath/</link><pubDate>Wed, 16 Aug 2017 07:00:00 +0000</pubDate><guid>https://unaqaenapuros.com/2017/08/16/023-selenium-webdriver-seleccionando-xpath/</guid><description>¡Hola a todos!
En esta entrada vamos a hablar de cómo seleccionar un Xpath para trabajar con Selenium Webdriver de forma que sea lo más robusto y portable posible. ¡Comenzamos!
Antes de empezar con los consejos debemos comprender qué es un Xpath.
XPath (XML Path Language) es un lenguaje que permite recuperar información de un documento XML definiendo una sintaxis para establecer partes en un documento XML, permitiendo navegar a través de sus elementos y atributos, además permite manipular de forma básica booleanos, números y cadenas.</description></item><item><title>022 - Selenium Webdriver.</title><link>https://unaqaenapuros.com/2017/08/09/022-selenium-webdriver/</link><pubDate>Wed, 09 Aug 2017 07:00:20 +0000</pubDate><guid>https://unaqaenapuros.com/2017/08/09/022-selenium-webdriver/</guid><description>¡Hola a todos!
En esta entrada vamos a hablar de Selenium Webdriver&amp;hellip;¡Comenzamos!
Selenium WebDriver es una herramienta que está diseñada para ejecutar las pruebas automáticas en los principales navegadores (IE, Chrome, Firefox y Opera). Utiliza lenguajes como Python, Ruby, Java y C#. La licencia de esta herramienta es Apache 2.0.
Una de las ventajas de usar Selenium WebDriver frente a Selenium IDE son los controladores nativos que incluye, que dan soporte a distintos navegadores (Internet Explorer, Firefox, Chrome y próximamente Opera y Safari).</description></item><item><title>021- Selenium 101.</title><link>https://unaqaenapuros.com/2017/08/02/021-selenium-101/</link><pubDate>Wed, 02 Aug 2017 07:00:17 +0000</pubDate><guid>https://unaqaenapuros.com/2017/08/02/021-selenium-101/</guid><description>¡Hola a todos!
En esta entrada vamos a hablar de Selenium, primero haciendo una pequeña definición de qué es, y hablando de Selenium IDE. ¡Comenzamos!
Selenium es un entorno de pruebas de software para aplicaciones web. Existen dos herramientas principales: Selenium IDE, que es una herramienta para grabar/reproducir pruebas sólo grabando acciones y en la que se puede generar el código de esas pruebas, y Selenium Webdriver (el más conocido) en el que se pueden escribir en forma de código pruebas software usando lenguajes como Java, C#, Ruby, Groovy, Perl, Php o Python. Las pruebas pueden ejecutarse en cualquier navegador (Firefox, Chrome, IE, Safari..) así como en cualquier sistema operativo (Windows, Linux, MacOSX).</description></item><item><title>020 - Buenas prácticas en el diseño de Test Automáticos con Selenium Webdriver.</title><link>https://unaqaenapuros.com/2017/07/26/020-buenas-practicas-en-el-diseno-de-test-automaticos-con-selenium-webdriver/</link><pubDate>Wed, 26 Jul 2017 07:00:05 +0000</pubDate><guid>https://unaqaenapuros.com/2017/07/26/020-buenas-practicas-en-el-diseno-de-test-automaticos-con-selenium-webdriver/</guid><description>¡Hola a todos!
Para seguir con el tema de las buenas prácticas, en esta entrada vamos a hablar de las buenas prácticas en cuanto al diseño de Test Automáticos con Selenium Webdriver&amp;hellip;¡Comenzamos!
Haz siempre tu código legible. Para ello utiliza métodos claros, devuelve siempre &amp;ldquo;this&amp;rdquo;, usa métodos &amp;ldquo;void&amp;rdquo;. Devuelve argumentos genéricos y con nombres auto-descriptivos
1 2 3 4 5 6 7 @Test public void openPageWithoutErrors() throws Exception { MainPage main = openMainPage(); main.hasNumberOfErrors(1); main.withCampaignName(&amp;#34;SELENIUM&amp;#34;).save(); main.hasNumberOfErrors(2); } Sé robusto y portable a la hora de seleccionar los elementos. Evita siempre seleccionar un elemento usando el xpath generado por herramientas como Firepath. Crea siempre tus selectores de la forma más robusta y portable posible. Intenta seleccionar siempre un elemento mediante su: id &amp;gt; name &amp;gt; css &amp;gt; xpath. Seleccionar por id y por nombre son, a menudo, la forma más fácil y segura de seleccionar un elemento. Selecciona un elemento por xpath cuando necesites que contenga un texto específico. Usa siempre los selectores css junto al id o el nombre del elemento. Si tenemos problemas seleccionando los links en una aplicación, podemos usar las href parciales. Evita usar siempre Thread.sleep, usa Wait o FluentWait. Sabemos que a veces debemos decirle a Selenium que espere antes de realizar alguna acción. Debemos intentar utilizar siempre métodos como Wait o FluentWait.</description></item></channel></rss>