how perform backend testing
Was ist Backend-Testen und wie wird es durchgeführt?
Softwareanwendungen sind komplex; Es gibt mehr als das, was das Auge sieht.
Die meisten Systemtestbemühungen gehe durch die GUI. Dies liegt daran, dass beim Testen überprüft wird, ob die Software vom Endbenutzer für die Verwendung geeignet ist oder nicht. Endbenutzer verwenden die GUI und wir auch. Deshalb ist es wirklich wichtig, dass Software in diesem Bereich gut abschneidet.
Software enthält jedoch auch viele andere Elemente, die für den Benutzer nicht direkt sichtbar oder für die direkte Interaktion verfügbar sind. Dies macht diese Elemente nicht weniger wichtig und sie müssen ebenfalls gründlichen Tests unterzogen werden.
Die Kombination all dieser gut funktionierenden Elemente ergibt eine vollständig geformte Softwareanwendung. Wir können alles kombinieren, was wir nicht direkt als „Back-End“ sehen.
Einige der Backend-Testelemente sind:
- Datenbank
- APIs
- Server
Abhängig von der Art der Anwendung kann ein Back-End verschiedene Netzwerkkonfigurationen, Kommunikationsprotokolle usw. enthalten. Meistens gibt es jedoch drei Elemente.
Lassen Sie uns nun sehen, worum es beim Testen jeder dieser Komponenten geht und wie.
Was du lernen wirst:
Backend-Datenbanktests
Am häufigsten impliziert der Begriff 'Back-End-Test' Datenbanktests.
Die Datenbank ist ein wichtiges Element jeder Anwendung. Wenn die GUI und die Datenbank nahtlos miteinander interagieren, funktioniert Ihre Anwendung gut. Bei Problemen treten inkonsistente Ergebnisse, Sicherheitsbedrohungen und Leistungsengpässe auf.
Datenbanken werden normalerweise validiert für:
- ACID-Eigenschaften
- CRUD-Operationen
- Schema
- Migration
- Konformität mit Geschäftsregeln
- Sicherheit
- Performance
Für erweiterte ETL- und Data Warehouse-Wartungssysteme müssen ebenfalls Tests durchgeführt werden.
Weitere Informationen zu diese Testtypen Bitte lesen Sie die folgenden Artikel, die bereits auf unserer Website sind =>
- Alles über Datenbanktests - Warum, wie und was testen?
- ETL vs. DB Testing
- ETL-Tests - Tipps, Techniken, Prozesse und Herausforderungen
Zusätzlich zu den Inhalten in den obigen Links ist der wichtige Aspekt, der wiederholt werden muss, dass Datenbank-, ETL- und Data-Warehouse-Tests erweiterte Kenntnisse über die SQL .
Viele Tools werden häufig von Testern verwendet, um das DB-Verhalten durch Abfragen zu interagieren und zu validieren.
Schauen wir uns einige Kategorien dieser Backend-Datenbank-Testtools an:
# 1) Schnittstellen, über die Sie eine Verbindung herstellen und Ihre Abfragen für die Datenbanken ausführen können.
Starten Sie ein Java-Projekt in Eclipse
Einige von ihnen haben eine grafische Benutzeroberfläche, andere nicht.
- KRÖTE: Ich bin sicher, jeder hat davon gehört. Es unterstützt viele DBs und Plattformen. Es kommt sowohl als kostenlose als auch als kommerzielle Version. Weitere Informationen, Ressourcen und die kostenlose Version finden Sie unter Krötenwelt
- pHpMyAdmin: Dies ist ein hervorragendes Open Source-Tool, mit dem Sie Abfragen ausführen und über eine Benutzeroberfläche mit Ihrer Datenbank interagieren können. Ich habe dies persönlich genutzt und mein Team liebt es, wie intuitiv das Tool ist. Wir brauchten kein Training, um es uns bequem zu machen. Ich kann dieses Tool nur empfehlen, wenn Sie nach einem Verbindungsmedium für Ihre MySQL- und MariaDB-Datenbanken suchen phpmyadmin
- HeidiSQL: Sehr ähnlich zu pHpMyAdmin. Es stellt eine Verbindung zu MySQL, Microsoft SQL-Datenbanken und PostgreSQL her. Open Source. Weitere Informationen finden Sie unter hheidisql
Die Liste der Tools ist endlos, aber die oben genannten sind einige der beliebtesten Optionen.
# 2) DB-Last- und Leistungsbenchmarking-Tools:
- HammerDB: Es ist ein Open-Source-Tool, für das viele DB-Experten bürgen. Ich persönlich habe dies nicht verwendet, aber es unterstützt viele Datenbanken. Aus den Screenshots und dem Aussehen geht hervor, dass es sich um ein Tool handelt, das es wert ist, überprüft zu werden. Weitere Details unter hammerdb
- SLOB: Mit dem Silly Little Oracle Benchmark-Tool können Sie den E / A-Stil von DB-Transaktionen zeitlich festlegen und bewerten. Es kann Ihnen helfen, die CPU-, Speicher- und Verarbeitungszeiten für Massentransaktionen auf Ihrem System zu verstehen. Weitere Details unter Kevinclosson
- Schaukel : Dies ist ein sehr ähnliches Tool wie HammerDB. Dies funktioniert auf Oracle-DBs und ist sehr effektiv. Um das Tool und seine Funktionen zu verstehen, versuchen Sie dieses Handbuch: dominicgiles
API-Tests
API ist streng genommen nicht das Back-End, aber da wir alles, was für den Endbenutzer nicht sichtbar ist, lose als Back-End gruppieren, lassen Sie uns auch kurz darüber sprechen.
API steht für Application Program Interface und hier befindet sich im Grunde die gesamte Programmierlogik. Es gibt keine Benutzeroberfläche, was eine der größten Herausforderungen beim Testen darstellt. Da APIs in der Regel vor dem Erstellen der Benutzeroberfläche der Anwendung erstellt werden, bedeutet das Testen der API in der Regel ein frühes Testen.
Messaging- und Sende- / Empfangsanrufe werden anstelle des direkten Sendens und Empfangens von Eingabe- und Ausgabedaten verwendet.
Das beliebteste Tool für API-Tests ist SOAPUI.
- STH als umfangreiches Tutorial zu SoapUI unter => 15+ SoapUI-Tutorials - Ihr vollständiger Leitfaden für SoapUI
- Auch HP UFT kann Ihnen dabei helfen => 16 Neue Funktionen von HP UFT - QTP vs UFT
Alle Datenbanken und Anwendungen selbst werden auf Servern installiert, die diese Systeme am Laufen halten.
Hier werden einige Tests ausgeführt:
# 1) Installation: Sobald die Installation abgeschlossen ist, können Sie zu den jeweiligen Ordnern gehen und sicherstellen, dass die Dateien / Elemente wie vorgesehen in ihre Zielordner gelangt sind. Wenn Sie sich jetzt fragen: 'Woher weiß ich, wohin alles gehen muss?', Fragen Sie Ihre Entwicklungs- oder Bereitstellungsteams, und diese können dies für Sie bestätigen.
Dieser Schritt ist möglicherweise nicht obligatorisch, aber einige Unternehmen verwenden manuelle Bereitstellungen. In diesem Fall könnte es wichtig werden Rauch- / Gesundheitstest Schritt.
# 2) Protokolle: Auf den Servern werden für jeden Transaktionsstatus Protokolle geführt. Dies gibt uns Einblicke, ob der End-to-End-Prozess erfolgreich war.
Manchmal sendet das Frontend gültige Daten und die Datenbank wird möglicherweise richtig aktualisiert. Was ist, wenn dieser Vorgang eine Ausnahme auslöst, einen Speicherverlust verursacht oder eine Fehlfunktion verursacht? Es sind die serverseitigen Protokolle, die Ihnen diese Informationen anzeigen.
Dies ist keine Regel, aber im Allgemeinen sind die meisten Server UNIX-basierte Systeme. Um sie problemlos verarbeiten zu können, benötigen Sie eine Möglichkeit, eine Verbindung zu Ihrem Server herzustellen.
PuTTy, zweifellos ist die beliebteste Wahl, um eine Verbindung zu Ihren Servern herzustellen. Kitt ist ein Open Source-Produkt und muss nicht installiert werden. Alles was Sie tun müssen, ist es herunterzuladen und zu verwenden.
UNIX-Systeme verfügen nicht über eine grafische Benutzeroberfläche. Daher eignen sie sich perfekt als App- und DB-Server. Sie sind sicher, abstrakt, schneller und billiger. Es gibt viele UNIX-Varianten und aufgrund des Fehlens einer grafischen Benutzeroberfläche müssen wir Befehle verwenden, um mit dem Server zu kommunizieren. Wir haben alle unsere Ressourcen für UNIX-Befehle und dieser gehört mir: Freeengineer
# 3) Leistung und Sicherheit des Servers:
Wie jeder andere Teil der Software muss der Server sicher und reaktionsschnell sein.
java j2ee interview fragen und antworten für erfahrene
Es gibt viele Tools, mit denen Sie dies überprüfen und eines finden können, das für Sie funktioniert. Sehen Sie sich diese Liste an: 30+ beliebteste Tools zum Testen von Webanwendungen
Schließlich,
Wie Sie vielleicht bemerkt haben, hilft Ihnen dieser Artikel allein nicht dabei, das Backend-Testen in seiner Gesamtheit zu lernen. Es verweist Sie jedoch auf Ressourcen und Referenzen, die Ihnen helfen, diese zu meistern. Also, bookmarken Sie es als Referenz!
Für diejenigen unter uns, die der Meinung sind, dass sich Funktionstests ausschließlich mit GUI und Front-End befassen, sollte dieser Artikel offenlegen, dass dies nicht der Fall ist.
Unabhängig davon, ob Sie in der Datenbank suchen oder im Protokoll nach dem Status einer Transaktion suchen oder eine Anforderungsnachricht an einen bestimmten Dienst senden, überprüfen Sie die Eignung des Programms für die Verwendung.
Mit anderen Worten, es ist Funktionalität. Das 'Wo Sie testen' und 'Wie Sie testen' unterscheiden sich.
So wie eine Anwendung von allen Seiten funktionieren muss, um erfolgreich zu sein, müssen wir Tester die vielen Facetten eines Softwaresystems verstehen und erforschen, um sie für einsatzbereit zu erklären.
Über den Autor: Dieser Artikel wurde vom STH-Teammitglied Swati S. verfasst.
Sie sind an der Reihe zu teilen!
Erzählen Sie uns, wie wir mit diesem Artikel umgegangen sind. Gibt es eine andere Art von Backend-Tests, die Sie durchführen? Welche Tools verwenden Sie? Welche Techniken haben Sie hilfreich gefunden? Irgendwelche Herausforderungen?
Ihre Kommentare, Fragen, Teilnahme und Leserschaft sind uns wertvoll!
Literatur-Empfehlungen
- Beste Software-Test-Tools 2021 (QA Test Automation Tools)
- Alpha-Tests und Beta-Tests (eine vollständige Anleitung)
- Testen von Primer eBook Download
- Tutorial zum Testen von ETL-Data Warehouse-Tests (Eine vollständige Anleitung)
- Arten von Softwaretests: Verschiedene Testtypen mit Details
- Durchführen von ETL-Tests mit dem Informatica PowerCenter Tool
- Funktionstests gegen nichtfunktionale Tests
- Fragen und Antworten zum ETL-Testinterview