Java Workshop - Einführung in die Testgetriebene Entwicklung mit JUnit (openHPI)

Java Workshop - Einführung in die Testgetriebene Entwicklung mit JUnit (openHPI)

Probieren ist gut, testen ist besser. In der Regel weiss man, was ein Programm tun soll bevor man es schreibt. Warum nicht gleich die Bedingungen nach denen es funktionieren soll in Code fassen, der überprüft ob die Vorgaben auch erfüllt werden? Um dies zu tun gibt es eine Reihe spezialisierter Frameworks die das auf verschiedene Weisen sicher stellen. In diesem Workshop wollen wir uns auf das Unit Testing mit JUnit konzentrieren. Unter Unit Tests versteht man Tests die kleine abgeschlossene Code-Einheiten, wie z.B. Klassen oder Methoden auf korrekte Funktionalität prüfen.

Grundkenntnisse der Objektorientierten Programmierung in Java und der Eclipse IDE werden vorausgesetzt. Der Kurs "Java für Einsteiger" sowie der "Workshop Einführung in eine Java- Programmierumgebung (IDE)", stehen im openHPI-Archiv zur Auffrischung der Java Grundkenntnisse zur Verfügung.

Woche 1:
Was ist der Unterschied zwischen Ausprobieren und Testen? Wie unterscheiden sich verschiedene Test Typen und Test Level? Was testet man und wo ist der Aufwand im Vergleich zum Gewinn zu hoch? Welche Frameworks gibt es und wofür werden sie benutzt? Welche Mechanismen und Konzepte bietet das JUnit Framework? Wie schreibe ich einfache Tests mit und ohne Unterstützung eines Frameworks? Wie binde ich meine Tests in ein Software-Projekt ein?
Woche 2:
Warum reicht ein Test pro Funktion meist nicht aus? Was sind Grenzfälle? Welche Hilfsmittel gibt es um Tests "lesbarer" zu gestalten? Was ist zu beachten wenn mein Projekt Daten z.B. aus einer Datenbank oder einem Web-Service benutzt? Wozu braucht man Test-Doubles? Worin unterscheiden sich Fixtures, Mocks, Stubs und Dummies? Was ist Testabdeckung?

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Programmieren lernen mit Python - Schulversion (openHPI) OpenHPI
Hasso-Plattner-Institut

Programmieren lernen mit Python - Schulversion (openHPI)

Dieser Kurs ist offen für alle, richtet sich aber in erster Linie an Schüler:innen. Alle, die schon immer in die Welt des Programmierens hineinschnuppern wollten oder schon erste Erfahrungen in der Programmierung gesammelt haben, sind herzlich willkommen. In 4 Modulen (14 Wochen) beschäftigen wir uns auf spielerische Art und Weise mit der Programmiersprache Python und vertiefen das neue Wissen mit vielen praktischen Beispielen. Der Kurs ist für Schüler:innen der Mittelstufe (ab der 7. Klasse) gedacht und lässt sich wunderbar in den Unterricht integrieren.

Feb 27th 2023
13-24 Weeks
Algorithmen und Datenstrukturen mit Detektiv Duke (openHPI) OpenHPI
Hasso-Plattner-Institut

Algorithmen und Datenstrukturen mit Detektiv Duke (openHPI)

Du hast bereits den Java-Kurs auf openHPI gemacht und die Einführung in Collections war dir zu schnell oder nicht detailliert genug? Du willst Datenstrukturen in Java besser kennenlernen? Du wolltest immer schon mal wissen, was eigentlich Iteratoren sind und welche Vorteile diese gegenüber von Schleifen haben? Welche Datenstrukturen für welche Anwendungsfälle schneller oder besser geeignet sind? Auch Duke und seinen neuen Assistenten Big O beschäftigen diese Fragen in ihrem aktuellen Fall und sie brauchen wieder mal Deine Hilfe! Begleite Duke und seine Freunde auf ihrer spannenden Reise durch die wunderbare Welt der Algorithmen und Datenstrukturen in Java. Spoiler: mehr Drama, mehr Action und höchstens ein Papagei.

