Mira la lección en vídeo
Accede al vídeo completo de esta lección y a más contenido exclusivo con el Plan Plus.
Desbloquear Plan PlusDiferencia entre Assert y Verify
En Selenium IDE, los comandos de validación se dividen en dos categorías fundamentales que determinan cómo debe comportarse nuestro test cuando una verificación falla. Esta distinción es crítica para el diseño de estrategias de testing eficaces.
Los comandos assert actúan como validaciones estrictas o "hard assertions". Cuando un comando assert encuentra una condición que no se cumple, detiene inmediatamente la ejecución del test completo. No se ejecutarán los comandos posteriores al assert fallido, y el test se marcará como fallido en ese punto exacto.
Por el contrario, los comandos verify funcionan como validaciones flexibles o "soft assertions". Si un comando verify detecta que una condición no se cumple, registra el error en el log de Selenium IDE pero permite que el test continúe ejecutándose. Todos los comandos posteriores al verify fallido se ejecutarán normalmente, aunque el test final se marcará como fallido si hubo verificaciones que no pasaron.
Comportamiento en la práctica
Consideremos un ejemplo donde validamos varios elementos de una página de confirmación de pedido:
Usando Assert (ejecución se detiene en el primer fallo):
assertText | id=titulo-pagina | Confirmación de Pedido
assertElementPresent | id=numero-pedido
assertText | id=estado-pedido | Procesando
assertElementPresent | id=boton-seguimiento
Si el elemento id=numero-pedido
no existe, el test se detendrá ahí mismo. Los comandos para verificar el estado del pedido y el botón de seguimiento nunca se ejecutarán.
Usando Verify (ejecución continúa tras los fallos):
verifyText | id=titulo-pagina | Confirmación de Pedido
verifyElementPresent | id=numero-pedido
verifyText | id=estado-pedido | Procesando
verifyElementPresent | id=boton-seguimiento
Si el elemento id=numero-pedido
no existe, Selenium IDE registrará el error pero continuará verificando el estado del pedido y la presencia del botón de seguimiento. Al final del test, tendremos información completa sobre todos los elementos que fallaron.
Cuándo usar cada tipo
Utiliza Assert cuando:
- La condición es prerequisito absoluto para continuar el test
- Un fallo hace que el resto de verificaciones sea irrelevante
- Quieres optimizar el tiempo de ejecución parando en el primer error crítico
- Estás validando elementos fundamentales como login o navegación inicial
Utiliza Verify cuando:
- Necesitas un informe completo de todos los problemas encontrados
- Los fallos son independientes entre sí
- Quieres obtener la máxima información de cada ejecución de test
- Estás validando múltiples elementos de una interfaz
Impacto en los logs
Ambos tipos de comandos registran información detallada en el panel de logs de Selenium IDE. La diferencia principal es que con verify, podrás ver todos los errores acumulados en una sola ejecución, mientras que con assert solo verás el primer error encontrado antes de que se detuviera la ejecución.
Esta diferencia fundamental entre assert y verify te permite diseñar estrategias de testing más efectivas, combinando ambos tipos según las necesidades específicas de validación de cada escenario.
Comandos de validación más importantes
Guarda tu progreso
Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.
Más de 25.000 desarrolladores ya confían en CertiDevs
Selenium IDE proporciona una amplia gama de comandos de validación que nos permiten verificar el estado y contenido de los elementos en nuestras páginas web. Estos comandos son fundamentales para crear tests robustos que confirmen que nuestra aplicación funciona correctamente.
Validación de presencia de elementos
Los comandos más básicos y frecuentemente utilizados son aquellos que verifican si un elemento está presente en la página:
assertElementPresent y verifyElementPresent
assertElementPresent | id=boton-enviar
verifyElementPresent | css=.mensaje-error
Estos comandos únicamente comprueban que el elemento existe en el DOM, independientemente de si es visible para el usuario o no. Son especialmente útiles para validar que la estructura básica de la página se ha cargado correctamente.
assertElementNotPresent y verifyElementNotPresent
assertElementNotPresent | id=mensaje-error
verifyElementNotPresent | css=.loading-spinner
Estos comandos verifican que un elemento no existe en la página. Son muy útiles para confirmar que mensajes de error no aparecen cuando una operación es exitosa, o que elementos temporales como spinners de carga han desaparecido.
Validación de visibilidad
Para elementos que pueden estar presentes pero ocultos, utilizamos comandos específicos de visibilidad:
assertElementVisible y verifyElementVisible
assertElementVisible | id=menu-usuario
verifyElementVisible | xpath=//div[@class='notificacion-exito']
Estos comandos confirman que el elemento no solo existe, sino que también es visible para el usuario final.
assertElementNotVisible y verifyElementNotVisible
assertElementNotVisible | id=panel-administrador
verifyElementNotVisible | css=.mensaje-temporal
Perfectos para validar que ciertos elementos están ocultos según las condiciones específicas del test.
Validación de texto
Los comandos de validación de texto son cruciales para verificar que el contenido mostrado al usuario es el correcto:
assertText y verifyText
assertText | id=titulo-pagina | Bienvenido a la aplicación
verifyText | css=.precio-total | 125,50 €
Estos comandos validan que el texto exacto del elemento coincide con el valor esperado. Son sensibles a mayúsculas, espacios y caracteres especiales.
assertTextPresent y verifyTextPresent
assertTextPresent | Pedido procesado correctamente
verifyTextPresent | Su solicitud ha sido enviada
Estos comandos buscan el texto especificado en cualquier lugar de la página, sin necesidad de especificar un localizador. Son útiles para validar mensajes que pueden aparecer en diferentes ubicaciones.
Validación de valores de campos
Para formularios y campos de entrada, disponemos de comandos específicos:
assertValue y verifyValue
assertValue | id=campo-email | usuario@ejemplo.com
verifyValue | name=cantidad | 5
Estos comandos verifican el valor actual de campos de formulario como inputs, textareas y selects.
assertSelectedLabel y verifySelectedLabel
assertSelectedLabel | id=pais | España
verifySelectedLabel | name=categoria | Electrónicos
Específicamente diseñados para validar la opción seleccionada en listas desplegables, verificando el texto visible de la opción.
Validación de atributos
Para verificar propiedades específicas de los elementos HTML:
assertAttribute y verifyAttribute
assertAttribute | id=enlace-externo@href | https://www.ejemplo.com
verifyAttribute | css=.imagen-producto@alt | Descripción del producto
La sintaxis utiliza el formato localizador@atributo
para especificar qué atributo HTML queremos validar.
Comandos de validación de título
Para verificar el título de la página actual:
assertTitle y verifyTitle
assertTitle | Panel de Control - Mi Aplicación
verifyTitle | Resultado de búsqueda
Especialmente útiles para confirmar que la navegación ha funcionado correctamente y estamos en la página esperada.
Estrategias de uso combinado
En la práctica profesional, es común combinar diferentes tipos de validaciones en un mismo test:
# Validación crítica que debe pasar para continuar
assertElementPresent | id=formulario-login
# Validaciones informativas que pueden fallar
verifyText | css=.mensaje-bienvenida | ¡Hola de nuevo!
verifyElementVisible | id=boton-recordar-password
verifyAttribute | id=campo-usuario@placeholder | Introduce tu email
Esta combinación nos permite obtener información completa sobre el estado de la página manteniendo la lógica de ejecución apropiada para cada situación específica.
Los comandos de validación son la base para crear tests confiables que nos proporcionen feedback preciso sobre el comportamiento de nuestras aplicaciones web desde la perspectiva del usuario final.
Aprendizajes de esta lección de Selenium
- Comprender la diferencia fundamental entre assert y verify en Selenium IDE.
- Aprender cuándo utilizar comandos assert para validaciones críticas que detienen la ejecución.
- Conocer el uso de comandos verify para obtener informes completos sin detener el test.
- Identificar los principales comandos de validación para presencia, visibilidad, texto, valores y atributos.
- Saber combinar assert y verify para diseñar estrategias de testing efectivas y robustas.
Completa este curso de Selenium y certifícate
Únete a nuestra plataforma de cursos de programación y accede a miles de tutoriales, ejercicios prácticos, proyectos reales y nuestro asistente de IA personalizado para acelerar tu aprendizaje.
Asistente IA
Resuelve dudas al instante
Ejercicios
Practica con proyectos reales
Certificados
Valida tus conocimientos
Más de 25.000 desarrolladores ya se han certificado con CertiDevs