payment gateway testing
La guida del tester al test del gateway di pagamento:
Quali sono i processori di pagamento?
Secondo Wikipedia, “Un elaboratore di pagamenti è una società (spesso una terza parte) nominata da un commerciante per gestire le transazioni da vari canali come carte di credito e carte di debito per le banche acquirente di commercianti. Il processore di pagamento controllerà i dettagli ricevuti inoltrandoli alla rispettiva banca emittente o associazione della carta per la verifica, ed eseguirà anche una serie di misure antifrode contro la transazione. '
Alcuni gateway di pagamento comuni sono Braintree, Authorize.net, PayPal, Bluepay, Citrus Payments ecc.
C'è molta letteratura disponibile online e offline sui gateway di pagamento e la relativa terminologia.
In questo tutorial, ho cercato di semplificare alcune di queste informazioni e ho provato ad aggiungere le mie esperienze.
Lettura consigliata => Test di applicazioni di investment banking
Durante il mio primo progetto, non avevo idea di come testare correttamente un file casello stradale . Ho imparato gradualmente e ho lavorato per implementare con successo le integrazioni di PayPal, Braintree e Authorize.net con le nostre applicazioni di e-commerce.
Discuteremo la terminologia comune, comprenderemo il flusso delle transazioni end to end e consigli utili e best practice.
Cosa imparerai:
- Terminologia del gateway di pagamento
- Differenza tra gateway di pagamento e processori di pagamento
- Flusso di transazione
- Perché dobbiamo testare i gateway di pagamento?
- Tipi di test richiesti
- Consigli utili
- Elenco di controllo e casi di test del gateway di pagamento
- Impostazione della sandbox: esempio di pagamenti Braintree
- Conclusione
- Lettura consigliata
Terminologia del gateway di pagamento
Parliamo di alcuni termini che utilizzeremo in questo articolo:
1) Commerciante - Un commerciante è una persona o un'azienda che vende prodotti o servizi. Flipkart, Amazon, eBay sono alcuni esempi di commercianti.
2) Carta di credito - Una carta di plastica che può essere utilizzata per acquistare prodotti o servizi tramite un conto di credito. Ha un numero di carta di 16 cifre, una data di scadenza, un ologramma, una banda magnetica, un pannello per la firma e un numero di valore di verifica della carta (CVV).
Parte anteriore della carta di credito:
Retro della carta di credito:
(Fonte: about.com)
3) Banca acquirente - La banca acquirente è un istituto finanziario che gestisce il conto bancario del commerciante e consente a un commerciante di accettare ed elaborare transazioni con carte di debito e / o di credito nel proprio negozio.
4) Banca emittente - La banca emittente è l'istituto finanziario che emette la carta di credito o di debito del cliente. Ogni volta che un cliente utilizza una carta di credito o di debito per effettuare un acquisto, la banca emittente approva o rifiuta la transazione in base allo stato del conto del titolare della carta e trasmette tali informazioni alla banca acquirente.
Per esempio, la transazione verrà rifiutata se la data di scadenza della carta non è corretta o se l'importo dell'acquisto è superiore al limite di credito della carta, ecc.
5) Transazione - Il processo end to end attraverso il quale il commerciante riceve i fondi per una transazione con un cliente.
6) Autorizzazione - L'autorizzazione è richiesta quando un cliente effettua un acquisto. Questa autorizzazione viene fornita dalla banca emittente del cliente e conferma la validità del titolare della carta, la capacità di pagare e la presenza di fondi sufficienti, ecc. Una volta completata, i fondi vengono trattenuti e il saldo viene detratto dal limite di credito del cliente ma non lo è ancora trasferito all'account commerciante.
7) Cattura - In questa azione, il commerciante raccoglie le informazioni di pagamento relative al cliente e invia una richiesta di pagamento / acquisizione al processore. Il processore utilizza queste informazioni per avviare il trasferimento di fondi tra il conto della carta del cliente e il conto bancario del commerciante.
Leggi anche => Test di applicazioni bancarie
Differenza tra gateway di pagamento e processori di pagamento
C'è molta letteratura disponibile online a riguardo e se il gateway di pagamento e il processore di pagamento sono moduli distinti con funzionalità distinte.
Nel corso dei miei progetti, ho osservato che il processore di pagamento e i gateway di pagamento vengono utilizzati in modo intercambiabile senza alcuna distinzione effettiva. I commercianti di solito fanno riferimento ai 'gateway di pagamento' come processori di pagamento poiché elaborano tutti i pagamenti.
I 'processori di pagamento' si considerano gateway di pagamento in quanto agiscono come mezzo per elaborare e completare la transazione di pagamento sicura.
Flusso di transazione
Il diagramma di flusso seguente riepiloga il flusso completo dal momento in cui un cliente effettua un ordine fino al completamento o al rifiuto dell'ordine.
Se un cliente desidera annullare l'ordine, il seguente è il flusso:
La differenza tra un annullamento e un reso dipende dal fatto che una transazione venga acquisita o meno.
Un pagamento non regolato può essere annullato, il che significa che i fondi trattenuti vengono riaccreditati sul conto del titolare della carta. Se una transazione è già stata regolata o acquisita, viene avviato un rimborso, il che significa che i fondi vengono prelevati dal conto commerciante e riaccreditati sul conto del titolare della carta.
miglior downloader gratuito di YouTube per pc
Perché dobbiamo testare i gateway di pagamento?
Se dovessimo fare acquisti in un vero e proprio negozio di mattoni e malta, dovremmo pagare in contanti o far scorrere la nostra carta (di credito o di debito) attraverso la macchina durante il checkout per completare la transazione.
Se si utilizzano carte di credito o di debito, il POS ( Test del punto vendita ) indica se l'elaborazione del pagamento verrà approvata o rifiutata.
Allo stesso modo, durante le transazioni online, dobbiamo disporre di un sistema comparabile, che approva o disapprova immediatamente una transazione.
Dal punto di vista del cliente, l'elaborazione dei pagamenti online sul sito web di e-commerce dovrebbe essere fluida. Il cliente fa clic sul pulsante 'Paga adesso' e dovrebbe visualizzare il messaggio di pagamento riuscito o rifiutato nei prossimi secondi.
Dal punto di vista del negozio di e-commerce, il commerciante deve garantire che il ciclo di pagamento completo (acquisizione delle transazioni dal negozio online, acquisizione e autorizzazione, rimborso, annullamento) funzioni correttamente. Se uno di questi sottocomponenti non funziona come previsto, può essere un problema per il commerciante.
Dal punto di vista del commerciante, la fase di test consente loro di abituarsi al flusso del processore di pagamento scelto e di valutare se l'opzione scelta è effettivamente la soluzione migliore per la loro applicazione e attività.
Tipi di test richiesti
A seconda della scelta del processore di pagamento e dei requisiti del prodotto / applicazione, potrebbe essere necessario eseguire i seguenti tipi di test
- Test funzionali - I test funzionali sono necessari per i gateway di pagamento più recenti e meno consolidati per garantire che l'applicazione si comporti come dovrebbe, ovvero gestisca ordini, calcoli, tasse, ecc. Esattamente come dovrebbe. Per processori di pagamento più affermati, questo tipo di test potrebbe non essere richiesto.
- Test d'integrazione - Il test di integrazione è fondamentale durante l'integrazione con un gateway di pagamento. In qualità di tester, dovresti verificare che l'integrazione del tuo sito web / negozio online / applicazione funzioni correttamente con i gateway di pagamento scelti. In qualità di tester è necessario verificare l'intero flusso di transazione:
- Invia ordine
- Controlla se i fondi vengono ricevuti nell'account commerciante
- Verifica se la transazione può essere rimborsata o annullata correttamente
- Test delle prestazioni - È essenziale testare le prestazioni del sito Web / negozio online / applicazione. Il processore di pagamento non dovrebbe fallire se più utenti stanno tentando di completare le transazioni allo stesso tempo.
- Test di sicurezza - Durante una transazione, un cliente fornirà informazioni sensibili come il numero della carta di credito, il numero CVV ecc. È molto importante assicurarsi che tutte le informazioni sensibili vengano trasmesse dopo la crittografia e che il canale sia sicuro.
Consigli utili
Sulla base della mia esperienza personale, i seguenti sono alcuni suggerimenti utili per i tester:
# 1) Verificare se è disponibile un ambiente sandbox gratuito (a scopo di prova ed esplorativo) per il gateway di pagamento che deve essere testato o implementato. Avere una sandbox disponibile è sicuramente utile e offre al team quella flessibilità extra per personalizzare lo strumento e testare in profondità come richiesto.
#Due) Assicurati che la transazione sia testata dall'inizio alla fine. Nei nostri progetti, abbiamo testato e segnalato numerosi bug relativi all'acquisizione e al flusso di dati dall'applicazione al gateway di pagamento. Alcuni dei bug specifici erano:
- Le informazioni sul nome del cliente (acquirente) non venivano acquisite correttamente
- La data di scadenza della carta di credito del cliente veniva acquisita in modo errato a causa di una funzione errata che causava il rifiuto delle transazioni da parte della banca emittente a causa di informazioni sulla carta di credito errate.
- Transazione duplicata visualizzata nel processore di pagamento
# 3) Ricerca i limiti delle sandbox del gateway di pagamento.
Per esempio, Il sandbox di Authorize.net supporta una valuta per sandbox, quindi se è necessario testare più valute, sarà necessario configurare diversi sandbox. Inoltre, non sarai mai in grado di testare 'veramente' come si comporterà il sistema quando l'account Live Authorize.net elaborerà transazioni multivaluta.
# 4) Se il pagamento non riesce durante una transazione per qualsiasi motivo, deve essere mostrato al cliente un messaggio appropriato. Qualsiasi messaggio di errore troppo tecnico come 'Oggetto non impostato su istanza' o 'Errore 404' può confondere il cliente e influire sull'esperienza dell'utente.
È inoltre una buona idea visualizzare un messaggio generico del tipo 'Sembra che ci siano problemi nell'elaborazione della transazione, contattaci al numero 1-800-800-8000'.
# 5) Ai fini della verifica del rilascio post-produzione, il cliente (proprietario dell'azienda dell'applicazione) dovrebbe creare un account di elaborazione dei pagamenti in tempo reale, impostare il proprio ID commerciante ecc.
A seconda del processore di pagamento scelto, potrebbero essere necessari da 2 giorni a poche settimane per configurare l'account. Questo dovrebbe essere comunicato dal project manager al cliente in anticipo con un tempo sufficiente per configurare l'account live prima che l'applicazione e l'integrazione del processore di pagamento siano attive.
Elenco di controllo e casi di test del gateway di pagamento
Come qualsiasi altra applicazione, testare i processori di pagamento implica una corretta pianificazione dei test.
Il seguente elenco di controllo può essere utile per i tester e potrebbe essere utilizzato come riferimento:
1) Configura la sandbox del processore di pagamento.
miglior software gratuito di backup delle immagini 2017
2) Raccogli i numeri di carta di credito di prova che verrebbero utilizzati per testare diverse carte di credito. Ad esempio, tali informazioni per il processore di pagamento Braintree possono essere trovate su Braintree payments.
3) Verifica il comportamento dell'applicazione quando una transazione ha esito positivo.
4) Dopo che la transazione è andata a buon fine, verifica se il gateway di pagamento ritorna alla tua applicazione per mostrare un qualche tipo di messaggio di transazione / conferma riuscito.
5) Verifica che il cliente riceva una sorta di notifica di conferma della transazione come e-mail di conferma dell'ordine, ecc. Se la transazione ha esito positivo.
6) Controlla cosa succede se un pagamento non riesce o il processore di pagamento smette di rispondere: sono presenti messaggi di errore?
7) Verifica il comportamento dell'applicazione con il blocco popup del browser attivato e disattivato. Ciò può essere utile se nel popup vengono visualizzati messaggi di conferma.
8) Verificare le diverse impostazioni di prevenzione / sicurezza delle frodi.
Ad esempio, se le informazioni di fatturazione del cliente non corrispondono con l'indirizzo fornito alla banca emittente, qualsiasi mancata corrispondenza comporterà il rifiuto della transazione.
9) Verificare le voci di transazione nel database se il tester ha accesso al database dell'applicazione.
10) Controlla cosa succede alla scadenza di una sessione cliente.
undici) Controllare la console durante l'intera transazione e segnalare eventuali errori della console rilevati.
12) Verifica che la transazione venga eseguita su un canale protetto.
Ad esempio, le pagine di pagamento potrebbero essere HTTPS rispetto al resto del sito Web che sono pagine HTTP.
13) Verificare che la valuta del processore di pagamento sia impostata correttamente.
Ad esempio, se l'applicazione / il sito Web è una società / rivenditore canadese, il processore di pagamento deve essere impostato per accettare la valuta CAD.
14) Se le applicazioni hanno più opzioni di pagamento come carta di credito e PayPal insieme, entrambe le opzioni di pagamento devono essere testate individualmente dall'inizio alla fine.
quindici) Verifica che l'importo del rimborso o dell'annullamento (dal portale di amministrazione del processore di pagamento) sia uguale all'importo della transazione. In nessun caso, l'importo del rimborso / annullamento deve superare l'importo della transazione.
Leggi anche => Verifica del sistema bancario al dettaglio
Impostazione della sandbox: esempio di pagamenti Braintree
1) Navigare verso Sito Web di Braintree .
2) Fai clic sul pulsante 'Prova la sandbox'.
(Nota:Fare clic su qualsiasi immagine per ingrandirla)
3) Verrai reindirizzato al sito Web sandbox di Braintree. Compila tutte le informazioni richieste e iscriviti alla sandbox
4) Riceverai una notifica e-mail all'indirizzo e-mail fornito durante la registrazione per quanto riguarda la conferma della creazione dell'account
5) È necessario compilare il modulo delle informazioni utente per elaborare ulteriormente dove ti verrà richiesto di scegliere una password. Fai clic sul pulsante 'Accetta e crea il tuo account'
6) Verrai effettuato l'accesso e reindirizzato al portale di amministrazione di Braintree
7) Prendi nota delle chiavi Sandbox e usale nell'applicazione per integrarle con questa sandbox Braintree.
8) Al termine dell'integrazione, la sandbox è pronta per l'uso. Se è necessario aggiornare le impostazioni della sandbox, è possibile farlo utilizzando il menu delle impostazioni.
Opzione di menu delle impostazioni di uso comune:
Conclusione
Il processore di pagamento è un componente molto importante per qualsiasi applicazione di e-commerce progettata per accettare pagamenti dai suoi clienti. Pertanto è essenziale testare a fondo questo componente. Qualsiasi scenario mancato può influire sulle vendite / transazioni del venditore e influire negativamente sull'esperienza utente per il cliente o l'acquirente.
I tester devono preparare o configurare l'ambiente di test (sandbox, raccogliere informazioni sulla carta di credito fittizia, codici di risposta, ecc.) E formulare una strategia di test, sia per l'ambiente di test che per i test di rilascio live / post produzione.
Riguardo a autore: Questo utile articolo è stato scritto da Neha. Attualmente lavora come Quality Assurance Manager ed è specializzata nella guida e nella gestione di team QA interni e offshore.
Hai domande o vuoi condividere la tua esperienza sul test del gateway di pagamento? Fateci sapere nei commenti qui sotto.
Lettura consigliata
- Alpha test e beta test (una guida completa)
- Migliori strumenti di test del software 2021 [Strumenti di automazione del test QA]
- Test funzionale vs test non funzionale
- Perfect Software Testing Resume Guide (con esempio di curriculum per Software Tester)
- Guida completa al test di verifica della costruzione (test BVT)
- SalesForce Testing Guida per principianti
- Download dell'eBook Testing Primer
- 68 Risorse essenziali per essere un tester di successo (da non perdere!)