Tutorial di test su Salesforce per principianti
โก Riepilogo intelligente
Salesforce Testing spiega come i team di QA convalidano il codice Apex personalizzato, i flussi dell'interfaccia utente Lightning, le integrazioni e le funzionalitร di Einstein AI all'interno del CRM cloud leader a livello mondiale, evitando al contempo la trappola di testare il comportamento predefinito della piattaforma in ambienti di test.

Che cosa รจ Salesforce?
Salesforce รจ il primo sistema CRM basato su cloud al mondo. ร stato fondato da Marc Benioff e Parker Harris nel marzo del 1999. Lo scopo di questa piattaforma CRM รจ aiutare gli utenti a vendere, fornire assistenza, commercializzare, analizzare e connettersi con i propri clienti in modo conveniente attraverso tutti i canali.
SFDC (Sales Force Dot Com) include funzionalitร standard che consentono di gestire le relazioni con potenziali clienti e clienti acquisiti. Permette inoltre di interagire e collaborare con dipendenti e partner, archiviando i dati in modo sicuro nel cloud multi-tenant. Oggi comprende Sales Cloud, Service Cloud, Marketing Cloud, Data Cloud e la piattaforma Einstein 1 che alimenta le funzionalitร di intelligenza artificiale generativa.
Salesforce CRM รจ basato su un linguaggio di sviluppo di piattaforma chiamato APEX. I test di Salesforce consentono di verificare che la configurazione e il codice siano funzionali. Questo CRM mi ha permesso di migliorare la fedeltร , la fidelizzazione e la soddisfazione dei clienti, puntando a creare connessioni durature.
Che cos'รจ Salesforce Testing?
Uno dei grandi vantaggi di Salesforce รจ che la maggior parte delle funzionalitร predefinite possono essere personalizzate per adattarsi alle esigenze di un'azienda. Il testing di Salesforce consiste nella convalida della configurazione e della personalizzazione eseguite nella versione standard di SFDC, incluse le classi Apex, i componenti web Lightning, i flussi, Process Builder e le integrazioni.
La sfida consiste nell'assicurarsi che il tester verifichi il codice personalizzato e non le funzionalitร integrate di Salesforce, che Salesforce giร gestisce nel suo processo di approvazione e rilascio.
Salesforce CRM รจ costruito su un linguaggio di piattaforma chiamato Apex, completata da Lightning Web Components (LWC) sul front-end. La piattaforma include un framework di test unitari integrato che consente agli sviluppatori di convalidare il proprio codice prima della distribuzione.
Perchรฉ testare Salesforce?
Ecco i motivi principali per cui ritengo che i test su Salesforce siano necessari:
- Verifica che la configurazione e il codice Apex siano funzionanti dopo ogni aggiornamento della sandbox.
- Verifica che il sistema finale supporti i processi aziendali del cliente in ogni loro fase.
- Conferma che la build iniziale soddisfa i requisiti concordati prima della messa in produzione.
- Permette di individuare i problemi in fase iniziale, quando sono facili ed economici da risolvere.
- I report sul flusso funzionale basati sullo stato dei casi di test aiutano il team a mappare le funzionalitร dell'applicazione.
- Le funzionalitร Flow Builder e Process Builder possono essere validate in base alle condizioni operative e al comportamento.
- I flussi di lavoro consentono di verificare la funzionalitร degli eventi basati sul tempo, come ad esempio le regole di escalation.
Terminologia di Salesforce
- Esperienza Lightning: L'interfaccia utente predefinita di Salesforce, basata su Lightning Web Components, รจ attualmente in fase di dismissione e la maggior parte delle organizzazioni sta migrando a Lightning.
- Forza visiva: Un framework legacy per la creazione di interfacce utente personalizzate con un linguaggio di markup basato su tag simile all'HTML, ancora supportato per le personalizzazioni meno recenti.
- AppExchange: Il marketplace online di Salesforce dove gli utenti possono scoprire e installare applicazioni ed estensioni personalizzate.
- Apice: Un linguaggio fortemente tipizzato e orientato agli oggetti, utilizzato per eseguire istruzioni di controllo del flusso e delle transazioni sulla piattaforma Salesforce.
- Piattaforma Einstein 1 / Agentforce: Il livello di intelligenza artificiale di Salesforce per funzionalitร predittive e generative e agenti autonomi che devono essere convalidati anche dal team di controllo qualitร .
Tipi di test di Salesforce
Test manuale
Il test manuale del software copre l'app Salesforce.com utilizzando metodi tradizionali. Il team di QA puรฒ utilizzare il test manuale per eseguire test funzionali, test di funzionamento, test di integrazione, test di regressione e test di sistema sia su Lightning Experience che su Salesforce Mobile.
Test automatizzati
I test automatizzati utilizzano un programma per testare un'app Salesforce.com o Force.com. Gli strumenti di automazione piรน comuni includono: Selenium, Provar, Copado Test robotici, Tricentis Automazione dei test per Salesforce e Testsigma. Le architetture moderne integrano sempre piรน localizzatori auto-riparanti basati sull'intelligenza artificiale per assorbire le modifiche del Lightning DOM.
Livelli di test in Salesforce
In questo tutorial sui test di Salesforce, si applicano in genere i seguenti livelli:
Test unitari
- Condotti da sviluppatori Apex, che scrivono metodi di test per mettere alla prova le loro classi e i loro trigger.
- Valuta quanti record di dati sono interessati, in modo che il codice venga eseguito in modo affidabile nell'ambiente di destinazione.
- Per implementare il codice Apex in produzione, la copertura complessiva del codice deve essere almeno del 75% e ogni trigger deve avere una copertura di almeno l'1%.
Test di sistema:
- Eseguito da un team di consulenti Salesforce.
- Verifica i processi tecnici del sistema dall'inizio alla fine.
- Utilizza script di test basati su specifici risultati attesi.
- Risolve i problemi relativi alle regole automatizzate, come i processi di flusso di lavoro, convalida, assegnazione e approvazione.
Test UAT:
- Condotto dagli utenti aziendali che utilizzeranno l'applicazione quotidianamente.
- Verifica la capacitร del sistema di supportare i processi aziendali.
- Segue script di test basati su scenari aziendali reali.
- L'obiettivo desiderato รจ ottenere la conferma da parte del cliente che il sistema รจ idoneo allo scopo.
Test di produzione:
- Ripetizione dei test di sistema nell'ambiente di produzione.
- Verifica che la configurazione e il codice siano stati correttamente distribuiti dall'ambiente di test a quello di produzione.
- Se il tempo lo consente prima del lancio, il cliente dovrebbe eseguire nuovamente gli script UAT dopo la distribuzione.
Test di regressione:
- L'obiettivo principale di test di regressione L'obiettivo รจ determinare se le nuove versioni influiscono sui processi utente esistenti.
- Viene eseguito dopo ogni miglioramento, correzione o rilascio stagionale di Salesforce (primavera, estate, inverno).
- L'utente fornisce un elenco di modifiche che potrebbero avere un impatto sui processi correnti, in modo che i flussi interessati possano essere nuovamente convalidati.
Processo di test di Salesforce
Il processo di test di Salesforce รจ simile al test di qualsiasi altra applicazione web. Il tester deve avere una chiara visione delle funzionalitร personalizzabili create durante il progetto, in modo che l'attenzione rimanga sul codice personalizzato piuttosto che sulle funzionalitร integrate di Salesforce.
Gli sviluppatori e i tester devono utilizzare ambienti Sandbox (Developer, Developer Pro, Copia parziale, Completa) per le rispettive attivitร . Il codice testato nell'ambiente Sandbox viene poi promosso in produzione tramite set di modifiche, Salesforce DX o strumenti DevOps come Copado e Gearset. Si presume che il tester QA conosca la terminologia principale di Salesforce prima di unirsi al progetto.
Sfide di test di Salesforce
Il processo di test su Salesforce non รจ semplice. I tester si trovano ad affrontare numerose sfide, tra cui:
- Testare funzionalitร avanzate come Lightning Web Components, Visualforce, Service Cloud Console e i siti di Experience Cloud รจ complesso.
- Spesso i team hanno bisogno di ricreare o rielaborare i test classici preesistenti per Lightning Experience e l'app mobile di Salesforce.
- Alcune funzionalitร standard non possono essere rimosse nemmeno quando non vengono utilizzate.
- I test dell'interfaccia utente possono smettere di funzionare quando gli ambienti di test vengono aggiornati o quando vengono rilasciati aggiornamenti stagionali.
- I test automatizzati devono essere eseguiti in modo coerente in tutti gli ambienti sandbox.
- Creare localizzatori di campi stabili รจ difficile perchรฉ gli ID degli elementi di Salesforce differiscono tra le organizzazioni e cambiano a ogni rilascio.
- La convalida di funzionalitร di intelligenza artificiale come le previsioni di Einstein e gli agenti di Agentforce richiede nuovi approcci basati sui dati e sui prompt.
migliori pratiche per i test di Salesforce
- Eseguire i test utilizzando profili utente e set di autorizzazioni reali.
- Preparare dati di test che convalidino la funzionalitร dei report e delle dashboard.
- Integrare test funzionali, di interfaccia utente, di regressione e di integrazione di sistema in ogni ciclo di rilascio.
- Presta particolare attenzione alla natura dinamica delle pagine Lightning e Visualforce, poichรฉ gli elementi potrebbero non caricarsi simultaneamente; utilizza tempi di attesa espliciti.
- L'automazione dovrebbe essere eseguita con strumenti come Selenium, Provar, Tricentis, o Testsigma, abbinato a localizzatori autoriparanti.
- In ogni scenario di test, รจ necessario considerare sia i flussi positivi che quelli negativi.
- Crea ruoli utente, profili e set di autorizzazioni nei dati di test in modo che i flussi di lavoro possano essere convalidati per ogni persona.
Ruoli e responsabilitร di un tester Salesforce
Tra i ruoli e le responsabilitร principali dei tester di Salesforce figurano:
- Eseguire test di base per confermare che tutte le funzionalitร principali funzionino come richiesto.
- Creazione di scenari di test sia positivi che negativi.
- Esecuzione della partizione di equivalenza e dell'analisi dei valori limite.
- Lavorare con l'applicazione per comprenderne le funzionalitร e costruire una mappa funzionale.
- Mantenere un canale di comunicazione aperto con il team di sviluppo.
- Comprendere le funzionalitร personalizzabili create per l'organizzazione Salesforce.
- Esecuzione di casi di test basati sui ruoli per garantire la coerenza dei dati.
- Esecuzione di test di compatibilitร quando Salesforce รจ integrato con applicazioni di terze parti.
- Avere familiaritร con strumenti di test di carico come JMeter per convalidare flussi complessi che possono restituire risultati incoerenti.
- Conoscenza pratica di Apex, SOQL e dei componenti Lightning.
Strumenti di automazione dei test di Salesforce
Eseguire test funzionali automatizzati in Salesforce รจ impegnativo perchรฉ la maggior parte delle pagine di test sono dinamiche. I tester devono costruire un framework di automazione robusto che sia utile oggi e resiliente ai futuri aggiornamenti.
Di seguito ho elencato gli strumenti di test Salesforce ampiamente utilizzati che consiglio.
1) Tricentis Testare l'automazione per Salesforce
Apprezzo particolarmente il modo Tricentis Testare l'automazione per Salesforce Accelera lo sviluppo di test UI resilienti per gli ambienti Salesforce. I suoi Smart Locator sono basati sull'intelligenza artificiale per autoripararsi e migliorare automaticamente, riducendo al minimo la manutenzione e garantendo la stabilitร dei test tra le diverse versioni di Lightning.
Caratteristiche:
- Convalida dello scenario end-to-end: I clienti possono convalidare scenari completi end-to-end che vanno dalla loro applicazione web a Salesforce e viceversa.
- Scalabilitร del team agile: I team agili con competenze eterogenee possono scalare le proprie operazioni di test in modo efficiente grazie a funzionalitร che li aiutano a controllare e gestire la crescita dei test e dei team.
- Apex Code Esecuzione per la convalida: Eseguire il codice Apex in una fase di test per convalidare i risultati della query.
- Integrazione del test API: Integra senza problemi i test API con i flussi dell'interfaccia utente.
2) Prova sigma
Prova sigma รจ una piattaforma di automazione dei test senza codice che semplifica i test Salesforce senza richiedere Apex approfonditi o Selenium competenza. Ho trovato il suo approccio intuitivo alla progettazione dei test particolarmente efficace per i team che convalidano le configurazioni Salesforce standard e personalizzate dopo modifiche o implementazioni, eliminando la complessitร dei framework di scripting tradizionali.
Caratteristiche:
- CodeMeno automazione per i flussi dell'interfaccia utente di Salesforce: Crea test Salesforce utilizzando passaggi simili a un linguaggio semplice senza scrivere Apex o Selenium codice. L'ho utilizzato per integrare membri del team con diverse competenze tecniche.
- Test di oggetti e flussi di lavoro personalizzati: Supporto completo per il test di oggetti personalizzati, flussi di lavoro e integrazioni. Questo mi ha permesso di garantire che le configurazioni specifiche dell'organizzazione funzionassero correttamente dopo gli aggiornamenti della piattaforma.
- Capacitร di test basati sui dati: Testare sistematicamente diversi ruoli utente, profili e set di dati si รจ rivelato fondamentale per convalidare il comportamento a vari livelli di autorizzazione.
- Copertura dello scenario end-to-end: Supporta scenari end-to-end completi che includono Salesforce e applicazioni o API esterne.
- Report dettagliati e registri di debug: Genera report e registri completi per identificare rapidamente i problemi introdotti dalle modifiche di Salesforce.
Prova gratuita di 14 giorni
Perchรฉ utilizzare gli strumenti di test di Salesforce
- Ti aiutano a risparmiare fino al 75% del tempo dedicato ai test e una quota significativa dei costi di automazione.
- Offrono una migliore esecuzione dei test Apex, una copertura dei test dettagliata e report sulla copertura delle classi.
- Puoi sfruttare strumenti di automazione leader del settore come Selenium and JMeter.
- Generazione automatica di scenari di test per diversi ambienti e browser.
- Registra e riproduci i tuoi casi di test senza interruzioni.
- Automatizza tutti i tipi di attivitร pre e post-implementazione.
- Separa i dati dallo script di test e arricchiscilo con piรน set di dati.
Esempi di scenari di test di Salesforce
- Caso di prova 01: Acquisire le informazioni di contatto del potenziale cliente o del cliente effettivo.
- Caso di prova 02: I contatti possono essere contrassegnati come attivi o inattivi.
- Caso di prova 03: Un'azienda puรฒ essere contrassegnata come cliente o potenziale cliente.
- Caso di prova 04: I contatti possono essere acquisiti tramite moduli web-to-lead.
- Caso di prova 05: Il prezzo in un preventivo non puรฒ essere zero.
- Caso di prova 06: L'e-mail viene inviata una volta concluso l'affare; le e-mail non recapitate vengono gestite.
- Caso di prova 07: L'integrazione con software di terze parti funziona correttamente.
- Caso di prova 08: BillI servizi funzionano come previsto.
- Caso di prova 09: Nessuna duplicazione dei record nella gestione dei contatti, delle opportunitร e dei lead.
- Caso di prova 10: I flussi di lavoro per dispositivi mobili funzionano come previsto sull'app mobile di Salesforce.
- Caso di prova 11: Gli utenti non autorizzati non possono accedere ai file o ai record riservati.
Come l'IA e Einstein sono Reshaping Test di Salesforce
L'intelligenza artificiale รจ ormai una prioritร assoluta per i test all'interno di Salesforce. La piattaforma Einstein 1 introduce punteggi predittivi, risposte generative e agenti autonomi Agentforce in Sales and Service Cloud, e ciascuna di queste funzionalitร richiede una propria strategia di validazione. I tester dovrebbero progettare casi basati sui dati che verifichino l'accuratezza delle previsioni, la coerenza dei prompt e i meccanismi di controllo, oltre ai tradizionali flussi dell'interfaccia utente.
Per quanto riguarda gli strumenti, i moderni framework di automazione di Salesforce si basano su localizzatori auto-riparanti basati sull'intelligenza artificiale che rilevano le modifiche al Lightning DOM tra le diverse release e riparano automaticamente i selettori. TricentisProvar, Copado Robotic Testing e Testsigma offrono tutti varianti di questa funzionalitร . Abbinale a dati di test sintetici e controlli di regressione visiva per mantenere un'elevata copertura senza aumentare eccessivamente i costi di manutenzione.
Test di Salesforce: sfide dei clienti
I clienti sono spesso preoccupati per i test su Salesforce perchรฉ potrebbero non sapere come eseguirli correttamente, il che genera falsi miti che si discostano dalla realtร .
Qui ci sono alcuni di loro:
| Problemi del cliente | Soluzione |
|---|---|
| Non so come utilizzare il sistema Salesforce. | I clienti devono testare il proprio processo, non la funzionalitร del sistema. |
| Non possiamo effettuare i test se tutti i nostri dati non sono presenti nel sistema. | Per eseguire il test sono sufficienti pochi record campione. |
| Non ho tempo libero per testare e gestire il mio lavoro quotidiano. | Rimani in contatto con il project manager e partecipa alle riunioni di aggiornamento periodiche durante le fasi di progettazione e realizzazione. |




