Ist es möglich, einzelne Swift -UI -Komponenten zu testen?IOS

Programmierung für iOS
Anonymous
 Ist es möglich, einzelne Swift -UI -Komponenten zu testen?

Post by Anonymous »

Ich bin super neu in Swift und Swiftui und ich habe ein neues Projekt mit Swiftui gestartet. Ich habe einige Erfahrung in anderen Komponentenbibliotheken für das Web und wollte eine Möglichkeit, das gleiche Muster für die iOS -Entwicklung zu verwenden. Zum Beispiel habe ich eine Kartenkomponente erstellt, die Koordinaten akzeptiert und eine Karte rendert, und möchte diese Karte individuell testen, indem die App die Komponente sofort rendert. Hier ist momentan mein Code- und Testcode: < /p>

Code: Select all

// App.swift (main)
// Map is not rendered yet

@main
struct PicksApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}

// MyMap.swift
struct MyMap: View {

@State private var region = MKCoordinateRegion(
center: CLLocationCoordinate2D(
latitude: 25.7617,
longitude: 80.1918
),
span: MKCoordinateSpan(
latitudeDelta: 10,
longitudeDelta: 10
)
)

var body: some View {
Map(coordinateRegion: $region)
}
}

struct MyMap_Previews: PreviewProvider {
static var previews: some View {
MyMap()
}
}

// MyMapUITests.swift
class MyMapUITests: XCTestCase {
func testMapExists() throws {
let app = XCUIApplication()
app.launch()

let map = app.maps.element
XCTAssert(map.exists, "Map does not exist")
}
}
Ist es möglich, das UI -Tests -Framework nur eine Komponente zu testen, anstatt die gesamte App zu starten und mich zwischen jeder Ansicht zu navigieren, bevor ich in meine Ansicht gelangen kann?
In meinem Fall wird beispielsweise eine Anmeldeansicht vorhanden, wenn sich die App zum ersten Mal öffnet (was jedes Mal aus Sicht der UI -Tests erfolgt) und die Kartenansicht kann sich im Inneren befinden die App irgendwo. Ich möchte in der Lage sein, nur die Kartenansicht zu testen, ohne End-to-End-Benutzererfahrung zu testen.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post