Ich habe mir viele Blogs angesehen und viele Dinge ausprobiert, um meine Swift-Komponententests in Xcode 6.0.1 (oder 6.1) zu verwenden. Ich versuche Klassen in meiner App Ziel zuzugreifen, damit ich diese Zeile geschrieben:Hinzufügen von Swift-Dateien zum Testen von Ziel- und Nicht-Einheitstests
var vc: LoginViewController!
Natürlich bekomme ich die „Verwendung von nicht deklarierten Typ‚LoginViewController‘“ Fehler.
Ich versuche dann, LoginViewController
zu meinem Testziel hinzuzufügen, aber dann bekomme ich "Verwendung von unaufgelösten Bezeichner" -Fehler auf anderen Klassen in meinem Projekt. Also versuche ich, diese Klassen zu meinem Testziel hinzuzufügen, aber ich am Ende mit einer scheinbar endlosen Fehlerquelle wie die Abbildung unten:
Deklarieren all meine Klassen als öffentliches, verursacht andere Fehler und scheint, wie schlechte Übung. Gibt es überhaupt Unit-Tests in einem Swift-Projekt, das auf vielen Frameworks und Klassen basiert? Ich möchte einfach mit etwas fast genau wie der Code in diesem article beginnen.
Überprüfen Sie die Zielmitgliedschaft. Wenn dies bereits geschehen ist, versuchen Sie, das Projekt zu bereinigen, abgeleitete Daten zu entfernen und XCode neu zu starten. –
Das hat bisher nicht funktioniert, das Hauptproblem, das ich jetzt mit Komponententests habe, ist die Verwendung eines statischen Frameworks von Drittanbietern. Das Hinzufügen von Klassen zum Testziel und das Aufrufen einer Funktion in diesem Framework führt zur Verwendung des nicht aufgelösten Bezeichners 'className' ' – tfrank377
Überprüfen Sie, ob Ihr Bridging-Header-Klassenverzeichnis sowohl im App-Ziel als auch im App-Testziel aufgeführt ist. –