C# 02: Clean Test C#
Practical Unit Test Course for C# programmers

You are a C# programmer and want to write structured and high-quality unit tests for your code? You want to test databases, foreign APIs and foreign code? You want to recognize bad and useless unit tests right away and turn them into good unit tests using proven patterns? Or you finally want to know how Test-Driven-Development looks like in practice and how you can use TDD in a reasonable way? Then look no further. The C# Unit Testing practical seminar is ideal for all C# programmers who want to learn unit testing in an efficient and practical way using clear examples and tasks, so that they can test C# code cleanly and improve it significantly. Learn more about this C# Unit Test practical training...

Benefits

  • Quick and effective introduction to Unit Test with C#
  • Practical introduction to Test-Driven-Development (TDD)
  • Best practices for Testable Design, Clean Test and Test Smell
  • Advanced techniques like Test Double in C#
  • Significantly improve code quality through good testing

Using many examples and tasks, you will learn the most important C# testing frameworks as well as advanced techniques such as TDD from a practical point of view and how you can successfully use them in your current C# project. You will also learn the golden rules for clean test and code and how to apply them. You will improve the quality and quality of your C# production code and thus shorten the development time.

Course formats

1-DAY CRASH COURSE

Live-Training

Live oder online large

Teaching material

Lehrmaterial

Video-Clips

Video clips
3-DAY INTENSIVE COURSE

Live-Training

Live oder online large

Teaching material

Lehrmaterial

Catering

Snacks large
4-WEEK TRAINING PROGRAM

Live-Training

Online large

Teaching material

Lehrmaterial

Video-Clips

Video clips

All courses also include unlimited access to our member area with many more videos, tutorials and information about coding.

Contents

The course covers a selection of the following topics:

  • Why Unit Test?
  • xUnit, nUnit, MSTest
  • Test Structure
  • Name Conversion
  • Test Lifecycle
  • Test data
  • Equivalence partitioning
  • Annotations
  • Assertions
  • Parameterized Tests
  • Test Double
  • Clean Test Rules

For more details, please see the agenda below.

Prerequisites

The C# Unit Testing course is licensed and optimized for people with basic C# knowledge, at least to the extent of our C# course for beginners.

The course is suitable for software developers and architects, but also for testers and product owners, as they will gain the appropriate know-how, how it looks like behind the testing frameworks, how to realize a clean software architecture with TDD and how to test foreign APIs or databases with Test Double. These topics are not only interesting for software developers.

  • Individuell: wir gehen gezielt auf Dich ein und berücksichtigen Deine Vorkenntnisse, Wunschthemen und Schwerpunkte

  • Strukturiert und leicht verständlich

  • Bringe deine Karriere, Studium oder Ausbildung auf die nächste Stufe: mit Zertifikat

  • Sicher und eigenständig Programme entwickeln (ob privat, beruflich oder für dein Startup)

  • Viel, viel, viel Praxis: sofort anwendbare Ergebnisse

  • kleine Gruppen: max. 8 Teilnehmer im 3-Tages-Kurs max. 15 Teilnehmer im Online-Coaching

  • Von Experten nach der Raed- Methode® entwickelt & auf die Anforderungen von Tech-Unternehmen im Jahr 2020 ausgerichtet

  • E-Mail-Support auch nach Ende des Kurses

Description

This three-day C# unit testing course provides a comprehensive introduction to unit testing for C# applications and is intended for all C# programmers who want to test their own or others' code. Unit tests allow you to verify that your code does exactly what it is expected to do. It has been proven that unit tests improve the quality of programming code. This is because writing tests requires a close look at the production code, and it is not uncommon for errors (bugs) and better solutions to be discovered. Participants will get an overview of the popular C# testing frameworks xUnit, nUnit and MSTest. The xUnit framework is then presented in more detail and participants learn how to write efficient tests in many practical examples.

What do you learn on the first day?

You will learn how to write your first C# unit testing program. We start slowly and look at the should/actual principle of testing frameworks. You will learn how the test structure should look like, how you should name your test methods and how you can find the test data. Equivalence classes and boundary value techniques are useful for this. You master the syntax and semantics of C# Unit Test. After this day you can already write and apply good unit tests for your C# code.

