Testen webbasierter Systeme Wenn es bei der Entwicklung webbasierter Systeme an strengen Prozessen mangelt, kann es bei der Entwicklung, Veröffentlichung, Implementierung und Wartung des Webs zu ernsthaften Problemen kommen, und die Wahrscheinlichkeit eines Fehlers ist hoch . Da webbasierte Systeme zudem immer komplexer werden, kann das Scheitern eines Projekts viele Probleme verursachen. Wenn dies geschieht, könnte unser Vertrauen in das Web und das Internet unwiderruflich erschüttert werden und eine Web-Krise auslösen. Darüber hinaus ist die Webkrise möglicherweise schwerwiegender und weitreichender als die Softwarekrise, mit der Softwareentwickler konfrontiert sind.
Im Web-Engineering-Prozess ist das Testen, Bestätigen und Akzeptieren webbasierter Systeme eine wichtige und anspruchsvolle Aufgabe. Webbasierte Systemtests unterscheiden sich von herkömmlichen Softwaretests. Dabei muss nicht nur überprüft und verifiziert werden, ob es gemäß den Designanforderungen ausgeführt wird, sondern auch, ob die Anzeige des Systems auf den Browsern verschiedener Benutzer angemessen ist. Es ist wichtig, Sicherheits- und Benutzerfreundlichkeitstests auch aus der Sicht des Endbenutzers durchzuführen. Allerdings erschwert die Unvorhersehbarkeit des Internets und der Webmedien das Testen webbasierter Systeme. Daher müssen wir neue Methoden und Techniken zum Testen und Bewerten komplexer webbasierter Systeme erforschen. Der Veröffentlichungszyklus allgemeiner Software wird in Monaten oder Jahren berechnet, während der Veröffentlichungszyklus von Webanwendungen in Tagen oder sogar Stunden berechnet wird.
Webtester müssen sich mit kürzeren Release-Zyklen auseinandersetzen, und Tester und Testmanager stehen vor dem Übergang vom Testen traditioneller C/S-Strukturen und Framework-Umgebungen zum Testen sich schnell ändernder Webanwendungssysteme.
1. Funktionstests
1. Linktests Links sind ein Hauptmerkmal von Webanwendungssystemen. Sie sind das Hauptmittel, um zwischen Seiten zu wechseln und Benutzer zu Seiten mit unbekannten Adressen zu führen. Linktests können in drei Aspekte unterteilt werden. Testen Sie zunächst, ob alle Links wie angegeben auf die verlinkte Seite verweisen. Überprüfen Sie anschließend, ob die verlinkte Seite vorhanden ist. Stellen Sie sicher, dass es keine verwaisten Seiten im Webanwendungssystem gibt Links, die auf die Seite verweisen, auf die nur zugegriffen werden kann, wenn Sie die richtige URL-Adresse kennen. Linktests können automatisiert werden und es stehen hierfür viele Tools zur Verfügung. Der Linktest muss während der Integrationstestphase abgeschlossen sein, d. h. der Linktest wird durchgeführt, nachdem alle Seiten des gesamten Webanwendungssystems entwickelt wurden.
2. Formulartests: Wenn Benutzer Informationen an den Systemadministrator der Webanwendung übermitteln, müssen sie Formularvorgänge wie Benutzerregistrierung, Anmeldung, Informationsübermittlung usw. verwenden. In diesem Fall müssen wir die Integrität des Übermittlungsvorgangs testen, um die Richtigkeit der an den Server übermittelten Informationen zu überprüfen. Zum Beispiel: ob das vom Benutzer eingegebene Geburtsdatum und der Beruf angemessen sind, ob die eingegebene Provinz und Stadt übereinstimmen usw. Wenn Standardwerte verwendet werden, überprüfen Sie die Richtigkeit der Standardwerte. Wenn das Formular nur bestimmte angegebene Werte akzeptieren kann, testen Sie dies ebenfalls. Beispielsweise können nur bestimmte Zeichen akzeptiert werden. Sie können diese Zeichen während des Tests überspringen, um zu sehen, ob das System einen Fehler meldet.
3. Cookie-Tests Cookies werden normalerweise zum Speichern von Benutzerinformationen und Benutzervorgängen in einem Anwendungssystem verwendet. Wenn ein Benutzer Cookies verwendet, um auf ein Anwendungssystem zuzugreifen, sendet der Webserver Informationen über den Benutzer und speichert die Informationen in Form von Cookies. Auf dem Client-Computer können damit dynamische und benutzerdefinierte Seiten erstellt oder Informationen wie Anmeldungen gespeichert werden. Wenn das Webanwendungssystem Cookies verwendet, müssen Sie prüfen, ob die Cookies ordnungsgemäß funktionieren können. Zu den Inhalten des Tests kann gehören, ob Cookies funktionieren, ob sie zum geplanten Zeitpunkt gespeichert werden, welche Auswirkungen die Aktualisierung auf Cookies hat usw.
4. Testen der Designsprache Unterschiede in den Webdesign-Sprachversionen können auf der Client- oder Serverseite zu ernsthaften Problemen führen, z. B. bei der Frage, welche HTML-Version verwendet werden soll. Dieses Problem ist besonders wichtig, wenn in einer verteilten Umgebung entwickelt wird, in der die Entwickler nicht alle zusammen sind. Neben HTML-Versionsproblemen müssen auch verschiedene Skriptsprachen wie Java, JavaScript, ActiveX, VBScript oder Perl überprüft werden.
5. Datenbanktests In der Webanwendungstechnologie spielt die Datenbank eine wichtige Rolle. Die Datenbank bietet Platz für die Verwaltung, den Betrieb, die Abfrage und die Umsetzung von Benutzeranforderungen zur Datenspeicherung des Webanwendungssystems. In Webanwendungen ist der am häufigsten verwendete Datenbanktyp eine relationale Datenbank, die SQL zur Verarbeitung von Informationen verwenden kann. In einem Webanwendungssystem, das eine Datenbank verwendet, können im Allgemeinen zwei Arten von Fehlern auftreten, nämlich Datenkonsistenzfehler und Ausgabefehler. Datenkonsistenzfehler werden hauptsächlich durch von Benutzern übermittelte falsche Formularinformationen verursacht, während Ausgabefehler hauptsächlich durch Probleme mit der Netzwerkgeschwindigkeit oder dem Programmdesign verursacht werden. Für diese beiden Situationen können Tests separat durchgeführt werden.
2. Leistungstest
1. Verbindungsgeschwindigkeitstest
Die Geschwindigkeit, mit der Benutzer eine Verbindung zum Webanwendungssystem herstellen, hängt davon ab, wie sie auf das Internet zugreifen. Sie können sich per Telefon einwählen oder einen Breitband-Internetzugang verwenden. Benutzer können beim Herunterladen eines Programms längere Zeit warten, nicht jedoch beim bloßen Besuch einer Seite. Wenn die Reaktionszeit des Websystems zu lang ist (z. B. mehr als 5 Sekunden), verlassen Benutzer das System, weil sie es kaum erwarten können, zu warten. Darüber hinaus gelten für einige Seiten Timeout-Beschränkungen. Wenn die Antwortgeschwindigkeit zu langsam ist, müssen sich Benutzer möglicherweise erneut anmelden, bevor sie Zeit zum Durchsuchen des Inhalts haben. Darüber hinaus kann eine zu langsame Verbindungsgeschwindigkeit zu Datenverlust führen und verhindern, dass Benutzer die echte Seite aufrufen.
2. Lasttest Beim
Lasttest wird die Leistung des Websystems bei einem bestimmten Lastniveau gemessen, um sicherzustellen, dass das Websystem innerhalb der Anforderungen normal funktionieren kann. Der Auslastungsgrad kann die Anzahl der Benutzer sein, die zu einem bestimmten Zeitpunkt gleichzeitig auf das Websystem zugreifen, oder der Umfang der Online-Datenverarbeitung.
Beispiel
: Wie viele Benutzer kann das Webanwendungssystem gleichzeitig online sein? Wenn diese Zahl überschritten wird, kann das Webanwendungssystem eine große Anzahl von Benutzeranfragen für dieselbe Seite verarbeiten?
Tests
Der Lasttest sollte im Websystem angeordnet werden. Testen Sie ihn nach der Veröffentlichung in der tatsächlichen Netzwerkumgebung. Da die internen Mitarbeiter eines Unternehmens, insbesondere Projektteammitglieder, immer begrenzt sind und die Anzahl der Anfragen, die ein Web-System gleichzeitig bearbeiten kann, diese Grenze bei weitem überschreitet, sind die Ergebnisse nur dann korrekt, wenn sie ins Internet gestellt werden und akzeptierte Belastungstests. Bei der Durchführung von Stresstests geht es darum, ein Webanwendungssystem tatsächlich zu zerstören und die Reaktion des Systems zu testen. Beim Stresstest werden die Einschränkungen und Fehlerwiederherstellungsfähigkeiten des Systems getestet, d. h., es wird getestet, ob das Webanwendungssystem abstürzt und unter welchen Umständen es abstürzt. Hacker stellen häufig falsche Datennutzlasten bereit, bis das Webanwendungssystem abstürzt, und verschaffen sich dann Zugriff, wenn das System neu gestartet wird. Zu den Stresstestbereichen gehören Formulare, Anmelde- und andere Informationsübertragungsseiten.
3. Usability-Test
1. Navigationstest Navigation beschreibt die Art und Weise, wie Benutzer innerhalb einer Seite, zwischen verschiedenen Benutzeroberflächen-Steuerelementen wie Schaltflächen, Dialogfeldern, Listen und Fenstern usw. oder zwischen verschiedenen Verbindungsseiten agieren. Sie können feststellen, ob eine Webanwendung einfach zu navigieren ist, indem Sie die folgenden Fragen berücksichtigen: Ist die Navigation intuitiv? Sind wichtige Teile des Websystems von der Startseite aus zugänglich? Erfordert das Websystem eine Sitemap, eine Suchmaschine oder eine andere Navigation? Hilfsmittel? Auf einer Seite zu viele Informationen zu platzieren, hat oft den gegenteiligen Effekt als beabsichtigt. Benutzer von Webanwendungssystemen sind in der Regel zielstrebig und scannen ein Webanwendungssystem schnell, um festzustellen, ob Informationen vorhanden sind, die ihren Anforderungen entsprechen. Andernfalls werden sie das System schnell verlassen. Nur wenige Benutzer sind bereit, sich die Zeit zu nehmen, sich mit der Struktur eines Webanwendungssystems vertraut zu machen. Daher sollte die Navigationshilfe eines Webanwendungssystems so genau wie möglich sein. Ein weiterer wichtiger Aspekt der Navigation ist, ob Seitenstruktur, Navigation, Menüs und Verbindungsstile des Webanwendungssystems konsistent sind. Stellen Sie sicher, dass Benutzer intuitiv wissen, ob Inhalte im Webanwendungssystem vorhanden sind und wo sich diese befinden. Sobald die Ebene des Webanwendungssystems festgelegt ist, muss mit dem Testen der Benutzernavigationsfunktion begonnen werden. Lassen Sie die Endbenutzer an diesem Test teilnehmen, und der Effekt wird deutlicher.
2. Grafiktest
In Webanwendungssystemen können entsprechende Bilder und Animationen nicht nur die Rolle der Werbung spielen, sondern auch die Seite verschönern. Die Grafiken eines Webanwendungssystems können Bilder, Animationen, Rahmen, Farben, Schriftarten, Hintergründe, Schaltflächen usw. umfassen.
Zu den Inhalten des Grafiktests gehören:
(1) Stellen Sie sicher, dass Grafiken einen klaren Zweck haben und stapeln Sie Bilder oder Animationen nicht willkürlich aneinander, um eine Verschwendung von Übertragungszeit zu vermeiden. Die Bildgröße des Webanwendungssystems sollte so klein wie möglich sein und in der Lage sein, etwas klar zu erklären, normalerweise mit einem Link zu einer bestimmten Seite.
(2) Überprüfen Sie, ob der Schriftstil aller Seiten konsistent ist.
(3) Die Hintergrundfarbe sollte mit der Schriftfarbe und der Vordergrundfarbe übereinstimmen.
(4) Die Größe und Qualität des Bildes ist ebenfalls ein sehr wichtiger Faktor, und im Allgemeinen wird JPG- oder GIF-Komprimierung verwendet.
3. Content-Testing
Content-Testing wird verwendet, um die Richtigkeit, Genauigkeit und Relevanz der vom Webanwendungssystem bereitgestellten Informationen zu testen. Die Informationsgenauigkeit bezieht sich darauf, ob die Informationen zuverlässig oder falsch sind. Beispielsweise können falsche Preise in einer Produktpreisliste zu finanziellen Problemen oder sogar zu Rechtsstreitigkeiten führen; die Richtigkeit der Informationen bezieht sich darauf, ob Grammatik- oder Rechtschreibfehler vorliegen. Diese Art von Test wird normalerweise mit einer Textverarbeitungssoftware durchgeführt, beispielsweise mit der Funktion „Pinyin und Grammatikprüfung“ von Microsoft Word. Die Relevanz von Informationen bezieht sich darauf, ob eine Informationsliste oder ein Eintrag im Zusammenhang mit den aktuellen Browserinformationen gefunden werden kann auf der aktuellen Seite, also der sogenannten „verwandten Artikelliste“ im Allgemeinen auf Websites.
4. Gesamtschnittstellentest
Die Gesamtschnittstelle bezieht sich auf das Seitenstrukturdesign des gesamten Webanwendungssystems, das Benutzern ein Gefühl der Integrität vermittelt. Zum Beispiel: Fühlen sich Benutzer beim Durchsuchen des Webanwendungssystems intuitiv? Ist der Designstil des gesamten Webanwendungssystems tatsächlich ein Test? für den Endbenutzer. Im Allgemeinen haben Webanwendungssysteme die Form eines Fragebogens auf der Homepage, um Feedback von Endbenutzern einzuholen. Für alle Usability-Tests ist die Beteiligung externer Personen erforderlich (Personen, die keinen oder nur wenig Kontakt zur Entwicklung von Webanwendungssystemen haben), vorzugsweise Endbenutzer.
4. Client-Kompatibilitätstest
1. Plattformtest
Es gibt viele verschiedene Betriebssystemtypen auf dem Markt, die gängigsten sind Windows, Unix, Macintosh, Linux usw. Welches Betriebssystem der Endbenutzer des Webanwendungssystems verwendet, hängt von der Konfiguration des Benutzersystems ab. Auf diese Weise können Kompatibilitätsprobleme auftreten. Dieselbe Anwendung kann unter einigen Betriebssystemen normal ausgeführt werden, unter anderen Betriebssystemen jedoch möglicherweise nicht. Daher muss das Websystem vor der Veröffentlichung auf Kompatibilität unter verschiedenen Betriebssystemen getestet werden.
2. Browsertest
Der Browser ist die Kernkomponente des Webclients. Browser verschiedener Hersteller unterstützen Java, JavaScript, ActiveX, Plug-Ins oder unterschiedliche HTML-Spezifikationen. ActiveX ist beispielsweise ein Produkt von Microsoft und wurde für den Internet Explorer entwickelt, JavaScript ist ein Produkt von Netscape, Java ist ein Produkt von Sun und so weiter. Darüber hinaus werden Rahmen- und Hierarchiestile in verschiedenen Browsern unterschiedlich oder gar nicht angezeigt. Verschiedene Browser haben unterschiedliche Sicherheits- und Java-Einstellungen. Eine Möglichkeit, die Browserkompatibilität zu testen, besteht darin, eine Kompatibilitätsmatrix zu erstellen. In dieser Matrix wird die Anpassbarkeit von Browsern unterschiedlicher Hersteller und unterschiedlicher Versionen an bestimmte Komponenten und Einstellungen getestet.
5. Sicherheitstests
Zu den Sicherheitstestbereichen von Webanwendungssystemen gehören hauptsächlich:
(1) Heutige Webanwendungssysteme verwenden grundsätzlich die Methode, sich zuerst zu registrieren und dann anzumelden. Daher ist es notwendig, gültige und ungültige Benutzernamen und Passwörter zu testen, darauf zu achten, ob zwischen Groß- und Kleinschreibung unterschieden wird, die Anzahl der Versuche zu begrenzen, ob Sie eine Seite direkt durchsuchen können, ohne sich anzumelden usw.
(2) Ob das Webanwendungssystem Timeout-Beschränkungen hat, das heißt, wenn der Benutzer innerhalb eines bestimmten Zeitraums (z. B. 15 Minuten) nach der Anmeldung nicht auf eine Seite klickt, muss er sich zur Verwendung erneut anmelden? es normalerweise.
(3) Um die Sicherheit des Webanwendungssystems zu gewährleisten, sind Protokolldateien von entscheidender Bedeutung. Es muss getestet werden, ob die relevanten Informationen in die Protokolldatei geschrieben werden und ob sie nachvollzogen werden können.
(4) Testen Sie bei Verwendung eines sicheren Sockets, ob die Verschlüsselung korrekt ist und überprüfen Sie die Integrität der Informationen.
(5) Serverseitige Skripte stellen häufig Sicherheitslücken dar, die häufig von Hackern ausgenutzt werden. Daher müssen wir auch das Problem testen, dass Skripte nicht ohne Autorisierung auf der Serverseite platziert und bearbeitet werden können.
6. Zusammenfassung
In diesem Artikel werden webbasierte Systemtestmethoden unter den Aspekten Funktion, Leistung, Benutzerfreundlichkeit, Clientkompatibilität, Sicherheit usw. erläutert. Webbasierte Systemtests weisen Ähnlichkeiten und Unterschiede zum herkömmlichen Softwaretest auf, was das Softwaretesten vor neue Herausforderungen stellt. Beim webbasierten Systemtest muss nicht nur überprüft und verifiziert werden, ob es gemäß den Designanforderungen funktioniert, sondern auch bewertet werden, ob die Anzeige des Systems auf den Browsern verschiedener Benutzer angemessen ist. Es ist wichtig, Sicherheits- und Benutzerfreundlichkeitstests auch aus der Sicht des Endbenutzers durchzuführen.