Xcode unterstützt drei Haupttypen von Tests. Funktionstests konzentrieren sich auf die Funktionalität des Codes. Leistungstests konzentrieren sich auf die Messung der Ausführungszeit. User Interface Tests konzentrieren sich auf Flüsse durch die Benutzeroberfläche. Funktions- und Leistungstests sind Funktionen, die Sie schreiben. Jede Funktion richtet eine Umgebung für den Test ein, führt die Zielteile der App aus und reißt die Testumgebung ab. Benutzeroberflächentests sind Aufzeichnungen, die Sie während der Verwendung Ihrer App erstellen.
Die häufigste Art von Funktionstests ist Unit-Testing. Eine Codeeinheit ist die kleinste testbare Komponente Ihres Projekts— z. B. eine Methode in einer Klasse oder eine Reihe von Methoden, die einen wesentlichen Zweck erfüllen. Komponententests werden häufig verwendet, um Regressionen zu erkennen, die durch Codeänderungen an einem Projekt verursacht werden. Einige Entwickler schreiben zuerst Komponententests und implementieren dann Methoden, die die Tests bestehen.
Leistungstests messen die Zeit, die Ihre App benötigt, um eine Aufgabe auf verschiedenen Gerätetypen abzuschließen. Xcode verfolgt Zeiten für verschiedene Konfigurationen und Sie wählen Baselines aus gemessenen Werten.
Ein Testfall übt eine Codeeinheit auf eine bestimmte Weise aus oder misst einen bestimmten Teil der Leistung Ihrer App. Wenn das Ergebnis des Tests vom erwarteten Ergebnis abweicht, schlägt der Testfall fehl. Eine Testsuite besteht aus einer Reihe von Testfällen.
Wenn Sie ein Projekt oder ein Ziel erstellen, enthält Xcode ein Komponententestziel in dem Schema, das die App erstellt. Die Implementierungsdatei für das Ziel enthält Stubs für die Methoden setUp
tearDown
und testExample
. Führen Sie diese Stub-Implementierungen aus und fügen Sie nach Bedarf weiteren Code hinzu, um Komponententests für Ihre App durchzuführen.
Führen Sie alle Tests durch, indem Sie Product > Test . Klicken Sie auf das Symbol Test Navigator, um den Status und die Ergebnisse der Tests anzuzeigen. Sie können einem Projekt ein Testziel hinzufügen (oder einem Test eine Klasse hinzufügen), indem Sie unten links im Testnavigator auf die Schaltfläche Hinzufügen (+) klicken. Um den Quellcode für einen bestimmten Test anzuzeigen, wählen Sie ihn aus der Testliste aus. Die Datei wird im Quellcode-Editor geöffnet.
Um eine Testsuite auszuführen, klicken Sie auf den Pfeil rechts neben dem Namen. Um eine Teilmenge von Testmethoden auszuführen, wählen Sie diese im Testnavigator aus und wählen Sie Product > Perform Action > Run Test Methods. Um eine einzelne Testmethode auszuführen, klicken Sie auf den Pfeil rechts neben dem Methodennamen. Wählen Sie Product > Test, um alle Tests im aktiven Schema auszuführen.
Wenn ein Test erfolgreich ist, erscheint rechts neben dem Testnamen ein grüner Diamant mit einem Häkchen, das den Erfolg anzeigt. Wenn ein Test fehlschlägt, wird rechts neben dem Testnamen ein roter Diamant mit einem X angezeigt, das einen Fehler anzeigt, und das Problem wird im Problemnavigator angezeigt. Um das Problem anzuzeigen, klicken Sie auf die Schaltfläche Problemnavigator () in der Navigationsleiste.
Um nur die fehlgeschlagenen Tests anzuzeigen, klicken Sie auf die Schaltfläche Fehlgeschlagener Test () am unteren Rand des Testnavigators. Wählen Sie eine fehlgeschlagene Methode aus, um sie im Quellcode-Editor zu untersuchen. Nachdem Sie den Grund für den Fehler behoben haben, klicken Sie auf die Anzeige fehlgeschlagener Test (eine rote Raute mit einem X), um den Test erneut auszuführen.
Zeigen Sie verwandte Testmethoden in einem Assistenten-Editor an, indem Sie entweder die Kategorie Testklassen oder Testanrufer aus dem Popup-Menü des Assistenten auswählen.
Weitere Informationen zum Schreiben, Ausführen und Anzeigen von Tests finden Sie unter Testen mit Xcode.