Reto formularios

Código
Avanzado
Selenium
Curso de Selenium
20 min
200 XP
Actualizado: 25/09/2025

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Ejercicio de programación: Reto formularios

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.

Tipo: Ejercicio de código 20 minutos estimados 200 puntos de experiencia

Información adicional del ejercicio

Aprende a interactuar con formularios desde Selenium.

Contenido del ejercicio

Objetivo

Dominar la interacción con diferentes tipos de elementos de formulario: inputs, textareas, checkboxes, radio buttons y dropdowns usando la clase Select.

Escenario

Automatiza el registro en una plataforma de cursos online que contiene el siguiente formulario:

<!DOCTYPE html>
<html>
<head>
    <title>Registro de Estudiante - Forms Challenge</title>
</head>
<body>
    <div id="registration-form">
        <h1>Registro de Nuevo Estudiante</h1>
        
        <form id="student-form" method="post">
            <input id="full-name" name="name" type="text" placeholder="Nombre completo" required>
            
            <input id="email" name="email" type="email" placeholder="Correo electrónico" required>
            
            <input id="password" name="password" type="password" placeholder="Contraseña" required>
            
            <textarea id="bio" name="biography" placeholder="Cuéntanos sobre ti..." rows="3"></textarea>
            
            <select id="experience-level" name="level" required>
                <option value="">Selecciona tu nivel</option>
                <option value="beginner">Principiante</option>
                <option value="intermediate">Intermedio</option>
                <option value="advanced">Avanzado</option>
            </select>
            
            <div class="interests">
                <label>Áreas de interés:</label>
                <input id="interest-web" type="checkbox" name="interests" value="web">
                <label for="interest-web">Desarrollo Web</label>
                
                <input id="interest-mobile" type="checkbox" name="interests" value="mobile">
                <label for="interest-mobile">Desarrollo Móvil</label>
                
                <input id="interest-data" type="checkbox" name="interests" value="data">
                <label for="interest-data">Ciencia de Datos</label>
            </div>
            
            <div class="study-mode">
                <label>Modalidad de estudio:</label>
                <input id="mode-online" type="radio" name="mode" value="online">
                <label for="mode-online">Online</label>
                
                <input id="mode-hybrid" type="radio" name="mode" value="hybrid">
                <label for="mode-hybrid">Híbrido</label>
                
                <input id="mode-presential" type="radio" name="mode" value="presential">
                <label for="mode-presential">Presencial</label>
            </div>
            
            <input id="terms" type="checkbox" name="terms" required>
            <label for="terms">Acepto los términos y condiciones</label>
            
            <button id="submit-btn" type="submit">Registrarse</button>
        </form>
    </div>
</body>
</html>

Tareas a realizar

Completa el formulario de registro:

  1. Campos de texto - Completa nombre, email y contraseña
  2. Textarea - Escribe una biografía de múltiples líneas
  3. Dropdown - Selecciona nivel de experiencia usando la clase Select
  4. Checkboxes - Marca al menos 2 áreas de interés
  5. Radio buttons - Selecciona modalidad "Online"
  6. Checkbox obligatorio - Acepta términos y condiciones

Requisitos técnicos

  • Usa driver.get("data:text/html;charset=utf-8," + java.net.URLEncoder.encode(htmlContent, "UTF-8"));
  • Utiliza Select class para el dropdown
  • Verifica estado de checkboxes con isSelected()
  • Incluye 3 aserciones que verifiquen valores ingresados
  • Bonus: Verifica que solo un radio button esté seleccionado a la vez

Criterios de evaluación

  • ✅ Interacción con campos input de diferentes tipos
  • ✅ Uso de sendKeys() con textarea multilínea
  • ✅ Clase Select para dropdown
  • ✅ Manejo de checkbox con verificación de estado
  • ✅ Selección de radio button exclusiva
  • ✅ Verificación de valores ingresados

¡Recuerda cerrar el driver con **driver.quit()** al final!

Lección relacionada

Este ejercicio está relacionado con la lección "Interacción con formularios" de Selenium. Te recomendamos revisar la lección antes de comenzar.

Ver lección relacionada

Má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 Selenium

Solución al ejercicio de programación en Selenium

Contenido bloqueado

¡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.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

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

⭐⭐⭐⭐⭐
4.9/5 valoración