Collegiate Sports Paging System

Testplan

Version 1.0

Revisionsprotokoll

Datum

Version Beschreibung Autor
26. Oktober 1999 1.0 Erste Version Kontextintegration
Inhaltsverzeichnis

EinführungSeitenanfang

Zweck

Dieser Testplan für das Collegiate Sports Paging System unterstützt die folgenden Zielsetzungen:

  1. Vorhandene Projektdaten und zu testende Softwarekomponenten bestimmen
  2. Empfohlene Anforderungen für Text auflisten (auf hoher Ebene)
  3. Einzusetzende Teststrategien empfehlen und beschreiben
  4. Erforderliche Ressourcen ermitteln und Testaufwand schätzen
  5. Liefergegenstände des Testprojekts auflisten

Hintergrund

Das Collegiate Sports Paging System benachrichtigt die Abonnenten, wenn Ereignisse innerhalb der abonnierten Sportkategorien eintreten. Die Abonnenten können dann eine personalisierte Website aufrufen, auf der sie die Storys, über die sie benachrichtigt wurden, sowie andere Nachrichten aus dem Bereich Hochschulsport (Collegiate Sports) anzeigen können.

Das System besteht aus drei wichtigen Subsystemen auf einem Anwendungswebserver und interagiert mit der vorhandenen Website von WebNewsOnLine und mit Paging-Gateways. Die Subsysteme sind:

  • Content-Management - Dieses Subsystem akzeptiert Inhalt, markiert Kategorien und zeigt Überschriften für Abonnenten an. Es verwaltet auch Werbeinhalt, der für bestimmte Zielgruppen von Abonnenten basierend auf deren Abonnementprofilen verfasst wurde.
  • Paging - Dieses Subsystem wird aktiviert, wenn neuer Inhalt in das System geladen wird. Es ist dafür zuständig, festzustellen, wer auf dem Pager benachrichtigt werden und Nachrichten an die Paging-Gateways senden soll.
  • Berichterstellung - Dieses Subsystem protokolliert das Anzeigen von Werbeinhalten und erstellt Berichte hierzu.

Die Systemarchitektur kann wie folgt dargestellt werden:

Diagramm der Systemarchitektur

 

Umfang

Das Collegiate Sports Paging System wird einem Einheitentest und einem Systemtest unterzogen. Der Einheitentest konzentriert sich auf die funktionale Qualität, während der Systemtest sich mit der Skalierbarkeit und der Leistung befasst.

Die Interaktion der Subsysteme wird wie folgt getestet:

    1. zwischen Content-Management und Paging
    2. zwischen Content-Management und Berichterstellung.

Die folgenden Systemschnittstellen werden getestet:

    1. zwischen Collegiate Sports Paging System und vorhandenem WebNewsOnLine-Webserver
    2. zwischen Collegiate Sports Paging System und Paging-Gateways.

Am kritischsten sind der Kapazitätsplanungstest und der Leistungstest. Die Vorgehensweise ist folgende:

  1. Es wird ein Testszenario aufgebaut, in dem eine stetig zunehmende Anzahl von Seiten bis zum Grenzwert von 200.000 erstellt wird.
  2. Außerdem wird eine Testszenario aufgebaut, in dem neuer Inhalt beim System eingeht, und zwar alle 20 Sekunden ein neues Element.
  3. Schließlich wird eine wachsende Anzahl parallel vorhandener Abonnenten (bis 200.000) simuliert.

ProjektProjektidentifikation

Die Tabelle unten gibt die für den Testplan verwendete Dokumentation und Verfügbarkeit an:

Dokument
(einschließlich Version und Datum)
Erstellt oder verfügbar Empfangen oder überprüft Autor oder Ressource Anmerkungen
Visionsdokument Ja Ja Kontextintegration  
Ergänzende Spezifikation Ja Ja Kontextintegration  
Anwendungsfallbericht Ja Ja Kontextintegration  
Projektplan Ja Ja Kontextintegration  
Spezifikationen für das Design Nein Nein    
Prototyp Ja Ja Kontextintegration  
Bewertung der Projekt- bzw. Geschäftsrisiken Ja Ja Kontextintegration  