Self Paced
Self-Paced
Creative Programming for Digital Media & Mobile Apps (Coursera) Coursera
University of London,Goldsmiths, University of London

Creative Programming for Digital Media & Mobile Apps (Coursera)

This course is for anyone who would like to apply their technical skills to creative work ranging from video games to art installations to interactive music, and also for artists who would like to use programming in their artistic practice. This course will teach you how to develop and apply programming skills to creative work. This is an important skill within the development of creative mobile applications, digital music and video games. It will teach the technical skills needed to write software that make use of images, audio and graphics, and will concentrate on the application of these skills to creative projects. Additional resources will be provided for students with no programming background.

Jun 22nd 2026
5-12 Weeks
Introduction to Programming with MATLAB (Coursera) Coursera
Vanderbilt University

Introduction to Programming with MATLAB (Coursera)

This course teaches computer programming to those with little to no previous experience. It uses the programming system and language called MATLAB to do so because it is easy to learn, versatile and very useful for engineers and other professionals. MATLAB is a special-purpose language that is an excellent choice for writing moderate-size programs that solve problems involving the manipulation of numbers.

Jun 22nd 2026
5-12 Weeks
Data Structures and Performance (Coursera) Coursera
University of California, San Diego

Data Structures and Performance (Coursera)

How do Java programs deal with vast quantities of data? Many of the data structures and algorithms that work with introductory toy examples break when applications process real, large data sets. Efficiency is critical, but how do we achieve it, and how do we even measure it? This is an intermediate Java course. We recommend this course to learners who have previous experience in software development or a background in computer science, and in particular, we recommend that you have taken the first course in this specialization (which also requires some previous experience with Java).

Jun 22nd 2026
5-12 Weeks
Objektorientierte Programmierung in Java - Schulversion (openHPI) OpenHPI
Hasso-Plattner-Institut

Objektorientierte Programmierung in Java - Schulversion (openHPI)

Dieser Kurs ist offen für alle, richtet sich aber in erster Linie an Schüler:innen. Alle, die schon immer in die Welt des Programmierens hineinschnuppern wollten oder schon erste Erfahrung in der Programmierung gesammelt haben sind herzlich willkommen. In vier Modulen (14 Wochen) beschäftigen wir uns mit den Grundlagen der Programmiersprache Java und der objektorientierten Programmierung und lösen gemeinsam mit Detektiv Duke einen mysteriösen Entführungsfall. Mit diesem Kurs möchten wir v.a. Schüler:innen der Oberstufe (Jahrgangsstufe 10-13) ansprechen.

Feb 27th 2023
13-24 Weeks
Interfacing with the Arduino (Coursera) Coursera
University of California, Irvine

Interfacing with the Arduino (Coursera)

Arduino senses the environment by receiving inputs from add-on devices such as sensors, and can control the world around it by adjusting lights, motors, and other actuators. In this class you will learn how and when to use the different types of sensors and how to connect them to the Arduino. Since the external world uses continuous or analog signals and the hardware is digital you will learn how these signals are converted back-and-forth and how this must be considered as you program your device. You'll also learn about the use of Arduino-specific shields and the shields software libraries to interface with the real world.

Jun 22nd 2026
4 Weeks
Building Scalable Java Microservices with Spring Boot and Spring Cloud (Coursera) Coursera
Google Cloud

Building Scalable Java Microservices with Spring Boot and Spring Cloud (Coursera)

"Microservices" describes a software design pattern in which an application is a collection of loosely coupled services. These services are fine-grained, and can be individually maintained and scaled. The microservices architecture is ideal for the public cloud, with its focus on elastic scaling with on-demand resources. In this course, you will learn how to build Java applications using Spring Boot and Spring Cloud on Google Cloud Platform.

Jun 23rd 2026
2 Weeks
Python for Data Science, AI & Development (Coursera) Coursera
IBM

Python for Data Science, AI & Development (Coursera)

Kickstart your learning of Python for data science, as well as programming in general, with this beginner-friendly introduction to Python. Python is one of the world’s most popular programming languages, and there has never been greater demand for professionals with the ability to apply Python fundamentals to drive business solutions across industries.

Jun 23rd 2026
5-12 Weeks