Tabla de contenidos
Pruebas automáticas vs pruebas manuales
Cuando se trata de probar los chatbots de WhatsApp hasta ahora, ha habido principalmente dos enfoques:
- Probar manualmente mediante un smartphone.
- Prueba de la funcionalidad de backend con API Testing.
Ambos enfoques son válidos y ningún proyecto de tecnología conversacional con enfoque empresarial debería perderlos. Pero hay dos defectos obvios:
- Las pruebas manuales no son escalables en la medida necesaria para garantizar una alta calidad constante para los chatbots cuando estos estén en producción.
- Las pruebas de backend no consideran la experiencia del usuario final.
Botium llena este vacío con un nuevo conector para probar los chatbots de WhatsApp en smartphones reales y virtuales.
Construcción de la infraestructura de prueba
Esto es lo que necesitas:
- Algunos teléfonos inteligentes con tarjetas SIM y cables USB.
- O Docker + Docker-Compose para iniciar dispositivos virtuales.
Configuración de dispositivos reales
- Compra algunos smartphones (o usa el tuyo propio) con tarjetas SIM.
- Instala y registra WhatsApp en ellos.
- Habilita el modo de desarrollador de Android: pregunta a Google cómo hacerlo para el modelo de tu dispositivo.
- Conéctalo a tu estación de trabajo con el cable de datos USB.
- Instala SDK de Android.
- Instala y ejecuta Appium.
Configurar dispositivos virtuales
- Instala Docker y Docker-Compose.
- Lanza un dispositivo virtual con la ayuda de este proyecto.
En resumen, puedes crear un archivo docker-compose.yml e iniciarlo con docker-compose up -d para obtener una sola máquina virtual con un solo dispositivo Samsung virtual en funcionamiento. Puedes verlo en funcionamiento en la siguiente ruta: http://localhost:6080
version: “3” services: samsung_galaxy_S8: image: budtmo/docker-android-x86–11.0 privileged: true ports: - “6080:6080” - “4723:4723” environment: - DEVICE=Samsung Galaxy S8 - APPIUM=true - MOBILE_WEB_TEST=false - AUTO_RECORD=false
Emulador de dispositivo Samsung
Obtén una cuenta Twilio o cualquier otro proveedor de SMS, instala WhatsApp en el dispositivo virtual y regístralo por SMS.
En uno de los próximos lanzamientos de Botium, el paso de registro también será automatizado por Botium Box.
Ahora que tus dispositivos están en funcionamiento y WhatsApp disponible, veamos qué más preparar.
Conectar Botium a WhatsApp
Necesitas una instalación de Botium Box para este propósito. Los ingenieros de DevOps experimentados pueden probar Botium Core, la biblioteca de automatización de código abierto y gratuita que alimenta a Botium Box y otros productos de Botium.
Obtén tu copia de Botium Box aquí.
Conectar Device Lab a Botium
En la configuración de Botium Box, registra un nuevo proveedor de dispositivos.
Cuéntale a Botium sobre el dispositivo
Si bien para la mayoría de los proveedores de dispositivos en la nube, los dispositivos disponibles se pueden enumerar automáticamente (llamando a las API de listas de dispositivos en la nube), esto no es posible para tu instalación local de Appium. Edita el archivo LOCALSELENIUM.json en la carpeta de recursos de Botium Box para informar a Botium sobre los dispositivos disponibles:
[ { "name": "Samsung Galaxy S8 Emulator", "value": { "type": "MOBILEAPP", "capabilities": { "appium:platformName": "Android" } } } ]
Redactar un conjunto de dispositivos
Botium Box agrupa los dispositivos en los que desea ejecutar tus pruebas en conjuntos de dispositivos. Crea un nuevo conjunto de dispositivos para tu terminal de Appium y selecciona el emulador Samsung Galaxy S8 (y tal vez otros dispositivos también si los conectó).
Configurar el conector de Botium para Appium
Registra un nuevo chatbot en Botium Box
- Como tecnología Connector/Chatbot, usa WebdriverIO (Selenium o Appium).
- Como tecnología de automatización, seleccionae Use Appium.
- Como Webdriver Script, elige Whatsapp.
Como desarrollador experimentado de Appium, puedes preguntar ¿Dónde puedo ingresar los selectores de CSS de Selenium? — con Botium no tienes que hacer esto, ya que es parte de Webdriver Script Whatsapp.
En el último paso del Asistente de inicio rápido, asegúrate de seleccionar tu dispositivo configurado en la parte inferior para comenzar tus pruebas.
Escribir casos de prueba
Ahora puedes utilizar toda la potencia de BotiumScript para escribir tus casos de prueba. Uno fácil podría verse así:
hi#me hi#bot Welcome to the World Health Organization
Mira Botium Automatizando Whatsapp
- Abre la aplicación WhatsApp.
- Selecciona el contacto que representa al chatbot.
- Limpia el historial de mensajes.
- Envía un mensaje de prueba desde WhatsApp.
- Recibe la salida de WhatsApp y comparar con el caso de prueba.
- Repite los dos últimos pasos hasta que el caso de prueba esté listo.
Botium Automatizando Whatsapp
Conclusión
Con Botium Box y Appium ahora es posible ejecutar pruebas automatizadas end-to-end del flujo de conversación de tu chatbot de WhatsApp.