0Pricing
Swift Academy · Lektion

Die XCTAssert-Familie und auslösende Assertions

Verwenden Sie XCTAssertEqual, XCTAssertThrowsError und XCTUnwrap sicher.

Die XCTAssert-Familie und auslösende Assertions ist eine kostenlose Swift Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Swift Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.

XCTAssert und XCTAssertTrue

XCTAssert und XCTAssertTrue schlagen fehl, wenn die Bedingung falsch ist.

XCTAssert(user.isLoggedIn)
XCTAssertTrue(cart.isEmpty, "Cart should be empty after clear()")

XCTAssertFalse

XCTAssertFalse schlägt fehl, wenn die Bedingung wahr ist.

XCTAssertFalse(session.isExpired, "Fresh session should not be expired")

XCTAssertEqual

XCTAssertEqual schlägt fehl, wenn die beiden Werte nicht gleich sind. Beide Werte müssen Equatable sein.

XCTAssertEqual(calculator.add(2, 3), 5)
XCTAssertEqual(user.name, "Alice", "Name should match the fixture")

XCTAssertNotEqual

XCTAssertNotEqual schlägt fehl, wenn die beiden Werte gleich sind.

XCTAssertNotEqual(originalHash, updatedHash)

XCTAssertNil und XCTAssertNotNil

Testen Sie Optionals: Der Test schlägt fehl, wenn der Wert nicht nil bzw. nil ist.

XCTAssertNil(service.error, "No error expected after successful fetch")
XCTAssertNotNil(result, "Result should be non-nil on success")

XCTAssertThrowsError

Der Test schlägt fehl, wenn der Ausdruck KEINEN Fehler auslöst. Optional können Sie den ausgelösten Fehler untersuchen.

XCTAssertThrowsError(try parser.parse("invalid json")) { error in
  XCTAssertEqual(error as? ParseError, .invalidInput)
}

XCTAssertNoThrow

Der Test schlägt fehl, wenn der Ausdruck einen Fehler auslöst.

XCTAssertNoThrow(try parser.parse(validJSON))

XCTUnwrap

XCTUnwrap entpackt ein Optional und lässt den Test fehlschlagen, wenn der Wert nil ist – übersichtlicher als guard let zusammen mit XCTFail.

let user = try XCTUnwrap(service.currentUser)
XCTAssertEqual(user.name, "Bob")

XCTAssertEqual mit Genauigkeit

Geben Sie bei Vergleichen von Gleitkommazahlen einen Genauigkeitswert an, um Rundungsungenauigkeiten zu berücksichtigen.

XCTAssertEqual(result, 3.14159, accuracy: 0.0001)

Benutzerdefinierte Fehlermeldungen

Alle XCTAssert-Funktionen akzeptieren einen optionalen Nachrichtenparameter für eine klarere Fehlerausgabe.

XCTAssertEqual(items.count, 3, "Expected 3 items after insert, got \(items.count)")

XCTExpectFailure

Markieren Sie erwartete Fehler, damit sie in CI als erfolgreich gemeldet werden – nützlich für bekannte, aber noch nicht behobene Fehler.

XCTExpectFailure("Known issue: rdar://12345") {
  XCTAssertEqual(brokenFunction(), expectedValue)
}

Kurze Überprüfung

Welche XCTest-Funktion entpackt ein Optional sicher und lässt den Test fehlschlagen, wenn es nil ist?

Zusammenfassung der Lektion

Die XCTest-Assertion-Familie umfasst XCTAssert/True/False, XCTAssertEqual/NotEqual, XCTAssertNil/NotNil, XCTAssertThrowsError/NoThrow und XCTUnwrap. Fügen Sie immer aussagekräftige Meldungen hinzu. Verwenden Sie XCTExpectFailure für bekannte, nachverfolgte Fehler.

Häufig gestellte Fragen

Ist die Lektion „Die XCTAssert-Familie und auslösende Assertions“ kostenlos?

Ja — der vollständige Text von „Die XCTAssert-Familie und auslösende Assertions“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Swift Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Die XCTAssert-Familie und auslösende Assertions“?

Verwenden Sie XCTAssertEqual, XCTAssertThrowsError und XCTUnwrap sicher. Du übst Swift Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Swift Academy zu starten?

Keine Vorkenntnisse erforderlich. Swift Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Die XCTAssert-Familie und auslösende Assertions“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Swift Academy-Lektion Code schreiben und ausführen?

Ja. Jede Swift Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. XCTestCase: Setup, Teardown und Testmethoden
  2. Die XCTAssert-Familie und auslösende Assertions
  3. Protokollbasiertes Mocking und Dependency Injection
  4. Asynchrone Tests und Leistungsmessung
← Zurück zu Swift Academy