payment gateway testing
Der Tester-Leitfaden zum Testen von Zahlungsgateways:
Was sind die Zahlungsabwickler?
Laut Wikipedia, „Ein Zahlungsabwickler ist ein Unternehmen (häufig ein Dritter), das von einem Händler beauftragt wird, Transaktionen aus verschiedenen Kanälen wie Kreditkarten und Debitkarten für Händler abzuwickeln, die Banken erwerben. Der Zahlungsabwickler überprüft sowohl die erhaltenen Daten, indem er sie zur Überprüfung an die ausstellende Bank oder den Kartenverband der jeweiligen Karte weiterleitet, als auch eine Reihe von Betrugsbekämpfungsmaßnahmen gegen die Transaktion. “
Einige gängige Zahlungsgateways sind Braintree, Authorize.net, PayPal, Bluepay, Citrus Payments usw.
Es gibt eine Menge online und offline verfügbarer Literatur zu Zahlungsgateways und verwandten Begriffen.
In diesem Tutorial habe ich versucht, einige dieser Informationen zu vereinfachen und meine Erfahrungen hinzuzufügen.
Empfohlene Lektüre => Testen von Investment Banking-Anwendungen
Während meines ersten Projekts hatte ich keine Ahnung, wie man a richtig testet Zahlungs-Gateways . Ich habe nach und nach gelernt und daran gearbeitet, PayPal-, Braintree- und Authorize.net-Integrationen erfolgreich in unsere E-Commerce-Anwendungen einzuführen.
Wir werden die gängige Terminologie diskutieren, den gesamten Transaktionsfluss sowie nützliche Tipps und Best Practices verstehen.
Was du lernen wirst:
- Zahlungsgateway-Terminologie
- Unterschied zwischen Zahlungsgateway und Zahlungsabwicklern
- Transaktionsablauf
- Warum müssen wir Payment Gateways testen?
- Arten von Tests erforderlich
- Hilfreiche Tipps
- Checkliste und Testfälle für Payment Gateway-Tests
- Einrichten der Sandbox: Beispiel für Braintree-Zahlungen
- Fazit
- Literatur-Empfehlungen
Zahlungsgateway-Terminologie
Lassen Sie uns einige Begriffe diskutieren, die wir in diesem Artikel verwenden werden:
1) Händler - Ein Händler ist eine Person oder Firma, die Produkte oder Dienstleistungen verkauft. Flipkart, Amazon, eBay sind einige Beispiele für Händler.
2) Kreditkarte - Eine Plastikkarte, mit der Produkte oder Dienstleistungen über ein Kreditkonto gekauft werden können. Es hat eine 16-stellige Kartennummer, ein Ablaufdatum, ein Hologramm, einen Magnetstreifen, ein Signaturfeld und eine CVV-Nummer (Card Verification Value).
Vorderseite der Kreditkarte:
Rückseite der Kreditkarte:
(Quelle: about.com)
3) Bank erwerben - Acquiring Bank ist ein Finanzinstitut, das das Bankkonto des Händlers unterhält und es einem Händler ermöglicht, Debit- und / oder Kreditkartentransaktionen in seinem Geschäft zu akzeptieren und zu verarbeiten.
4) Ausstellende Bank - Die ausstellende Bank ist das Finanzinstitut, das die Debit- oder Kreditkarte des Kunden ausstellt. Wenn ein Kunde eine Kredit- oder Debitkarte verwendet, um einen Kauf zu tätigen, genehmigt oder lehnt die ausstellende Bank die Transaktion basierend auf dem Kontostand des Karteninhabers ab oder leitet diese Informationen an die übernehmende Bank weiter.
Beispielsweise, Die Transaktion wird abgelehnt, wenn das Ablaufdatum der Karte falsch ist oder wenn der Kaufbetrag das Kreditlimit der Karte überschreitet.
5) Transaktion - Der End-to-End-Prozess, durch den der Händler Geld für eine Transaktion mit einem Kunden erhält.
6) Autorisierung - Eine Autorisierung wird angefordert, wenn ein Kunde einen Kauf tätigt. Diese Autorisierung wird von der ausstellenden Bank des Kunden bereitgestellt und bestätigt die Gültigkeit des Karteninhabers, die Zahlungsfähigkeit und das Vorhandensein ausreichender Mittel usw. Sobald dies abgeschlossen ist, werden die Mittel gehalten und der Restbetrag vom Kreditlimit des Kunden abgezogen, jedoch nicht noch auf das Händlerkonto übertragen.
7) Erfassen - In dieser Aktion sammelt der Händler die relevanten Zahlungsinformationen des Kunden und sendet eine Abrechnungs- / Erfassungsanforderung an den Verarbeiter. Der Verarbeiter verwendet diese Informationen, um eine Überweisung zwischen dem Kartenkonto des Kunden und dem Bankkonto des Händlers einzuleiten.
Lesen Sie auch => Testen von Bankanwendungen
Unterschied zwischen Zahlungsgateway und Zahlungsabwicklern
Es ist online viel Literatur darüber verfügbar und ob Zahlungsgateway und Zahlungsprozessor unterschiedliche Module mit unterschiedlichen Funktionen sind.
Im Verlauf meiner Projekte habe ich festgestellt, dass Zahlungsprozessor und Zahlungsgateways ohne tatsächliche Unterscheidung austauschbar verwendet werden. Die Händler bezeichnen die 'Zahlungsgateways' normalerweise als Zahlungsabwickler, da diese alle Zahlungen verarbeiten.
Die 'Zahlungsabwickler' verstehen sich als Zahlungsgateways, da sie als Mittel zur Verarbeitung und zum Abschluss des sicheren Zahlungsvorgangs dienen.
Transaktionsablauf
Das folgende Flussdiagramm fasst den gesamten Ablauf vom Moment der Bestellung durch einen Kunden bis zur erfolgreichen oder abgelehnten Bestellung zusammen.
Wenn ein Kunde die Bestellung stornieren möchte, ist der Ablauf wie folgt:
Der Unterschied zwischen einer Stornierung und einer Rückgabe hängt davon ab, ob eine Transaktion erfasst wird oder nicht.
Eine nicht abgewickelte Zahlung kann storniert werden, dh das gehaltene Geld wird dem Konto des Karteninhabers gutgeschrieben. Wenn eine Transaktion bereits abgewickelt oder erfasst wurde, wird eine Rückerstattung eingeleitet. Dies bedeutet, dass das Geld vom Händlerkonto abgebucht und dem Konto des Karteninhabers gutgeschrieben wird.
freie Software zur Behebung von Registrierungsfehlern
Warum müssen wir Payment Gateways testen?
Wenn wir in einem echten Laden einkaufen würden, würden wir beim Auschecken Bargeld bezahlen oder unsere Karte (Kredit oder Lastschrift) durch den Automaten ziehen, um die Transaktion abzuschließen.
Bei Verwendung von Kredit- oder Debitkarten kann der POS ( Point-of-Sale-Tests ) Maschine zeigt an, ob die Zahlungsabwicklung genehmigt oder abgelehnt wird.
Ebenso benötigen wir bei Online-Transaktionen ein vergleichbares System, das eine Transaktion sofort genehmigt oder ablehnt.
Aus Kundensicht sollte die Online-Zahlungsabwicklung auf der E-Commerce-Website nahtlos sein. Der Kunde klickt auf die Schaltfläche 'Jetzt bezahlen' und sollte in den nächsten Sekunden die Meldung 'Zahlung erfolgreich' oder 'Abgelehnt' sehen.
Aus Sicht des E-Commerce-Shops muss der Händler sicherstellen, dass der gesamte Zahlungszyklus (Abrufen von Transaktionen aus dem Online-Shop, Erfassen und Autorisieren, Rückerstattung, Stornierung) ordnungsgemäß funktioniert. Wenn eine dieser Unterkomponenten nicht wie erwartet funktioniert, kann dies ein Problem für den Händler sein.
Aus Händlersicht können sie sich in der Testphase an den ausgewählten Zahlungsprozessorfluss gewöhnen und bewerten, ob die ausgewählte Option tatsächlich am besten zu ihrer Anwendung und ihrem Geschäft passt.
Arten von Tests erforderlich
Abhängig von der Wahl des Zahlungsabwicklers und den Produkt- / Anwendungsanforderungen müssen Sie möglicherweise die folgenden Arten von Tests durchführen
- Funktionsprüfung - Für neuere, weniger etablierte Zahlungsgateways sind Funktionstests erforderlich, um sicherzustellen, dass sich die Anwendung so verhält, wie sie sollte, d. H. Sie verarbeitet Bestellungen, Berechnungen, Steuern usw. genau so, wie sie soll. Für etabliertere Zahlungsabwickler ist diese Art von Tests möglicherweise nicht erforderlich.
- Integrationstests - Integrationstests sind bei der Integration in ein Zahlungsgateway von entscheidender Bedeutung. Als Tester müssen Sie überprüfen, ob die Integration Ihrer Website / Ihres Online-Shops / Ihrer Anwendung mit den ausgewählten Zahlungsgateways einwandfrei funktioniert. Als Tester müssen Sie den gesamten Transaktionsfluss überprüfen:
- Bestellung aufgeben
- Überprüfen Sie, ob Geld auf dem Händlerkonto eingegangen ist
- Überprüfen Sie, ob die Transaktion zurückerstattet oder erfolgreich storniert werden kann
- Leistungstest - Es ist wichtig, die Website / den Online-Shop / die Anwendung auf Leistung zu testen. Der Zahlungsprozessor sollte nicht ausfallen, wenn mehrere Benutzer gleichzeitig versuchen, Transaktionen abzuschließen.
- Sicherheitstests - Während einer Transaktion gibt ein Kunde vertrauliche Informationen wie Kreditkartennummer, CVV-Nummer usw. an. Es ist sehr wichtig sicherzustellen, dass alle vertraulichen Informationen nach der Verschlüsselung übertragen werden und der Kanal sicher ist.
Hilfreiche Tipps
Aufgrund meiner persönlichen Erfahrung sind die folgenden hilfreichen Tipps für Tester:
# 1) Untersuchen Sie, ob für das Zahlungsgateway, das getestet oder implementiert werden muss, eine kostenlose Sandbox-Umgebung (zu Test- und Erkundungszwecken) verfügbar ist. Die Verfügbarkeit einer Sandbox ist auf jeden Fall hilfreich und bietet dem Team zusätzliche Flexibilität, um das Tool anzupassen und die erforderlichen Tests durchzuführen.
#zwei) Stellen Sie sicher, dass die Transaktion durchgehend getestet wird. In unseren Projekten haben wir zahlreiche Fehler im Zusammenhang mit der Datenerfassung und dem Datenfluss von der Anwendung zum Zahlungsgateway getestet und gemeldet. Einige der spezifischen Fehler waren:
- Die Namensinformationen des Kunden (Käufers) wurden nicht korrekt erfasst
- Das Ablaufdatum der Kundenkreditkarte wurde aufgrund einer falschen Funktion falsch erfasst, was dazu führte, dass die ausstellenden Banken die Transaktionen aufgrund falscher Kreditkarteninformationen ablehnten.
- Doppelte Transaktion, die im Zahlungsprozessor angezeigt wird
#3) Informieren Sie sich über die Einschränkungen der Zahlungsgateway-Sandboxen.
Beispielsweise, Die Authorize.net-Sandbox unterstützt eine Währung pro Sandbox. Wenn Sie also mehrere Währungen testen müssen, müssen Sie verschiedene Sandboxen konfigurieren. Außerdem könnten Sie niemals wirklich testen, wie sich das System verhält, wenn das Live Authorize.net-Konto Transaktionen in mehreren Währungen verarbeitet.
# 4) Wenn die Zahlung während einer Transaktion aus irgendeinem Grund fehlschlägt, sollte dem Kunden eine geeignete Nachricht angezeigt werden. Zu technische Fehlermeldungen wie 'Objekt nicht auf Instanz festgelegt' oder '404-Fehler' können den Kunden verwirren und die Benutzererfahrung beeinträchtigen.
Es ist auch eine gute Idee, eine allgemeine Meldung wie 'Es scheint ein Problem bei der Verarbeitung der Transaktion zu geben, kontaktieren Sie uns bitte unter 1-800-800-8000' anzuzeigen.
# 5) Zum Zwecke der Überprüfung der Freigabe nach der Produktion müsste der Kunde (Inhaber des Anwendungsunternehmens) ein Live-Zahlungsprozessorkonto erstellen, seine Händler-ID einrichten usw.
Je nach ausgewähltem Zahlungsprozessor kann die Einrichtung des Kontos zwischen 2 Tagen und einigen Wochen dauern. Dies sollte vom Projektmanager dem Kunden im Voraus mit ausreichender Zeit mitgeteilt werden, um das Live-Konto einzurichten, bevor die Integration von Anwendung und Zahlungsprozessor live geschaltet wird.
Checkliste und Testfälle für Payment Gateway-Tests
Wie bei jeder anderen Anwendung erfordert das Testen von Zahlungsprozessoren eine ordnungsgemäße Testplanung.
Die folgende Checkliste kann für Tester hilfreich sein und als Referenz dienen:
1) Richten Sie die Sandbox für den Zahlungsprozessor ein.
Interview Fragen zu HTML und CSS
2) Sammeln Sie Test-Kreditkartennummern, die zum Testen verschiedener Kreditkarten verwendet werden. Solche Informationen für den Braintree-Zahlungsprozessor finden Sie beispielsweise unter Braintree-Zahlungen.
3) Überprüfen Sie das Verhalten der Anwendung, wenn eine Transaktion erfolgreich ist.
4) Überprüfen Sie nach erfolgreicher Transaktion, ob das Zahlungsgateway zu Ihrer Anwendung zurückkehrt, um eine erfolgreiche Transaktions- / Bestätigungsmeldung anzuzeigen.
5) Stellen Sie sicher, dass der Kunde eine Transaktionsbestätigungsbenachrichtigung wie eine Bestellbestätigungs-E-Mail usw. erhält, wenn die Transaktion erfolgreich ist.
6) Überprüfen Sie, was passiert, wenn eine Zahlung fehlschlägt oder der Zahlungsprozessor nicht mehr reagiert. Gibt es eine Fehlermeldung?
7) Überprüfen Sie das Anwendungsverhalten bei aktiviertem und deaktiviertem Browser-Popupblocker. Dies kann hilfreich sein, wenn Bestätigungsmeldungen im Popup angezeigt werden.
8) Überprüfen Sie verschiedene Einstellungen zur Betrugsprävention / Sicherheit.
Wenn beispielsweise die Rechnungsinformationen des Kunden nicht mit der Adresse übereinstimmen, die der ausstellenden Bank angegeben wurde, führt eine Nichtübereinstimmung zu einem Rückgang der Transaktion.
9) Überprüfen Sie die Transaktionseinträge in der Datenbank, wenn der Tester Zugriff auf die Anwendungsdatenbank hat.
10) Überprüfen Sie, was passiert, wenn eine Kundensitzung abläuft.
elf) Überprüfen Sie die Konsole während der gesamten Transaktion und melden Sie alle beobachteten Konsolenfehler.
12) Stellen Sie sicher, dass diese Transaktion auf einem sicheren Kanal ausgeführt wird.
Beispielsweise können die Checkout-Seiten HTTPS im Vergleich zu anderen Websites sein, bei denen es sich um HTTP-Seiten handelt.
13) Stellen Sie sicher, dass die Währung des Zahlungsabwicklers korrekt eingerichtet ist.
Wenn es sich bei der Anwendung / Website beispielsweise um ein kanadisches Unternehmen / einen kanadischen Einzelhändler handelt, sollte der Zahlungsprozessor so eingerichtet sein, dass er CAD-Währungen akzeptiert.
14) Wenn die Anwendungen mehrere Zahlungsoptionen wie Kreditkarte und PayPal zusammen haben, müssen beide Zahlungsoptionen von Ende zu Ende einzeln getestet werden.
fünfzehn) Stellen Sie sicher, dass der Rückerstattungs- oder Stornierungsbetrag (vom Administrationsportal des Zahlungsabwicklers) mit dem Transaktionsbetrag übereinstimmt. In keinem Fall sollte der Rückerstattungs- / Stornierungsbetrag den Transaktionsbetrag überschreiten.
Lesen Sie auch => Testen des Retail Banking Systems
Einrichten der Sandbox: Beispiel für Braintree-Zahlungen
1) Navigieren Sie zu Braintree-Website .
2) Klicken Sie auf die Schaltfläche 'Sandbox ausprobieren'.
(Hinweis:Klicken Sie auf ein Bild, um es zu vergrößern.)
3) Sie werden zur Braintree Sandbox-Website weitergeleitet. Füllen Sie alle erforderlichen Informationen aus und melden Sie sich für die Sandbox an
4) Sie erhalten eine E-Mail-Benachrichtigung an die bei der Anmeldung angegebene E-Mail-Adresse bezüglich der Bestätigung der Kontoerstellung
5) Sie müssen das Benutzerinformationsformular ausfüllen, um dort weiterarbeiten zu können, wo Sie ein Kennwort auswählen müssten. Klicken Sie auf die Schaltfläche 'Zustimmen und Konto erstellen'.
6) Sie werden angemeldet und zum Braintree Admin-Portal weitergeleitet
7) Notieren Sie sich die Sandbox-Schlüssel und verwenden Sie sie in Ihrer Anwendung, um sie in diese Braintree-Sandbox zu integrieren.
8) Nach Abschluss der Integration ist die Sandbox einsatzbereit. Wenn Sie die Sandbox-Einstellungen aktualisieren müssen, können Sie dies über das Einstellungsmenü tun.
Häufig verwendete Einstellungsmenüoption:
Fazit
Der Zahlungsprozessor ist eine sehr wichtige Komponente für jede E-Commerce-Anwendung, die Zahlungen von Kunden akzeptiert. Daher ist es wichtig, diese Komponente gründlich zu testen. Jedes verpasste Szenario kann sich auf die Verkäufe / Transaktionen des Verkäufers und negativ auf die Benutzererfahrung für den Kunden oder Käufer auswirken.
Tester müssen die Testumgebung (Sandboxen, Sammeln von Dummy-Kreditkarteninformationen, Antwortcodes usw.) vorbereiten oder einrichten und eine Teststrategie formulieren - sowohl für die Testumgebung als auch für Live- / Post-Production-Release-Tests.
Über die Autor: Dieser nützliche Artikel wurde von Neha geschrieben. Derzeit arbeitet sie als Qualitätssicherungsmanagerin und hat sich auf die Leitung und Verwaltung von internen und Offshore-QS-Teams spezialisiert.
Haben Sie Fragen oder möchten Sie Ihre Erfahrungen mit Payment Gateway-Tests teilen? Lass es uns in den Kommentaren unten wissen.
Literatur-Empfehlungen
- Alpha-Tests und Beta-Tests (eine vollständige Anleitung)
- Beste Software-Test-Tools 2021 (QA Test Automation Tools)
- Funktionstests gegen nichtfunktionale Tests
- Perfect Software Testing Resume Guide (mit Software Tester Resume Sample)
- Vollständige Anleitung zum Erstellen von Verifikationstests (BVT-Tests)
- SalesForce Testing Anfängerhandbuch
- Testen von Primer eBook Download
- 68 Grundlegende Ressourcen, um ein erfolgreicher Tester zu sein (nicht verpassen!)