Testing of machine learning algorithms and models Auf maschinellem Lernen (ML) basierende Softwaresysteme werden zunehmend in verschiedenen Anwendungen eingesetzt. In vielen dieser Anwendungen hat ML Software außergewöhnliche Leistungen gezeigt aber auch katastrophale Ausfälle. In dieser Arbeit stellen wir Testansätze vor mit denen bestimmte Anforderungen überprüft werden können wobei die gesamte Pipeline von ML Systemen berücksichtigt wird. Zu diesem Zweck haben wir zunächst die Lernalgorithmen und dann die ML Modelle getestet. Für die Lernalgorithmen haben wir zunächst eine Eigenschaft vorgeschlagen und dann einen metamorphen Testansatz vorgestellt um sie zu testen. Für das Testen von ML Modellen haben wir einen Testansatz entwickelt der als eigenschaftsgesteuertes Testen bezeichnet wird um ML Modelle auf eine benutzerspezifische Eigenschaft zu testen die beim Testen verschiedener Eigenschaften für verschiedene Arten von ML Modellen verwendet wird. Machine learning (ML) based software systems are increasingly being used in several application domains. In many of those areas ML software has shown exceptional performances however it has also shown catastrophic failures. Therefore it is necessary to ensure that the desired requirements for these type of software are met. In this thesis we present testing approaches to check for specific requirements considering the entire pipeline of the ML systems. To this end we first considered testing the learning algorithms and then the learned models. For the learning algorithms we first proposed a property called balanced data usage and then presented a metamorphic testing approach to test it. Next for testing ML models we proposed a testing approach to test any given ML model for a user specified property. We termed this property driven testing approach which is used in testing diverse properties on different types of ML models.