Nicht verwenden können, Swift-Klassen innerhalb von Objective-C unit test
Ich habe diese Rezept um eine Swift-Klasse in einer bestehenden Objective-C-Projekt MyProject
. Das funktioniert auch.
Allerdings bin ich noch nicht in der Lage, verwenden Sie die gleichen Swift-Klasse im selben Projekt die unit-tests. Der compiler markiert die Zeile, wo meine Objective-C unit test sagt #import "MyProjectTests-Swift.h"
mit file not found
.
Wenn versucht, die änderung der test-target ist Product Module Name
von seinem Standardwert MyProjectTests
zu MyProject
wie vorgeschlagen, in einem Kommentar zu diese (unbeantwortete) Frage. Aber der compiler markiert nun die Zeile, wo meine Objective-C unit test sagt #import "MyProject-Swift.h"
mit file not found
.
Also wie kann eine Integration Swift Klassen in (XCTest) unit-tests geschrieben werden, die in Objective-C? Hat Apple bieten jedem Rezept?
- Duplikat von stackoverflow.com/questions/24932147/... ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als pro @SushiGrassJacob Kommentar (siehe hier) die folgende Funktion löst das Problem:
MyProject
undMyProjectTest
.Schritt-1
Gehen Sie zu Ihrem test-target > Build Settings - > Header Search Paths, und fügen Sie
$CONFIGURATION_TEMP_DIR/YourProject.build/DerivedSources
im es.Schritt-2
#import "YourProject-Swift.h"
Gehen Sie zu test-target > Build Settings - > Header Search Paths, und fügen Sie $CONFIGURATION_TEMP_DIR/MyProject.bauen/DerivedSources in es. Für mich funktionierte nur, ohne zu prüfen, Swift-Klassen für die gezielte MyProjectTests. Quelle: https://medium.com/if-let-swift-programming/ios-tests-working-with-objective-c-and-swift-class-together-aaf40f91a27c