La presente guida presenta come testare i tempi di caricamento e le performance di un ecommerce PrestaShop, si può eseguire comunque quanto descritto in questa guida su ogni tipologia di sito web, indipendentemente dal CMS in uso. Le prestazioni sono diventate vitali da quanto Google ha introdotto le metriche Web Vitals.

Utilizzare GTmetrix

È sicuramente lo strumento più comodo per effettuare un test delle prestazioni del nostro ecommerce in PrestaShop, purtroppo nella versione gratuita offre poche opzioni e il test viene effettuato dal Canada. È necessario dunque creare un account per poter effettuare il test da una località più vicina, con l'abbonamento gratuito potremo effettuare il test da Londra, sicuramente la scelta più indicata per avere dei dati più corretti. Solo con i piani a pagamento potremo testare il nostro ecommerce da Parigi e Francoforte, avendo dei dati più reali per il mercato di riferimento. 

Vedi: https://gtmetrix.com/locations.html

PrestaShop 1.7.7.8 Performance

Utilizzare GTmetrix ci permette di effettuare anche un monitoraggio delle prestazioni continuativo al fine di scoprire subito eventuali problemi e intervenire. Il servizio offre un insieme di consigli per ottimizzare PrestaShop e qualsiasi sito web e CMS. 

Utilizzare Strumenti per Sviluppatori di Chrome e Lighthouse

Per analizzare al meglio il nostro ecommerce è bene utilizzare gli strumenti per sviluppatori messi a disposizione da Google Chrome (già visti nella guida sulla verifica responsive), questo stumento è in assoluto il migliore a disposizione per questo tipo di attività, unitamente a una VPN che ci permetta di testare l'ecommerce anche da località estere, diventa uno strumento imbattibile.

Scheda Rete (Network)

Questa scheda di Strumenti per Sviluppatori è, dopo Console, la più utile in assoluto, permette di vedere in tempo reale cosa accade mentre carichiamo il nostro ecommerce in PrestaShop. Ci permette di riconoscere eventuali problemi dovuti a moduli o servizi esterni (facebook pixel, recensioni verificate, ecc...) e di vederne l'impatto sulle prestazioni del nostro Sito Web. Come già spiegato in un mio vecchio articolo - Perché rincorrere google page speed insights è un errore e una perdita di tempo per il tuo ecommerce? - l'impatto dei servizi esterni può essere molto elevato, molti infatti vengo serviti da server USA e ne pagano la latenza. 

Prima di tutto questo tipo di test è molto importante effettuarlo con navigazione in incognito. (Ctrl+Shift+N su Windows o cmd+shift+n su Mac)

Accediamo dunque agli Strumenti per Sviluppatori nelle seguenti modalità:

  • Tramite scorciatoia da tastiera: Ctrl+Maiusc+I
  • Tasto destro del mouse sulla pagina e click su "Ispeziona".
  • Dal menu di Chrome in alto a destra, selezionando:
    Altri Strumenti -> Strumenti per Sviluppatori.

Una volta aperto lo strumento, basterà posizionarsi su "Rete" (o Network se visualizzato in Inglese). Ricarichiamo la nostra pagina e vedremo comparire i vari elementi, a mano a mano che saranno visualizzati. Facciamo più test per ogni pagina, semplicemente ricaricando la stessa più volte. Risultati diversi sono dovuti all'intervento della cache o momenti di carico differenti, sia del nostro server che dei server remoti dai quali sono serviti servizi esterni come Google Analytics, Facebook Pixel, CDN per le immagini, ecc...

Test velocità sito

Utilizzare Lighthouse

Lighthouse è un estensione installabile in Google Chrome, per installarla clicca qui! Una volta installata, ci basterà aprire Strumenti per Sviluppatori, e troveremo la scheda "Lighthouse".

Genera Rapporto Lighthouse

Questo strumento che è lo stesso usato da PageSpeed Insights di Google ci offre diverse metriche e consigli utili per migliorare il nostro sito, dandoci un punteggio che in realtà è il dato meno interessante.

È possibile arrivate a 100?