Testanforderungen Seitenanfang

Die nachfolgende Liste enthält diese Elemente (Anwendungsfälle, funktionale Anforderungen, nicht funktionale Anforderungen), die als Testziele definiert wurden. Diese Liste zeigt an, was getestet werden soll.

Datenbanktest

    Sicherstellen, dass Informationen zum Abonnenten eingegeben und abgerufen werden können.

    Sicherstellen, dass Inhalt und Kategorien eingefügt und angezeigt werden können.

    Sicherstellen, dass Abonnentenprofile und Accountinformationen eingegeben und angezeigt werden können.

    Sicherstellen, dass abonnentenspezifische Nutzungsdaten protokolliert werden.

Funktionstest

    Sicherstellen, dass Abonnenten die Informationen, für die sie Paging angefordert haben, anzeigen können.

    Sicherstellen, dass Seiten an Abonnenten gesendet werden, wenn Inhalt eingeht.

    Sicherstellen, dass automatische Einfügung des Inhalts funktioniert.

    Sicherstellen, dass bei entsprechender Genehmigung des Editors der nicht automatische Inhalt eingefügt wird.

    Sicherstellen, dass Abonnenten, die keine gültigen Abonnements erworben haben, keine entsprechenden Seiten empfangen.

    Sicherstellen, dass Inhalt, der als archiviert markiert wurde, Abonnenten nicht erneut angezeigt wird.

    Sicherstellen, dass veralteter Inhalt gelöscht wird.

    Sicherstellen, dass Berichte für Inserenten präzise sind.

    Sicherstellen, dass Berichte für Inserenten in Microsoft® Word®, Microsoft® Excel ® oder HTML empfangen werden können.

Test des Geschäftszyklus

    Keiner.

Test der Benutzerschnittstelle

    Alle Anwendungsfälle durchgehen und sicherstellen, dass alle Anzeigen der Benutzerschnittstelle leicht verständlich sind.

    Alle Funktionen der Onlinehilfe prüfen.

    Sicherstellen, dass alle Anzeigen den WebNewsOnLine-Standards entsprechen.

Ermittlung des Leistungsprofils

    Antwortzeit der Schnittstelle an das Pager-Gateway-System prüfen.

    Antwortzeit der Schnittstelle vom vorhandenen WebNewsOnLine-Webserver prüfen.

    Antwortzeit bei Verbindung über 56-Kbit-Modem prüfen.

    Antwortzeit bei lokaler Verbindung (über ein LAN) prüfen.

Kapazitätsplanungstest

    Systemreaktion mit 200 parallel vorhandenen Abonnenten prüfen.

    Systemreaktion mit 500 parallel vorhandenen Abonnenten prüfen.

    Systemreaktion mit 1.000 parallel vorhandenen Abonnenten prüfen.

    Systemreaktion mit 5.000 parallel vorhandenen Abonnenten prüfen.

    Systemreaktion mit 10.000 parallel vorhandenen Abonnenten prüfen.

    Systemreaktion mit 50.000 parallel vorhandenen Abonnenten prüfen.

    Systemreaktion mit 100.000 parallel vorhandenen Abonnenten prüfen.

    Systemreaktion mit 200.000 parallel vorhandenen Abonnenten prüfen.

Stresstest

    Keiner.

Volumentest

    Prüfen, wie viele Seiten innerhalb von 5 Minuten gesendet werden, wenn einzelnes Inhaltselement eingeht.

    Prüfen, wie viele Seiten innerhalb von 5 Minuten gesendet werden, wenn Inhalt alle 20 Sekunden eingeht.

Sicherheits- und Zugriffssteuerungstest

    Sicherstellen, dass Nicht-Abonnenten nicht auf Inhalte zugreifen können, die nur für Abonnenten bestimmt sind.

    Sicherstellen, dass Inhalte ausschließlich von Editoren freigegeben werden können.

    Sicherstellen, dass Inserenten ausschließlich ihre eigenen Werbeinhalte sehen können.

Test für Failover/Fehlerbehebung

    Keiner.

Konfigurationstest

    Prüfoperation mit dem Browser Netscape Version 4.x

    Prüfoperation mit dem Browser Microsoft® Internet Explorer® Version 5.x