What do you learn on the second day?

On the second day you will learn more advanced techniques with xUnit framework. For example, you will learn how to write parameterized tests. You will also learn how to use Test Double techniques to test database and third-party APIs by simulating their code. For this there are the 5 Test Double techniques. Test Double is a collective term for 5 techniques: Dummy, Fake, Stub, Spy and Mock. You will learn how to use these techniques with the xUnit test frameworks.

What do you learn on the third day?

The last Unit Testing training with C# is about how to write good tests. Here you will learn the SOLID principles for testable design. After that we look at the Test-Driven-Development (TDD) technique. TDD implements the "test first: test code before production code" approach. TDD slows down the development speed in the beginning, but later it catches up massively in speed and is definitely more advantageous than writing the tests afterwards. Because Clean Code is also largely based on writing Unit Tests before Production Code and therefore you have to think about the Production Code in a fundamental way! You will also learn the important rules for writing meaningful and good tests and the best practices. This will help you to recognize the so called "Test-Smells".

Test smells is a term for bad tests, which bring more disadvantages than advantages. Here is a long catalog for it, which divides the Test-Smells into 3 categories and with each category there are quite a few Test-Smells cases. We will take a look at the most important test smells and how we can turn such bad tests into good tests.

YOUR TRAINERS

The Unit Test course for C# programmers is conducted by one of the following trainers:

CERTIFICATE

Of course, as a participant in the C# Unit Test course for programmers you will receive a certificate. The prerequisite for this is the complete participation in all course units and programming tasks and the successful programming of a small final project. However, after this intensive C# Unit Testing training you will have more fun than stress.

AGENDA

The agenda is written in English due to the numerous technical terms. Descriptions and course material are in German. You can book the course either in German or English.

All seminar contents are individually adapted to the wishes of our participants. They can vary depending on the level of knowledge and are defined together with the seminar leader on day 1. In this C# unit test seminar you can choose from the following topics:

C# Unit Testing Day 1

Introduction:

  • Test Motivation
  • Test Frameworks
  • xUnit
  • nUnit
  • MSTest

Generic Rules:

  • Test Structure
  • Test Life Cyce
  • The AAA-Rule
  • Name Conversions
  • Test Data
  • Happy Path
  • Exception Path
  • Equivalence classes
  • Test Strategy

xUnit in Details

  • Annotations
  • Assertions

C# Unit Testing Day 2

Test Double

  • Motivation
  • Testing Database?
  • Dummy
  • Fake
  • Stub
  • Spy
  • Mock

Parameterized Test

  • Why Parameterized Test?
  • Syntax and Semantic
  • Parameterized Test in Action

C# Unit Testing Day 3

Test Driven Development

  • Motivation
  • RED
  • GREEN
  • REFACTORING
  • Baby Steps
  • TDD Advantages

Testable Design

  • SOLID Principle
  • Single Responsibility
  • Open Close
  • Liskov Substitution
  • Interface Segregation
  • Dependency Inversion

Clean Test

  • Clean Test Rules
  • Test Readability
  • Test Maintainability
  • Test Trustworthiness
  • Test Smells Catalog

Course formats / dates

1 Day Crash Course

In München oder Online

3 Days Course

In München oder Online

4-Wochen-Training

€1,876.00
Participation possible at any time

4-Wochen-Training copy

€899.00
Participation possible at any time

For teams

Are you interested in a course for your team? Get in touch - we will find a perfect solution. Our professionals are also happy to come to you. Among other things, we offer:

  • In-house training
  • Technical coaching
  • Consulting
Request Request

Questions & Service

Our service team will be happy to advise you personally. Mon-Fri from 9.00 to 18.00 under:
+49 89 17958-820
info@coding-academy.com

References

BMW Apple Draeger VW Sky Siemens 2000px TÜ V Süd Logo Agfa Kopie Samsung Fraunhofer Valtech Deutsche Bank
Course Catalogue Overview of rocket courses: