- Dieses Schulungsmodul kann mit allen aktuellen Visual Studio-Versionen (z.B. 2022, 2019, 2017, 2015) entsprechend Ihren Wünschen durchgeführt werden.
- Als Programmersprache nennen Sie bitte in Ihrer Anfrage eine oder mehreren Sprachen aus dieser Liste: .NET-Sprache (C#, Visual Basic .NET), C++ und/oder JavaScript/TypeScript.
# Konzepte
Motivation für Unit TestsGrundkonzept Unit Testing Unittest vs. IntegrationtestWhite-Box-Test vs. Black-Box-TestUnit Testing versus Test Driven Development (TDD)Testfallfindung / User-Stories als Dreh- und Angelpunkt zur TestfallfindungTestmethodik und Testerstellung Der Zusammenhang von Refactoring und Testen Ermitteln der Testqualität durch Code-CoverageAnwendung von Stellvertreterobjekten (Dummy & Mock) Testdatenerstellung und -pflege Grenz- und Extremwerte Äquivalenzklassen Abgrenzung und Zusammenspiel von Unit Tests mit Integrations- und Systemtests Anwendung von TDD-Praktiken# Testarten
Unit TestsIntegrations TestsOberflächentestsDatenbanktestsHTTP-Tests (Web-UI und/oder Web-APIs)# Überblick über die Werkzeuge für Unit Testing und TDD
Unit-Test-FrameworksUnit-Test-RunnerWerkzeuge für Code CoverageMock-Objekt-Hilfsbibliotheken# Unit Testing in der Praxis
Testautomatisierung mit Werkzeugen (Werkzeuge nach Kundenwunsch/Vereinbarung)Erstellen einer Testumgebung Testgetriebenes DesignEntwicklung von testbarem Code ("Design for Testability": Verwendung von Abstraktion, Schichten, Pattern)Ermitteln der Testqualität durch Code-Coverage und Fehlerinjektion Mocking: Anwendung von Stellvertreter-Objekten (Dummy-Objekte) und die Gefahren dabeiDas Prinzip von Integration von in Continuous Integration (CD) und Continuous Delivery/Deployment# Testwerkzeuge in Visual Studio
Testframeworks für .NET/.NET Core: MSTest, Xunit, Nunit etc.Überblick über Visual Studio Unit Tests in Visual StudioTest ManagementManuelle TesterstellungAutomatische TestgenerierungTestverwaltungTestabdeckungTest Impact-AnalyseManuelle TestausführungOptional: Lab Management (Test auf virtuellen System)# Testwerkzeuge im .NET (Core) SDK
dotnet test# Testbare Architektur
Was macht eine testbare Architektur aus?Interfaces und MockingIoC-Pattern # Umgang mit Legacy-Code
Patterns und Anti-PatternsRefactoring-Strategien# Weitere Testszenarien
DatenbanktestsTesten von Weboberflächen mit SeleniumUI-Tests mit Appium und Windows Application Driver (früher: Coded UI Tests) von Windows Forms-, WPF-, UWP- und Xamarin-Anwendungen sowie Webanwendungen Anwendungen (Testen der Benutzeroberfläche - User Interface Testing)HTTP-basierte WebtestsLasttests (Leistungsmessungen)# Optional: Andere Werkzeuge zur Qualitätssicherung in Visual Studio
Statische CodeanalyseCodemetriken# Optional:
Anwendung von TDD-Praktiken auf Ihren eigenen Legacy CodeIntegration von Unit Test in Azure DevOps/Team Foundation Server (TFS) in Build- und Release-Prozesse (Continous Integration / Continous Delivery)