Este artículo explica de forma sencilla y directa qué son los localizadores en Selenium WebDriver y por qué son la base de cualquier prueba automatizada.
Deberías aprender, a cómo identificar elementos web como botones, cuadros de texto o enlaces y los 8 tipos clásicos de localizadores: ID, Name, Class Name, Tag Name, Link Text y Partial Link Text, CSS Selector y XPath.
También conocerás que es un localizador relativo de Selenium 4, los que permiten encontrar elementos según su posición respecto a otros y verás ejemplos prácticos en Java para cada caso.
Por último, tienes un breve resumen de buenas prácticas para elegir los localizadores más confiables y evitar algunos errores habitualmente comunes.
Qué es un localizador
En Selenium WebDriver, los localizadores son estrategias o comandos que indican a Selenium qué elemento web (como un cuadro de texto, enlace o botón) debe interactuar.
Son la base de cualquier prueba automatizada: sin identificar correctamente los elementos, tu script NO podrá realizar ninguna acción.
Los localizadores permiten a Selenium encontrar e interactuar con los elementos en el Modelo de Objetos del Documento (DOM) de una página web, como ingresar texto, hacer clic en botones, seleccionar opciones de listas desplegables o verificar valores.
Por qué son importantes los localizadores
Permiten identificar elementos específicos en una página web y habilitan a Selenium para realizar operaciones como click, sendKeys, getText, entre otras.
La precisión de tu localizador define la fiabilidad de tu prueba: ¡localizador incorrecto, elemento incorrecto!
7 Localizadores clásicos de Selenium WebDriver
Esto son los 7 localizadores más usados con Selenium WebDriver: id, name, class name, tag name, link text y partial link text, selector css y xPath.
Ejemplos de cada tipo de localizador
1. Por ID
Cada elemento HTML puede tener un identificador único ID, por eso este es uno de los métodos más rápidos y confiables.
driver.findElement(By.id("email")).sendKeys("test@example.com");
2. Por Name
Se usa cuando los elementos tienen un atributo name definido, como en formularios. Localiza un elemento cuando utiliza un atributo NAME.
driver.findElement(By.name("userName")).sendKeys("Tutorial");
3. Por Class Name
Encuentra un elemento usando el valor del atributo class. Es útil si varios elementos comparten una misma clase CSS.
driver.findElement(By.className("inputtext")).click();
4. Por Tag Name
Busca elementos por su etiqueta HTML, como IMPUT, BUTTON, DIV, etc.
driver.findElement(By.tagName("button")).click();
5. Por Link Text / Partial Link Text
Solo funciona con enlaces de la etiqueta A. Busca el enlace por el texto visible que muestra.
driver.findElement(By.linkText("REGISTER")).click();
También se usa con enlaces, pero no requiere el texto completo: basta con una parte de él.
driver.findElement(By.partialLinkText("REG")).click();
6. Por CSS Selector
Permite localizar elementos con reglas CSS, combinando etiquetas, clases, ids o atributos.
driver.findElement(By.cssSelector("input#email"));
driver.findElement(By.cssSelector("input.inputtext[name='pass']"));
7. Por XPath
Usa rutas XPath para navegar por la estructura del HTML (DOM). Puede localizar elementos de manera muy específica, incluso con condiciones complejas.
driver.findElement(By.xpath("//input[@type='text' and @name='userName']"));
Localizadores Avanzados: Localizadores Relativos (Selenium 4)
Una de las adiciones más prácticas en Selenium 4 son los localizadores relativos, que permiten localizar elementos basándose en su posición visual relativa a otros elementos.
// Encontrar el campo de contraseña debajo del campo de nombre de usuario
WebElement passwordField = driver.findElement(
RelativeLocator.with(By.tagName("input"))
.below(usernameField)
);
// Encontrar el botón cancelar a la izquierda del botón enviar
WebElement cancelButton = driver.findElement(
RelativeLocator.with(By.tagName("button"))
.toLeftOf(submitButton)
);
// Encontrar etiqueta encima de un input (útil para validación de formularios)
WebElement label = driver.findElement(
RelativeLocator.with(By.tagName("label"))
.above(inputField)
.near(inputField, 50) // dentro de 50 píxeles
);
Buenas prácticas a la hora de elegir localizadores
✅ Orden preferible: ID → Name → CSS → XPath (siguiendo este orden de fiabilidad).
✅ Usar atributos únicos y estables (evitar clases dinámicas).
✅ Evitar localizadores frágiles que se rompen con cambios en la UI.
✅ Validar localizadores usando las herramientas de desarrollo del navegador antes de escribir el script.
Conclusión
Un localizador es, la forma en que Selenium encuentra elementos en la aplicación web y debes saber, que existen 7 tipos principales de localizadores, cada uno diseñado para un escenario diferente.
Los más confiables son el ID o el Name y los más poderosos, selector CSS y XPath.
CONSEJO FINAL: Dedica tu tiempo a practicar con las Herramientas de Desarrollo (F12) de tu navegador. ¡El dominar los localizadores es la vía más rápida de escribir scripts de automatización estables!
Artículos Relacionados
Descubre más desde CIBERED
Suscríbete y recibe las últimas entradas en tu correo electrónico.
