Saltar al contenido
SDETRole
SDETRole

JSON y datos

Probador de XPath y selectores CSS

Prueba locators XPath y CSS contra HTML y ve qué elementos seleccionan.

Se ejecuta íntegramente en tu navegador Sin registro

HTML

0 chars

Preview (matches outlined)

The page renders here in a sandboxed frame with scripts disabled, and matched elements are outlined.

Paste HTML or load the sample login form and orders table

Queries starting with / or ( are treated as XPath; anything else as a CSS selector.

XPath and CSS cheatsheet

GoalXPathCSS
Element by id
Attribute equals
Attribute contains
Class (one of several)
Exact visible text(no CSS equivalent: CSS cannot match text)
Text contains(no CSS equivalent)
Nth row (1-based)
Last row
Cell next to a label(CSS has + and ~ but cannot start from text)
Row containing a cell(CSS cannot select by text)
Parent of an element
Input after its label
Disabled buttons
Count matches(use the match count shown)

Click any selector to run it against the sample. Browsers implement XPath 1.0, so functions like matches() or lower-case() from XPath 2.0 are not available.

Acerca de esta herramienta

Un buen locator selecciona exactamente un elemento y sigue funcionando tras el siguiente cambio de UI. Este probador te permite comprobar un locator contra el código fuente real de la página antes de ponerlo en un test de Selenium, Playwright o Cypress. Pega el HTML (desde DevTools, «Copy outerHTML»), introduce una expresión XPath o un selector CSS y ve cuántos elementos coinciden, el marcado de cada uno y dónde están en una vista previa renderizada. La vista previa es un frame aislado con los scripts desactivados. La hoja de referencia muestra los ejes y funciones XPath más comunes junto a sus equivalentes CSS, cuando existen.

Cómo usarla

  1. Pega HTML o pulsa “Load sample” para cargar un formulario de login y una tabla de pedidos.
  2. Escribe un locator. Las expresiones que empiezan por / o ( se tratan como XPath y el resto como CSS; usa el selector para forzar uno.
  3. Revisa el número de coincidencias: para un objetivo de clic o de assertion, lo que quieres es una sola.
  4. Pulsa cualquier selector de la hoja de referencia para ejecutarlo contra el ejemplo.

Preguntas frecuentes: Probador de XPath y selectores CSS

¿Debo usar XPath o selectores CSS?

Prefiere CSS o los locators del framework (como getByRole y getByTestId de Playwright) por velocidad y legibilidad. Usa XPath cuando necesites algo que CSS no puede expresar: buscar por texto con normalize-space(), subir a un ancestro o seleccionar una celda relativa a una etiqueta con following-sibling::.

¿Por qué mi XPath funciona en la consola del navegador pero no aquí?

Los navegadores solo admiten XPath 1.0, que es también lo que usa esta herramienta. Comprueba que el HTML que pegaste es el que el navegador renderizó de verdad: el contenido añadido por JavaScript, o dentro de un iframe o un shadow DOM, no está en el código fuente de la página. Copia el outerHTML desde DevTools para obtener el DOM en vivo.

¿Por qué contains(@class, "btn") encuentra demasiados elementos?

contains() busca subcadenas, así que también encuentra "btn-primary" y "submit-btn". Usa contains(concat(' ', normalize-space(@class), ' '), ' btn ') en XPath, o simplemente .btn en CSS, para buscar un nombre de clase completo.

Escribe para buscar en todo SDETRole.

Búsqueda de texto completo con Pagefind · se ejecuta en tu navegador Abrir la página de búsqueda →