Installationstest

    Keiner.

Teststrategie Seitenanfang

Testtypen

Test der Daten- und Datenbankintegrität
Testziel: Stellen Sie sicher, dass die Methoden und Prozesse für den Datenbankzugriff ordnungsgemäß und ohne fehlerhafte Daten funktionieren.
Technik:
  • Alle Methoden und Prozesse für den Datenbankzugriff aufrufen und dabei gültige und ungültige Daten (oder Datenanforderungen) verwenden.
  • Datenbank überprüfen, um sicherzustellen, dass die Daten wie gewünscht bereitgestellt wurden und alle Datenbankereignisse ordnungsgemäß eingetreten sind, oder die zurückgegebenen Daten überprüfen, um sicherzustellen, dass die richtigen Daten (aus den richtigen Gründen) abgerufen wurden.
Erfüllungskriterien: Alle Methoden und Prozesse für den Datenbankzugriff funktionieren ordnungsgemäß und ohne fehlerhafte Daten.
Besondere Hinweise:
  • Prozesse müssen manuell aufgerufen werden.
  • Es sollten kleine Datenbanken bzw. Datenbanken mit einer begrenzten Anzahl von Datensätzen verwendet werden, um die Transparenz von nicht akzeptablen Ereignissen zu verbessern.
Funktionstest
Testziel: Die Funktionalität, die durch das Testziel definiert ist, einschließlich Navigation, Dateneingabe, Verarbeitung und Abruf sicherstellen.
Technik: Führen Sie alle Anwendungsfälle, Anwendungsfallabläufe oder Funktionen mit gültigen und ungültigen Daten aus, um Folgendes zu überprüfen:
  • Die erwarteten Ergebnisse treten ein, wenn gültige Daten verwendet werden.
  • Wenn ungültige Daten verwendet werden, werden die richtigen Fehlernachrichten angezeigt.
  • Alle Geschäftsregeln werden ordnungsgemäß angewendet.
Erfüllungskriterien:
  • Alle geplanten Tests wurden durchgeführt.
  • Alle angegebenen Mängel wurden behoben.
Besondere Hinweise: Keine.
Test der Benutzerschnittstelle
Testziel: Bestätigen, dass Folgendes zutrifft:
  • Die Navigation über die Testziele gibt die Geschäftsfunktionen und -anforderungen in den einzelnen Fenstern und Feldern sowie die Verwendung der Zugriffsmethoden (Tabulatortaste, Mausbewegungen, Direktaufruftasten) ordnungsgemäß wieder.
  • Webobjekte und -merkmale, z. B. Menüs, Größe, Position, Status und Fokus in Übereinstimmung mit Standards.
Technik: Tests für alle Fenster erstellen oder ändern, um die Richtigkeit der Navigation und des Objektstatus hinsichtlich der einzelnen Anwendungsfenster und Objekte zu überprüfen.
Erfüllungskriterien: Jedes Fenster kann erfolgreich geprüft werden, die Konsistenz mit der Benchmarkversion bzw. einem akzeptablen Standard bleibt gewahrt.
Besondere Hinweise: Es kann nicht auf alle Merkmale für angepasste Objekte und Objekte Dritter zugegriffen werden.
Ermittlung des Leistungsprofils
Testziel: Leistungsverhalten für bestimmte Transaktionen oder Geschäftsfunktionen unter den folgenden Bedingungen:
  • normale angenommene Auslastung
  • höchste angenommene Auslastung
Technik: Entwickelte Testprozeduren für Funktionstest oder Test des Geschäftszyklus verwenden.

Datendateien ändern, um die Anzahl der Transaktionen zu erhöhen, oder Scripts ändern, um die Anzahl der Iterationen für die einzelnen Transaktionen zu erhöhen.

Scripts müssen auf einer Maschine ausgeführt werden (für den Vergleich der einzelnen Benutzer und Transaktionen am besten geeignet) und mit mehreren Clients wiederholt werden (virtuellen oder tatsächlichen, siehe besondere Hinweise unten).

