23
SW Test (Subject) / Software Lebenszyklus (Lesson)
-Testen in Softwareentwicklungsmodellen
-Teststufen
-Test neuer Produktversionen
-Übersicht der Testarten
This lesson was created by ray1.
Advertisement
- Testsufen in V-Modell Komponententest: prüft, ob jeder einzelne Softwarebaustein (Komponente) für sich die Vorgaben seiner Spezifikation erfüllt. Integrationstest: prüft, ob Gruppen von Komponenten wie im technischen Systementwurf vorgesehen zusammen spielen. (Zusammenspiel, Schnittstellen) Systemtest: prüft, ob das System als Ganzes die spezifizierten Anforderungen erfüllt. (Funktionale und nicht Funk..Anforderungen) Abnahmetest: prüft, ob das System aus Kundensicht die vertraglich vereinbarten Leistungsmerkmale aufweist.
- Was ist eine Komponente ? Einstelliger testfähiger teil einer Software z.b. Methode, Klasse, Modul. kann bei funktionalen und nicht funktionalen Anforderungen zum einsatz kommen
- Charakteristika u. Gemeinsamkeiten von Teststufen ? -allgemeine Ziele-Arbeitsergebnisse, von denen die Testfälle abgeleitetwerden (also die Testbasis)-Testobjekt-typische Fehlerwirkungen und –zustände, diegefunden werden sollten-Anforderungen an den Testrahmen undWerkzeugunterstützung-Verantwortlichkeiten
- Was wird bei Komonententest geprüft ? -Funktionales Verhalten– Nicht-Funktionales Verhalten -Ressourcenverwendung -Robustheitstests -Struktureller Tests (z. B. Entscheidungsfindung) -Einhaltung von Programmierstandards (sind Klammern in eigener Zeile, Variablen Namen sinnvoll u verständlich) -Performancetest
- wie wird bei Komponenten getestet ? durch Isoliert vom Rest des Systems.durch Benutzung von Platzhaltern, Treibern und Simulatoren.im idialfall zur simulation benutzt man Test-Driven Development (TDD).
- was wird in Integrationstest getestet? Testobjekte wie: Subsysteme (wenn diese teilsysteme zusammen gesteckt werden damit sie als ein laufen, dies ist auch schon ein Integrationstest)Datenbankimplementierung (Daten werden in DB gespeichert)Infrastruktur Schnittstellen (typisch für integrationstest)Systemkonfiguration und Konfigurationsdaten– Funktionales Verhalten– Nicht-Funktionales Verhalten
- Wogegen wird bei Integrationstest getestet ? Software- und SystementwurfArchitekturNutzungsabläufe/WorkflowsAnwendungsfälle (use cases)
- Was wird in Systemtest getestet ? -das gesamte verhalten eines Systems – Typische Testobjekte Arbeits- und Geschäftsprozesse Anwendungsfälle System-, Anwender- und Betriebshandbücher Systemkonfiguration und Konfigurationsdaten– Funktionale Anforderungen– Nicht-funktionale Anforderungen
- Wie wird in Systemtest getestet ? -Testumgebung sollte der Produktivumgebung nahe kommen Spezifikationsorientierte Testentwurfsverfahren (Black Box)• Anforderungsbasierter Test• Geschäftsprozessbasierter Test• Anwendungsfallbasierter Test White Box test kommt eher selten vor (wenn man z.b. jede Seite testen möchte): – Strukturbasierte Verfahren (White Box)• Z. B. zur Testüberdeckung einer Menüstruktur
- wogegen wird bei Systemtest getestet ? -System- und Anforderungsspezifikation-Anwendungsfälle (Use Cases)-Funktionale Spezifikation-Risikoanalyseberichte
- Advertisement
- was wird in Abnahmetest getestet ? Es wird nicht mehr nach Fehlern gesucht. Vertrauen in System gewinnen beim Kunden Wartungstest, Betriebstest,
- Wogegen wird bei Abnahmetest getestet ? – Benutzeranforderungen– Systemanforderungen– Anwendungsfälle– Geschäftsprozesse– Risikoanalyseberichte
- Wie wird in Abnahmetest getestet ? durch Anwender Betrieblicher Abnahmetest (durch SysAdmin, durch Wiederherstellung, Last- Performancetest) Alpa(findet beim Hersteller statt (kontrolierte Bedingung)) und Beta -Test (Feldtest) Abnahmetest kann jederzeit stattfinden und muss nicht erst am ende des Projektes
- Testgetriebene Entwicklung (test driven development) ? Ein Entwicklungsvorgehen bei dem die Entwicklung der Testfälle und oft auch ihre Automatisierung vor der Entwicklung der Software erfolgen. Anmerkung: zuerst wird der Test „programmiert“ (make it red), dann der Code geschrieben (make it green) und dann der Code refactored (make it blue))“
- Testen von Struktur und Architektur von SW ? ist ein Strukturbasierter Test
- Was ist ein Funktionaler Test ? Prüft, was das System leisten kann. Gehört zu BlackBox. ist definiert durch: AnforderungsspezifikationAnwendungsfälleFunktionale SpezifikationUndokumentiert Ausgangskriterien und Testfälle werden aus denfunktionalen Anforderungen hergeleitet-In allen Teststufen
- Was prüft ein Nicht-Funktionaler Test ? Prüft wie das System arbeitet. Auch Blackbox. Tests zur Messung von Charakteristiken des Systems u. SW. PerformanztestLasttestStresstestBenutzbarkeitstestWartbarkeitstestZuverlässigkeitstestPortabilitätstest
- was ist Strukturbasierter Test ? Innerer Ablauf der Testobjekte (Whitebox) (beim arzt zb. Röntken)• Ergänzung zu den spezifikationsorientiertenTestentwurfsverfahren• Beurteilung der Testüberdeckung– Maß dafür, inwiefern eine Struktur durch eine Testsuite geprüftbzw. ausgeführt wird– Prozentualer Anteil der überdeckten Elemente• In allen Teststufen– Meist im Komponenten- und Komponentenintegrationstest– Kann auch auf der Systemarchitektur aufbauen (z.B.Aufrufhierarchie, Geschäftsmodelle, Menüstrukturen)
- Wartungstest ? Modifikation des System/SW nach der AUSLIEFERUNG. (Fehlerkorektur, Performencverbesserung, zu andere Umgebung hinzufügen) Er kann in allen Teststufen und für alle Testarten durchgeführt werden.
- Testüberdeckung ? x Bei z.b 100 Entscheidungen und 100 Test hat man eine 100% Testüberdeckung. Kann in allen Teststufen gemacht werden, am ehersten in Kompo und Intetrationstest.
- Größe des Regressionstest bestimmen den man testen sollte? durch überprüfen wie viele Änderungen es gab * Risiko für eine neue Fehlerwirkung. Was mit Junit gemacht wird gehört zu Regress.. -Vor Regressionstest sollte ein Auswirkungsanalyse durchgeführt werden
- Robustheitstest ? wie reagiert ein System auf unerwartete reaktioen. Wie funktioniert die HW bei hocher Temperatur.
- Teststufen ? Teststufen sind die einzelnen Stufen auf dem V-Model wie Komponententest, Integrationstest....