Lerne, wie du deine Objective-C-Übungen auf Exercism testest
Exercism lädt nur eine Testdatei herunter. Die Header-Datei und die Quelldatei, die zur Übung gehören, musst du selbst anlegen. Du musst ein Xcode-Projekt mit der Testdatei, der Header-Datei (.h) und der Quelldatei (.m) erzeugen. Alternativ kannst du ein Test-Runner-Programm verwenden, das unten beschrieben wird.
Die Tests werden über Xcode ausgeführt.
Hinweis: Wenn du die Fehlermeldung „No visible @interface for ExerciseName declares the selector ExerciseSelector,“ bekommst, hast du die Schritte korrekt befolgt, aber noch nichts in deine Header- und/oder Implementierungsdatei geschrieben. Nachdem du deine Methode in der .h-Datei deklariert und in der .m-Datei definiert hast, sollten deine Tests hilfreichere Fehler melden, die dich beim Lösen der Übung voranbringen. Lies diese Einführung in Objective-C-Klassen für ausführlichere Informationen.
Eine Alternative zum manuellen Erzeugen der Projektdatei ist ein in Ruby geschriebenes Test-Runner-Programm, objc, das für dich eine Projektdatei mit der Testdatei, der Header-Datei und der Quelldatei anlegt.
$ gem install objc
Führe die Tests so aus:
$ objc -x ExerciseName
(Beachte das Flag -x/--xcodebuild, das festlegt, dass xcodebuild statt xctool verwendet wird. Letzteres funktioniert nicht mit den neuesten Xcode-Versionen.)
Das Programm objc verwendet den Übungsnamen, um die Testdatei ExerciseNameTest.m, die Header-Datei ExerciseName.h und die Quelldatei ExerciseName.m zu finden. Die Dateien werden in ein temporäres Xcode-Projekt eingefügt und dann wird xcodebuild verwendet, um die Tests für das Projekt auszuführen.
objc sorgt zwar dafür, dass du Xcode nie starten musst, um diese Übungen zu lösen, aber die Fehlermeldungen und das Feedback auf der Kommandozeile sind nicht so klar wie über die Benutzeroberfläche von Xcode.