Testing


L. S.
Diese Lernkarten bieten einen umfassenden Einblick in die Grundlagen des Software-Testings, einschließlich verschiedener Testmethoden wie Unit-, Integration- und Systemtests. Sie decken Themen wie Abhängigkeitsmanagement, Testorakel, Testattribute und Testmuster ab, die für Entwickler und Tester von Interesse sind. Die Karteikarten helfen dabei, die Qualität von Software zu sichern und Fehler frühzeitig zu identifizieren, was besonders für Entwickler und QA-Engineers nützlich ist.
Cartes-fiches
56
Utilisateurs
5
Langue
Allemand
Catégorie
Informatique
Niveau
Autres
Créé / Mis à jour
15.03.2023 / 16.01.2025

Cartes-fiches

Was darf ein Testorakel niemals sein?

Der Code Selber

Welche Testarten gibt es?

• Funktionale Tests
    ▪ Von aussen sichtbare Ein-/Ausgabeverhalten
• Nicht funktionale Tests
    ▪ In welcher Qualität
• Anforderungsbezogener und strukturbezogener Test
    ▪ Kontrollfluss innerhalb von Komponenten
• Änderungsbezogener Test
    ▪ Softwarewartung und –pflege
    ▪ Testen nach Weiterentwicklung
    ▪ Regressionstest

Was ist ein Statischer Test?

- Prüfmethode, bei der das Testobjekt nicht mit Testdaten versehen oder ausgeführt wird

Was ist ein dynamischer Test?

- Testobjekt wird mit Eingabedaten versehen und ausgeführt

Was ist das Black-Box-Testing?

- Es werden Tests Anhand der Spezifikation/Anforderung entwickelt

- die Tests werden ohne Kenntnisse über die innere Funktionsweise/Implementierung des zu testenden Systems entwickelt

- Es fliesst nur nach aussen sichtbares Verhalten in den Test ein

Was ist das White-Box Testing?

- Tests werden mit Kenntnissen über die innere Funktionsweise des zu testenden Systems entwickelt

- der Test wird am Code geprüft, da der Einblick auf den Quellcode gestattet ist

- Quellcodeteile mindestens einmal zur Ausführung bringen

Was versteht man unter dem Refactoring von Legacy Code?

Code ohne Tests

Was ist eine Äquivalenzklasse?

- Methode zur systematischen Bestimmung von testfällen

- Identifizierung von Ein- und Ausgabebedingungen

Was wird mit dem Big Bang ansatz verfolgt?

- zuerst alle Module/Komponenten entwickeln und erst dann das gesamte System auf einmal testen. (Testing beginnt sehr spät)

Was wird mit dem Top-Down ansatz verfolgt?

- Entwicklung beginnt beim Aufrufer z.B. UI

- alles, was noch nicht vorhanden ist, wird durch einen Stub ersetzt

Was wird mit dem Bottum-Up ansatz verfolgt?

- Entwicklung beginnt bei der aufrufbaren Komponente

- Aufrufer wird durch einen Treiber ersetzt

Was wird mit dem Sandwich ansatz verfolgt?

- Entwicklung kann in der Mitte beginnen, wenn die Aufrufer- und aufzurufenden Komponenten noch nicht entwickelt sind

Was ist ein Abhängigkeitsgrad?

- Anzahl Abhängigkeiten innerhalb der Komponenten (Wie viele Abhängigkeiten man aufbrechen muss, um die Klasse testen zu können)

Was ist CI/CD?

Continuos Integration / Continuos Delivery

Für schnellers Feedback von automatisierten Tests um die Qualität der Software zu sichern.

Push zu VCS Version Control System (Git, usw)

Builden, Testen

Feedback bei Fehlschlag

Alles OK = Deployment

Was ist ein Singleton?

Ein Singleton ist ein Entwurfsmuster, das sicherstellt, dass eine Klasse nur eine einzige Instanz hat und einen globalen Zugriffspunkt darauf bietet. Es wird verwendet, um sicherzustellen, dass in einem System nur eine einzige Instanz einer Klasse existiert, was bei Ressourcen wie Datenbankverbindungen oder Loggern nützlich sein kann.

Erkläre die 7 Grundsätze des Software-Testing

  1. Testen zeigt die Anwesenheit von Fehlerzuständen
  2. Vollständiges Testen ist nicht möglich
  3. Frühes Testen spart Zeit und Geld
  4. Häufung von Fehlerzuständen
  5. Vorsicht vor dem Pestizid-Paradoxon
  6. Testen ist kontextabhängig
  7. Trugschluss: Keine Fehler bedeutet ein brauchbares System

Étudier