IST FL

Für den persönlichen Gebrauch...

Für den persönlichen Gebrauch...


D. R.
Diese Lernkarten bieten einen umfassenden Überblick über das Testen von Software, von grundlegenden Konzepten bis zu fortgeschrittenen Techniken. Sie decken Themen wie Testarten, Teststrategien, Fehlerklassifikation, und Rollen im Testprozess ab. Die Karteikarten sind ideal für IT-Profis, die ihre Fähigkeiten im Softwaretesting verbessern möchten, da sie sowohl theoretische Grundlagen als auch praktische Anwendungen behandeln.
Flashcards
70
Students
18
Language
German
Category
Computer Science
Level
Other
Created / Updated
03.01.2017 / 19.03.2021

Flashcards

Testauswertung und Bericht

  • Wichtige Frage?
  • Beispiele

  • Testende erreicht? = Ausgangskriterien erfüllt?

Beispiel Ausgangskriterien:

  • Überdeckungsgrad bsp der Anweisungen...
  • Weiterer Aufwand gerechtfertigt?
  • Fehlerfindungsrate pro Testdurchführung

 

Komponenten-Test

  • Was wird getestet
  • Wie wird getestet

Bsp JUnit

  • Funktionalität
  • Robustheit (Negativtests)
  • Effizienz (CPU / Speicherbedarf...)
  • Wartbarkeit (Code modularität / Kommentare / ....

Wie

  • Whitebox
  • Blackbox (Testdriven dev)

Integrationstest

  • Ziel
  • Was wird getestet
  • Was wird benötigt?
  • Vorgehen anhand...

Ziel: Schnittstellenfehler aufdecken

Was?

  • Gruppen von Komponenten mit Schnittstellen
  • IntegrationsTest im grossen = Systemintegrationstest

Was wird benötigt?

  • Montiore (bsp. Netzwerkverkehr aufzeichnen)

Integrationsstrategie (Vorgaben aus Systemarchitektur, Projektplan, Testkonzept)

Integrationsstrategien

  • Topdown (Nachteil: Platzhalter für untergeordnete Komponenten nötig)
  • Bottom up (Nachteil: Testtreiber für übergeordnete Komponenten nötig)
  • Adhoc: (Nachteil: Platzhalter und Testtreiber nötig)
  • Backbone: Aufwändiger Backbone (Sekleton) für das gesamte Programm nötig

 

Systemtest

  • Testumgebung
  • Was getestet
  • Spezielle Tests
  • Ziel

  • Testumgebung muss möglichtst einer Produktivumgebung entsprechen!
  • Separate Testumgebung nicht Produktivumgebung

Was 

  • Prüfen des integrierten Systems aus Sicht des Kunden
  • System- und Anwenderdokumentation überprüfen
  • Konfigurationseinstellungen prüfen
  • Last- und Performanztests

Ziel: 

  • Fehler und Mängel aufdecken

Abnahmetest

  • Verantwortlich
  • Testumgebung
  • Formen der Abnahmetests

Verantwortlich: Der Kunde

Testumgebung: Beim Kunden; Jedoch nicht die Produktivumgebung um laufendes Geschäft nicht zu gefährden

Formen

  • Test auf vertragliche A (Entwicklungsvertrag + Gesetzliche Vorschriften, Normen; Sicherheitsrichtlinien)
  • Test der Benutzera (Falls Kunde und Anwender unterschiedliche Personengruppen
  • A durch Systembetreiber: System betreibbar (Backup, Systemneustart, Benutzerverwaltung...)
  • Feldtest (Beta-Test beim Kunden)

 

Typische Wartungsanlässe

  1. Neu Einsatzbedingungen (bdsp anderes OS)
  2. Kundenwünsche
  3. Seltene Funktionen / Sonderfälle machen Problemem
  4. Sporadische Ausfälle

Testen bei 

  • ...Softwarewartung
  • ... Weiterentwicklung
  • ... Inkrementeller Entwicklung
  •  

  • ...Softwarewartung: Alle neuen/geänderten Funktionen + Regressionstest
    • Hotfixes: Minimale Tests -> Weitere im Nachgang
  • ... Weiterentwicklung: Alle neuen/geänderten Funktionen + Regressionstest
  • ... Inkrementeller Entwicklung: Alle neuen/geänderten Funktionen + Regressionstest

Grundlegende Testarten (im SW-Lebenszyklus)

 

  • Funktionaler Test (Blackbox)
  • Nicht funktionaler Test
  • Struktur Test (Whitebox)
  • Änderungsbezogener Test (alles Neue testen + Fehlernachtests (im Release behobener Fehler prüfen) + Regressionstests)
  • Regressions-Test (nach Änderung bestehende Funktionalität prüfen)
    • Testautomatisierung!
    •  

Warum bei System und Abnahmetest nicht in Produktivumgebung des Kunden?

  • Schädlich für Produktivumgebung da Fehler auftreten werden
  • Tests nicht mehr reproduzierbar, da Kundenumgebung laufend angepasst wird

Modelle für unabhängiges Testen une Einsatz bei

  • Komponententest
  • Integrationstest
  • Systemtest

  1. Entwickler testen gegenseitig
  2. Entwickler abstellen für Testen
  3. Dediziertes Testteam innerhalb Projekt
  4. Zeitweise unabhängige Tester heranziehen
  5.  Separate Test-Organisation (Testlabor)
  • Komponententest: 1,2
  • Integrationstest: 1,2 - bei grösseren Vorhaben 3-5
  • Systemtest: 3,4,5

Testmanager 

  • Aufgaben

  • Testpolitik
  • Testkonzept
  • Testressourcen
  • Auswahl Testwerkzeuge + Organisation
  • Optimierung Prozesse
  • Metriken anwenden
  • Testabschlussbericht erstellen und kommunizieren

Testdesigner

  • Review Req -> Testfälle erstellen
  • Testspezifikation
  • Testdaten

Testautomatisierer

  • Aufgaben

  • Sehr gute Kenntnisse der Testwerkzeuge
  • Programmierung

Testadministrator

  • Aufgaben

  • Installation und Betrieb Testumgebung

Tester

  • Aufgaben

  • Review Testpläne und Testfälle
  • Anwendung Testtools
  • Ausführung und Protokollierung von Tests + Dokumentation Resultate

Rollen im Testprozess

  • Testmanager
  • Testdesigner / Testanalyst
  • Testautomatisierer
  • Testadmin
  • Tester

Typische 

  • Eintrittskriterien
  • Ausgangskriterien

Eintrittskriterien

  • Testumgebung einsatzbereit
  • Testwerkzeuge bereit
  • Testobjekt in Testumgebung einsatzbereit
  • Testdaten bereit

Ausgangskriterien

  • erreichter Testumfang: bsp TestÜberdeckung, überdeckte Anforderungen...
  • erreichte Produktqualität: bsp. Fehlerschwere, Zuverlässigkeit, Fehlerdichte
  • verbleibendes Risiko: nicht gelaufene Tests, nicht behobene Defekte...
  • wirtschaftliche Rahmenbedingungen: Kostenrahmen, Projektrisiken, Liefertermin, Marktchancen

Wahl der Teststrategie

  • Einflussfaktoren

  • Vorbeugender vs. reaktiver Ansatz
  • Analytischer vs heuristischer Ansatz (Erfahrungswissen)
  • Testen und Risiko

Risiko

Risiko = Schaden + Schadenswahrscheinlichkeit

Projektrisiken

  • Bedeutung
  • Beispiele

Projektrisiko sind Risiken, welche die Fähigkeit des Projekts das Produkt abzuliefern bedrohen

bsp:

  • Lieferanten-Risiken: Ausfall, Vertragsstreitigkeiten
  • Organisationsbezogen: Ressourcenknappheit; Machtpolitische Rangeleien; Zischenmenschliche Probleme
  • Technische Risiken: Nicht umsetzbare Anforderungen; Unbekannte Technologien / Werkzeuge / Programmiersprachen (-> Verzögerungen); Schlechte Qualität der Spez

Teststatusbericht

  • Testobjekt, Teststufe, Testzyklusdatum
  • Testfortschritt: Anz. Tests
  • Fehlerstatus: Anz Fehler (neu, offen, korrigiert)
  • Risiken
  • Ausblick: Planung
  • Gesamtbewertung: Subjektiv
  •  

Fehlermanagement

  • Wichtigster Baustein

Fehlerdatenbank 

Fehlerklassifikation

Fehlerschwere + Fehlerbehebungspriorität

Konfigurationsmanagement

  • Typische Symptome bei unzulänglichem KM 
  • Anforderungen an KM

Typische Symptome bei unzulänglichem KM 

  • Korrekturen werden gegenseitig überschrieben (Entwicker)
  • Integrationsarbeiten behindert, da verschiedene Versionen der SW / Werkzeuge verwendet werden
  • Fehleranalyse erschwert, da unklar welche SW-Version / Konfiguration eingesetzt wurde 
  • Test und Testauswertung behindert, da unklar Zuordnung von Testfall zu SW-Version

Anforderungen an KM

  • Versionsverwaltung
  • Konfigurationsverwaltung
  • Statusverfolgung von Fehlern

Zweck / Absichten für Testwerkzeuge

  • Verbesserung der Effizienz: statische Analyse
  • Bewerkstelligen von Tests: Performance- und Lasttests
  • Verbesserung der Zuverlässigkeiten: Vergleich von grossen Datenmengen durch Automatisierung

Zuverlässigkeit

Definiertes Leistungsniveau über einen definierten Zeitraum mit festgelegten Bedinungen halten

Verifizierung vs Validierung

Verifizierung: Prüfung gegen ein vorgängige Spezifikation 

Validierung: Prüfung gegen die ursprüngliche Anforderung

Lasttest

vs Performanztest

vs Stresstest

Lasttest: Systemverhalten bei steigender Last

Performanztest: Messung Verarbeitungszeit / Antwortzeit für bestimmte Anwendungsfälle i.R. mit steigender Last

Stresstest: Systemverhalten bei Überlast

Testfälle priorisieren

  • Kriterien

  1. Nutzungshäufigkeit
  2. Fehlerrisiko
  3. Wahrnehmung
  4. Prio der Anforderung
  5. Wichtige Qualitätsmerkmale
  6. Komplexität
  7. Projektrisiko

Study