La domanda corretta ne vale la pena? Quando un ecommerce in PrestaShop ha un tempo TTFB inferiore ai 200ms, rientra nelle metriche Web Vitals e si carica in meno di 1.4s o meno. Nelle immagini in esempio è stato usato un installazione pulita di PrestaShop 1.7.7.8 il cui caricamento completo è inferiore a 800ms e malgrado questo il punteggio è di poco superiore a 80.

È un punteggio non un indice di performance

Si può andare oltre? Si con piccole modifiche possiamo arrivare a 90, con una customizzazione del template e ottimizzazione del database si arriva anche a 100, ma l'investimento in ore lavoro e le rinunce da effettuare (nessun Page Builder, nessun JS esterno) rendono la soluzione praticamente troppo costosa a fonte di un miglioramento reale praticamente nullo, o quasi. 

Come un auto da corsa, le prestazioni pure si ottengono riducendone il più possibile il peso.

Basta solo effettuare lo stesso test su grandi ecommerce per esempio Amazon.com per notare che nemmeno loro investono per raggiungere punteggi elevanti in questa metrica, se pur 0.1 ms di tempo di caricamento in meno per loro significano centinaia di migliaia di euro di fatturato in più. Infatti investono il tempo sulle metriche Web Vitals e sui tempi di caricamento bilanciando le esigenze con le prestazioni. 

Eseguire più test

Indipentendetemete dallo strumento utilizzato come si faceva nei laboratori durante le lezioni di fisica, per un'analisi accurata si devono eseguire più misurazioni e nel nostro caso pure dilazionate nell'arco della giornata. Questo aiuta a ridurre l'errore e avere una visione più completa delle prestazioni del nostro ecommerce in PrestaShop. 

Errori da evitare

Esistono molti servizi online gratuiti che permettono di testare il nostro ecommerce in PrestaShop, ma si deve prestare attenzione riguardo la località da cui sono eseguiti i test alle metriche mostrate: sono indicazioni che vanno interpretate.

1. Prestare attenzione alla località

Se il nostro ecommerce è localizzato per il mercato Italiano o Europeo, il server dove è ospitato sarà ubicato fisicamente in Italia o in altra nazione europea. Di conseguenza se effettuiamo un test anche con servizi validi come GTmetrix, ma dal Canada i risultati saranno sfalsati dalla latenza della connessione, ovvero dalla distanza del Canada rispetto alla posizione del nostro Server. Anche la velocità della luce, presenta i suoi limiti quando le distanze sono considerevoli. 

2. Scambiare un punteggio per un indice di prestazione.

Uno dei test più comuni riguarda l'uso di PageSpeed Insights di Google. È importante premettere due importanti considerazioni a riguardo, la prima è che si tratta di un punteggio inerente all'adozione di determinate tecnologie e non un indice di prestazione, la seconda è che lo stesso risultato si basa su Lighthouse, quindi è da prendere in cosiderazione l'uso diretto dell'estenzione per Chrome, per avere un risultato più reale. 

Load Test PrestaShop con Siege

È possibile eseguire un vero e proprio benchmark e load test HTTP a riga di comando con Siege, installabile nelle distribuzioni Linux. Questo test è da effettuarsi con molta attenzione e con il permesso del provider dove è ospitato il nostro sito web. Infatti potrebbe essere scambiato per un attacco Denial of service (DDoS), nelle nostre FAQ potete trovare informazioni su questo tipo di test. Il test mostra le prestazioni del nostro eccommerce in PrestaShop nel rispondere a più connessioni contemporanee.

Autore: Loris Modena

SENIOR DEVELOPER

Per Ind Loris Modena titolare di Arte e Informatica, inizia a lavorare nel settore informatico nel 1989 quale sistemista addetto alla manutenzione e installazione di sistemi informatici. Inizia a programmare per il web nel 1997 occupandosi di programmazione CGI in PERL e successivamente passando alla programmazione in PHP e JavaScript. In questo periodo si avvicina al mondo Open source e alla gestione di server Linux. 

prodotto aggiunto alla lista