Erfüllungskriterien: Einzelne Transaktionen oder Benutzer: Erfolgreiche Ausführung der Test-Scripts ohne Fehler und innerhalb des erwarteten oder erforderlichen Zeitraums (pro Transaktion).

Mehrere Transaktionen oder Benutzer: Erfolgreiche Ausführung der Test-Scripts ohne Fehler und innerhalb eines akzeptablen Zeitraums.

Besondere Hinweise: Für umfassende Leistungstests benötigt man auf dem Server eine Auslastung "im Hintergrund".

Dazu stehen verschiedene Methoden zur Verfügung:

  • Transaktionen direkt an den Server absetzen, normalerweise über SQL-Aufrufe.
  • Eine "virtuelle" Benutzerlast, um viele (normalerweise mehrere Hundert) Clients zu simulieren. Die Last kann mit Emulationstools auf fernen Terminals erzeugt werden. Diese Technik kann auch verwendet werden, um das Netz mit Datenverkehr zu belasten.
  • Mehrere physische Clients verwenden, auf denen Test-Scripts ausgeführt werden können, um das System auszulasten.

Leistungstests sollten auf einer dedizierten Maschine oder zu einer dedizierten Zeit ausgeführt werden. Dies ermöglicht eine vollständige Steuerung und eine präzise Messung.

Die für den Leistungstest verwendeten Datenbanken sollten die tatsächliche Größe der Datenbank haben oder entsprechend skaliert werden.

Kapazitätsplanungstest
Testziel: Leistungsverhalten für bestimmte Transaktionen oder Geschäftsfunktionen unter verschiedenen Auslastungsbedingungen prüfen.
Technik: Anwendungsfälle, die für den Funktionstest oder den Test des Geschäftszyklus entwickelt wurden.

Datendateien ändern, um die Anzahl der Transaktionen zu erhöhen, oder Scripts ändern, um die Anzahl der Iterationen für die einzelnen Transaktionen zu erhöhen.

Erfüllungskriterien: Mehrere Transaktionen oder Benutzer: Erfolgreiche Ausführung der Tests ohne Fehler und innerhalb eines akzeptablen Zeitraums.
Besondere Hinweise: Leistungstests sollten auf einer dedizierten Maschine oder zu einer dedizierten Zeit ausgeführt werden. Dies ermöglicht eine vollständige Steuerung und eine präzise Messung.

Die für den Leistungstest verwendeten Datenbanken sollten die tatsächliche Größe der Datenbank haben oder entsprechend skaliert werden.

Volumentest
Testziel: Überprüfen, ob das Testziel in den folgenden Szenarios mit hoher Auslastung erreicht werden kann:
  • Maximale (tatsächliche oder physisch mögliche) Anzahl von Clients hat eine Verbindung hergestellt (auch Simulation möglich) und führt dieselbe, unter dem Gesichtspunkt der Leistung schwierigste Geschäftsfunktion über einen langen Zeitraum aus.
  • Maximale Datenbankgröße wurde erreicht (tatsächlich oder durch Skalierung), und viele Abfragen und Berichtstransaktionen werden parallel ausgeführt.
Technik: Anwendungsfälle verwenden, die für die Ermittlung des Leistungsprofils oder den Kapazitätsplanungstest entwickelt wurden.

Es sollten mehrere Clients verwendet werden, auf denen dieselben oder zusätzliche Tests durchgeführt werden, um über einen längeren Zeitraum ein Worst-Case-Szenario hinsichtlich des Umfangs bzw. der Mischung von Transaktionen zu erzeugen.

Die maximale Datenbankgröße ist erstellt (tatsächlich, skaliert oder mit repräsentativen Daten gefüllt) und mehrere Clients werden verwendet, um Abfragen und Berichtstransaktionen parallel und über einen längeren Zeitraum auszuführen.

Erfüllungskriterien: Alle geplanten Tests wurden ausgeführt und angegebene Systemgrenzen wurden erreicht oder überschritten, ohne dass die Software fehlgeschlagen ist.
Besondere Hinweise: Welcher Zeitraum gilt als akzeptabel für Bedingungen unter hoher Belastung (wie oben angegeben)?
Sicherheits- und Zugriffssteuerungstest
Testziel: Sicherheit auf Anwendungsebene: Sicherstellen, dass ein Akteur nur auf die Funktionen und Daten zugreifen kann, für die der Benutzertyp die entsprechende Berechtigung besitzt.

