|
|
## Lerntagebuch
### Übung 1 2.11.2022
### Lernziel
#### Übung 2 7.11.2022
einen ssh-key erstellt öffentlichen Schlüssel zu gogs hinzugefügt Branch erstellt
### Übung Debugging 16.11.2022
#### Übung 3
clone link https://gogs.informatik.hs-fulda.de/Programmiermethoden_und_werkzeuge-public/UebungDebugging.git
**Task 1 Uebung 1** - Nachdem Aktivieren Sie die Zeilen 36 bis 38 durch entfernen der beiden *slashes*. **Ausgaben sind:** enter an integer number: 5 - input: 5, Schleifenvariable: 2, Ergebnis 1 - input: 5, Schleifenvariable: 3, Ergebnis 2 - input: 5, Schleifenvariable: 4, Ergebnis 1 - number 5 passed check: true%
enter an integer number: 34 - input: 34, Schleifenvariable: 2, Ergebnis 0 - number 34 passed check: false%
enter an integer number: 89 - nachdem schleifen es gibt - number 89 passed check: true%
Nachdem einen Breakpoint an ziele 35 und zahl 45 eingeben es gibt - die Inhalte der Variablen sind nextInt: 45, i:2, ergebnis:1
Nochmal lauft das Programm im Debug-modes und eingeben zahl ist 47 - die Inhalte der Variablen sind nextInt: 47, i:2, ergebnis:1 dann nextInt: 47, i:3, ergebnis:2 - am ende nextInt: 47, i:46 Ergebnis:1 check: true
**Task 2 Uebung 2**
Öffnen Sie das programm `Uebung2.java` im Editor - Starten Sie das Programm mehrfach (*"run as Java Application"*) und geben Sie verschiedenen natürliche Zahlen ein.
- **natürliche zahlen sind 45, 14, 89 ergebnis sind False ingesamt**
- setzen Sie einen BreakPoint in Zeile 40 - Starten Sie das Programm wie bisher - Starten Sie das Programm im Debug-Modus und geben Sie die Zahl 45 ein - Notieren Sie die Inhalte der Variablen (this) nextInt: 23 - this: **Uebung2@8** - count: **3** - Notieren Sie die Anzahl der Einträge in der *Debug View* (this): **this, count, in, out in total 4 mit Zwischenüberschritt**
- in welcher Zeile steht der Debugger? 34->36 - Notieren Sie die Anzahl der Einträge in der *Debug View* (this) - nextInt: **45**, count: **2**
- in welcher Zeile steht der Debugger? **40** - Notieren Sie die Anzahl der Einträge in der *Debug View* (this) false - nextInt: **16**, count: **4** ergebnis: **false**
**Beenden Sie den Debugger (*"Terminate"*)**
### Uebung 4 23.11.2022
#### Source Code Management (SCM)
**Lokale Respository** 1.1 Stage und Historic 1.2 Merge 1.3 rebase
**Git Respositoty changes**
#### Vorlesung 07.12.2022
##### Test
**Testmethodoligie - Bestandteile eine Tests**
- Stichprobe - Testfälle - Testdaten - Testobekt - Testumgebung - Testziel - Soll-/Ist- Wertvergliech
**Testziele**
- Fehler aufzeigen - Qualität erfassen - Vertrauen erhöhen - Grenzen ermitteln
**Testebenen**
- Anwendung/System - Teilsystem/Modul - Codeebene/Unit
**Testpyramide**
- GUI Tests (end to end tests) business logik überprufen, functions und kommiunikation mit anderen components überprufen. - Integration tests
- Component / Contract Tests - Unit Tests
**Testnamen**
Test werden benannt nach: - Ziel (Integration Test, Lasttest) - Methode (Regressionstest) - Testgegenstand (UI-test, Module-test, Unit-test) - Level (Systemtest) - Personen (Entwicklertest, Anwendertest) - Testabdeckung (Komplettest, partieller Test)
**Qualitätskosten**
- High Cost -> Poor Quality -> Failure Costs - High Cost -> Exceptional Quality -> Sweet Spot (prevention & Appraisal Cost) - Low Cost -> Exceptional Quality -> prevention & Appraisal Cost
**Testprozess**
**Testprozess - Ablauf**
**Testprozess - Plannung**
**Testprozess - Analyse & design**
- basiert auf Anforderungsdokumentation - Testspezifikation - Testfaelle - Kritikalitaet - Testdaten - Testumgebung - Ausfuehrungsreihenfolge - Infrastruktur - Testkriterium
**Testprozess - Testausfuerung**
Testlog - aufgetretenes Fehlverhalten - Fehlerkategorie (high/medium/low)
**Testprozess - Testnachbereitung**
- Testreport - Zusammenfassung Testausfuehrungen - Vergleich mit frueheren Testlaeufen - Entscheidung ueber Lieferfaehigkeit
|