Ejercicio de programación: Reto Selectores CSS
Este ejercicio de programación está diseñado para poner a prueba tus conocimientos en Selenium. Es un ejercicio avanzado que pondrá a prueba tus conocimientos expertos.
Información adicional del ejercicio
Aprende a utilizar selectores CSS en Selenium para localizar elementos de forma efectiva.
Contenido del ejercicio
Objetivo
Dominar los selectores CSS básicos y avanzados para localizar elementos web de manera eficiente usando la sintaxis CSS nativa.
Escenario
Automatiza la localización de elementos en una página de productos que contiene el siguiente HTML:
<!DOCTYPE html>
<html>
<head>
<title>Tienda Online - CSS Challenge</title>
</head>
<body>
<header>
<nav class="main-nav">
<a href="/inicio" class="nav-link">Inicio</a>
<a href="/productos" class="nav-link active">Productos</a>
</nav>
</header>
<main>
<div id="product-container">
<h1>Nuestros Productos</h1>
<div class="product-grid">
<div class="product-card" data-category="electronics">
<h3>Laptop Gaming</h3>
<span class="price">$1299</span>
<button type="button" class="btn-primary" disabled>Agotado</button>
</div>
<div class="product-card featured" data-category="electronics">
<h3>Smartphone Pro</h3>
<span class="price">$899</span>
<button type="button" class="btn-primary">Comprar</button>
</div>
<div class="product-card" data-category="books">
<h3>Guía de CSS</h3>
<span class="price">$29</span>
<button type="button" class="btn-secondary">Comprar</button>
</div>
</div>
</div>
<footer>
<input type="email" placeholder="Newsletter" required>
<button type="submit">Suscribirse</button>
</footer>
</main>
</body>
</html>
Tareas a realizar
Localiza estos elementos usando selectores CSS:
- Contenedor principal - Usa selector por ID
- Enlace activo de navegación - Usa múltiples clases CSS
- Segundo producto - Usa pseudo-clase
:nth-child()
- Botón habilitado - Usa pseudo-clase
:not()
para excluir deshabilitados - Productos de electrónicos - Usa selector de atributo con valor exacto
- Campo de email - Usa selector de atributo por tipo
Requisitos técnicos
- Carga el HTML usando:
driver.get("data:text/html;charset=utf-8," + java.net.URLEncoder.encode(htmlContent, "UTF-8"));
- Todos los selectores deben usar
By.cssSelector()
- Incluye 3 aserciones que verifiquen elementos localizados
- Bonus: Usa un combinador (espacio,
>
,+
,~
) en al menos un selector
Criterios de evaluación
- ✅ Selector por ID (
#id
) - ✅ Selector por múltiples clases (
.clase1.clase2
) - ✅ Pseudo-clase estructural (
:nth-child()
) - ✅ Pseudo-clase de negación (
:not()
) - ✅ Selector de atributo (
[atributo='valor']
) - ✅ Al menos un combinador CSS
¡Recuerda cerrar el driver con **driver.quit()**
al final!
Lección relacionada
Este ejercicio está relacionado con la lección "Selectores CSS" de Selenium. Te recomendamos revisar la lección antes de comenzar.
Ver lección relacionadaMás ejercicios de Selenium
Explora más ejercicios de programación en Selenium para mejorar tus habilidades y obtener tu certificación.
Ver más ejercicios de SeleniumSolución al ejercicio de programación en Selenium
¡Desbloquea la solución completa!
Completa el ejercicio de programación en Selenium para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.
Practica con ejercicios de programación en Selenium
Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.
Asistente de IA
Aprende de tus errores
Progreso
Mide tu avance
Certificación
Valida tus habilidades
Únete a miles de desarrolladores mejorando sus habilidades en Selenium