Sicherheit auf Systemebene: Sicherstellen, dass nur die Akteure auf das System und die Anwendungen zugreifen können, die dazu berechtigt sind.

Technik: Anwendungsebene: Alle Akteurtypen sowie die Funktionen oder Daten, für die die einzelnen Typen berechtigt sind, identifizieren und auflisten.

Tests für alle Akteurtypen erstellen und alle Berechtigungen prüfen. Transaktionen erstellen, die für die einzelnen Benutzer (Akteure) spezifisch sind.

Benutzertyp ändern und Tests für dieselben Benutzer erneut ausführen. In jedem Fall prüfen, ob die zusätzlichen Funktionen und Daten ordnungsgemäß verfügbar sind oder zurückgewiesen werden.

Zugriff auf Systemebene (siehe besondere Hinweise unten)

Erfüllungskriterien: Für alle Akteurtypen sind die entsprechenden Funktionen und Daten verfügbar. Alle Transaktionen funktionieren wie erwartet und können in den vorigen Funktionstests ausgeführt werden.
Besondere Hinweise: Der Zugriff auf das System muss mit dem entsprechenden Netz- oder Systemadministrator geprüft werden. Dieser Test ist nicht erforderlich, wenn er im Rahmen der Netz- oder Systemverwaltung ausgeführt wird.
Konfigurationstest
Testziel:

Prüfen, ob das Testziel mit den erforderlichen Hardware- und Softwarekonfigurationen erreicht werden kann.

Technik:

Scripts für Funktionstest verwenden

Verschiedene Softwareprodukte, die als solche nicht Teil des Testziels sind, z. B. die Microsoft-Anwendungen Excel® und Word®, während des Tests oder vor dessen Beginn öffnen und schließen.

Ausgewählte Transaktionen ausführen, um die Interaktion des Akteurs mit der zu testenden und der nicht zu testenden Software zu simulieren.

Den obigen Prozess wiederholen und dabei den verfügbaren konventionellen Speicher auf dem Client auf ein Minimum reduzieren.

Erfüllungskriterien:

Alle Transaktionen hinsichtlich der zu testenden und der nicht zu testenden Software konnten fehlerfrei ausgeführt werden.

Besondere Hinweise:

Welche nicht zu testende Software ist erforderlich, verfügbar und auf dem Desktop zugänglich?

Welche Anwendungen werden normalerweise verwendet?

Welche Daten werden von den Anwendungen ausgeführt (d. h., großes Spreadsheet in Excel, 100-seitiges Dokument in Word)?

Die vollständigen Systeme, Netware, Netzserver, Datenbanken usw. sollten ebenfalls im Rahmen dieses Tests dokumentiert werden.

Tools

Für dieses Projekt werden die folgenden Tools eingesetzt:

 

Tool

Version

Mängelerfassung

Projekt-Homepage

 
Projektmanagement

Microsoft® Project®

 


Ressourcen Seitenanfang

Dieser Abschnitt erläutert die empfohlenen Ressourcen für den Test des Collegiate Sports Paging System, die Hauptzuständigkeiten und das erforderliche Know-how bzw. das Qualifikationsprofil.

Mitarbeiter

In der folgenden Tabelle sind die für das Projekt eingeplanten Mitarbeiter aufgeführt.

Personalwesen
Mitarbeiter Empfohlene Mindestressourcen Spezifische Zuständigkeiten und Kommentare
Testleiter,
Testprojektleiter
1 (Projektleiter für Collegiate Sports Paging System) Koordiniert das Management.

Zuständigkeiten:

  • Technische Leitung
  • Anforderung der entsprechenden Ressourcen
  • Berichte für die Unternehmensführung
Testdesigner 1 Definiert Testfälle, ordnet ihnen Prioritäten zu und implementiert sie.

Zuständigkeiten:

  • Testplan generieren
  • Testmodell generieren
  • Testwirksamkeit bewerten
Tester 4 (bereitgestellt von WebNewsOnLine) Führt die Tests aus.

