Panorama de CRM y Salesforce

Los sistemas CRM gestionan el ciclo de vida completo del cliente — desde el primer contacto hasta la venta, soporte y renovación. Salesforce domina el mercado CRM con una plataforma que combina funcionalidad estándar con un potente motor de customización.

Arquitectura de Salesforce

  • Salesforce Clouds: Sales Cloud, Service Cloud, Marketing Cloud, Commerce Cloud
  • Modelo de Datos: Objetos estándar (Lead, Account, Contact, Opportunity, Case) más objetos custom
  • Apex: Lenguaje propietario de Salesforce (similar a Java) para lógica custom
  • Lightning: Framework UI moderno que reemplaza Visualforce
  • Flows: Automatización no-code/low-code
  • AppExchange: Marketplace de aplicaciones y componentes de terceros

Conceptos Centrales CRM

graph LR A[Captura de Lead] --> B[Scoring] B --> C[Reglas de Asignación] C --> D[Calificación] D --> E[Convertir a Account + Contact + Opportunity] E --> F[Gestión de Pipeline] F --> G[Ganada/Perdida]

Áreas de Enfoque del Testing CRM

Testing de Gestión de Leads

  • Captura de leads: Formularios web, integración de email, imports API, entrada manual
  • Scoring de leads: Puntuación automática basada en engagement y demografía
  • Reglas de asignación: Leads dirigidos al representante correcto por territorio
  • Deduplicación: Sistema detecta y fusiona leads duplicados
  • Conversión: Lead se convierte en Account + Contact + Opportunity

Testing de Pipeline de Oportunidades

  • Progresión de etapas: Prospección → Calificación → Propuesta → Negociación → Cerrada
  • Cálculos de probabilidad y revenue esperado por etapa
  • Campos requeridos por etapa
  • Seguimiento de fecha de cierre y precisión del forecast

Reportes y Dashboards

  • Filtros de reporte retornan datos correctos
  • Gráficos de dashboard representan datos subyacentes con precisión
  • Reportes cross-objeto unen datos correctamente

Testing Específico de Salesforce

Reglas de Validación

ReglaCondiciónError Esperado
Teléfono requeridoTeléfono vacío cuando Status = “Contactado”“Número de teléfono requerido para leads contactados”
Formato emailEmail no coincide con patrón regex“Ingrese un email válido”
Fecha cierre futuraFecha de cierre en el pasado para oportunidades abiertas“Fecha de cierre debe ser futura”
Cross-fieldDescuento > 30% y Approval Status != “Aprobado”“Descuentos mayores a 30% requieren aprobación”

Testing de Triggers Apex

  • Before triggers: validar o modificar datos antes de guardar
  • After triggers: acciones después de guardar (crear registros relacionados)
  • Operaciones bulk: triggers deben manejar 200+ registros (governor limits)
  • Prevención de recursión

Testing Avanzado de Salesforce

Salesforce DX y CI/CD

  • Testear deployment de metadata desde control de versiones
  • Verificar creación de scratch orgs e instalación de paquetes
  • Automatizar ejecución de tests Apex en pipeline CI
  • Testear cobertura de código cumple requisito mínimo del 75%

Testing de CPQ

  • Reglas de configuración de productos
  • Cálculos de precios (descuentos por volumen, multi-moneda)
  • Generación de cotizaciones (PDF, flujos de aprobación)
  • Precios de suscripción (mensual/anual, prorrateo, renovación)

Testing de Integración

  • Integraciones REST/SOAP API con sistemas externos
  • Mensajes outbound y platform events
  • Sincronización de datos con ERP y sistemas de marketing
  • Integración SSO/SAML para autenticación

Ejercicio Práctico

Diseña casos de prueba para un flujo lead-to-cash:

  1. Captura de lead: Envío de formulario web crea lead con mapeo correcto
  2. Auto-asignación: Lead asignado al rep correcto por reglas de territorio
  3. Scoring: Actividades de engagement aumentan score; umbral dispara alerta
  4. Conversión: Lead se convierte a Account + Contact + Opportunity sin pérdida de datos
  5. Etapas de oportunidad: Progresar por cada etapa, verificar campos requeridos
Guía de Solución

Tests de captura:

  • Enviar formulario con campos requeridos → lead creado con valores correctos
  • Enviar con email existente → detección de duplicados se activa
  • Enviar con email inválido → error de validación mostrado

Tests de conversión:

  • Convertir lead sin account existente → nuevos Account, Contact, Opportunity
  • Convertir con account existente → Contact agregado a Account existente
  • Verificar mapeos de campos custom correctos

Tips Profesionales

  1. Testea con volúmenes de datos realistas — los governor limits se comportan diferente a escala
  2. Verifica que las reglas de validación se ejecuten en orden correcto y no conflicten
  3. Testea el proceso de refresh de sandboxes — sandboxes obsoletos causan inconsistencias
  4. Siempre testea como diferentes perfiles de usuario — la seguridad a nivel de campo varía por perfil
  5. Automatiza testing de regresión con herramientas como Provar, Copado o Salesforce CLI

Conclusiones Clave

  1. El testing CRM se enfoca en la precisión de flujos de trabajo e integridad de datos en el ciclo del cliente
  2. Los governor limits de Salesforce hacen esencial el testing a escala
  3. El testing de acceso basado en roles es crítico — diferentes usuarios deben ver diferentes datos
  4. Las automatizaciones de Salesforce deben testearse por interacciones y conflictos