Zuständigkeiten:

  • Tests durchführen
  • Ergebnisse protokollieren
  • Fehler beheben
  • Dokumentbezogene Änderungsanfragen
Testsystemadministrator 1 Stellt die Steuerung und Pflege der Testumgebung und Testressourcen sicher.

Zuständigkeiten:

  • Testmanagementsystem verwalten
  • Zugriff der Mitarbeiter auf Testsysteme installieren und verwalten
Datenbankverwaltung / Datenbankmanager 1 (bereitgestellt von WebNewsOnLine) Stellt die Steuerung und Pflege der Testdatenumgebung (Datenbank) und der Testressourcen sicher.

Zuständigkeiten:

  • Testdaten verwalten (Datenbank)
Designer 2 Gibt die Operationen, Attribute und Zuordnungen der Testklassen an und definiert sie.

Zuständigkeiten:

  • Identifiziert und definiert die Testklasse(n)
  • Identifiziert und definiert die Testpakete
Spezialist für Implementierung 4 Implementiert die Testklassen und Testpakete und testet die einzelnen Einheiten.

Zuständigkeiten:

  • Erstellt die im Testmodell implementierten Testklassen und -pakete.

System

Die folgende Tabelle legt die Systemressourcen für das Testprojekt dar.

Die spezifischen Elemente des Testsystems sind zu diesem Zeitpunkt nicht vollständig bekannt. Es wird empfohlen, dass das System die Produktionsumgebung simuliert und die Zugriffe und Datenbankgrößen nach unten skaliert, falls und wo dies angemessen erscheint.

Systemressourcen
Ressource Name und Typ
Datenbankserver  
Netz/Teilnetz Noch nicht fertig gestellt
Servername Noch nicht fertig gestellt
Datenbankname Noch nicht fertig gestellt
PCs für Clienttest  
Besondere Konfigurations
-anforderungen aufnehmen
Noch nicht fertig gestellt
Test-Repository  
Netz/Teilnetz Noch nicht fertig gestellt
Servername Noch nicht fertig gestellt
PCs für Testentwicklung Noch nicht fertig gestellt

Projektmeilensteine Seitenanfang

  Aufgabe, die einen Meilenstein darstellt   Aufwand Startdatum Enddatum
  Test planen        
  Test entwerfen        
  Test implementieren        
  Test durchführen        
  Test bewerten        

Liefergegenstände Seitenanfang

Testmodell

Für jeden ausgeführten Test wird ein Formular für die Testergebnisse erstellt. Dieses Formular enthält den Namen oder die ID des Tests, die Anwendungsfall- oder ergänzende Spezifikation, auf die der Test sich bezieht, das Testdatum, die ID des Testers, erforderliche Bedingungen vor dem Test und die Testergebnisse.

Testprotokolle

Die Testergebnisse werden mit Microsoft Word aufgezeichnet und zurückgemeldet.

Mängelberichte

Mängel werden auf der Projekt-Homepage im Web erfasst.

Anhang A: Projektvorgänge Seitenanfang

In der folgenden Tabelle sind die testbezogenen Vorgänge aufgeführt.

Test planen
Testanforderungen bestimmen
Risiko bewerten
Teststrategie entwickeln
Testressourcen bestimmen
Zeitplan erstellen
Testplan generieren
Test entwerfen
Workload-Analyse
Testfälle bestimmen und beschreiben
Testprozeduren identifizieren und strukturieren
Testabdeckung prüfen und auf Tests zugreifen
Test implementieren
Test-Scripts aufzeichnen oder programmieren
Testspezifische Funktionalität im Design- und Implementierungsmodell bestimmen
Externe Dateien erstellen
Test durchführen
Testprozeduren ausführen
Testdurchführung bewerten
Wiederherstellung nach angehaltenem Test durchführen
Ergebnisse überprüfen
Unerwartete Ergebnisse untersuchen
Mängel protokollieren
Test bewerten
Umfang der Testfälle bewerten
Codeabdeckung bewerten
Mängel analysieren
Feststellen, ob Testerfüllungskriterien und Erfüllungskriterien erfüllt wurden

 

 

Copyright  1987 - 2003 Rational Software Corporation