SwiftUI Academy · Lektion

ViewModels per Unit-Test testen

Testen Sie die Geschäftslogik isoliert.

Lektion 1 von 413 Schritte

ViewModels per Unit-Test testen ist eine kostenlose SwiftUI Academy-Lektion auf CoddyKit. Dies ist Lektion 1 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 SwiftUI Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der SwiftUI Academy-Kurs umfasst insgesamt 4 Lektionen.

Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.

Why Test the ViewModel?

Your ViewModel holds the logic, so it is the perfect place to test. You can check behavior without ever launching the full UI. 🧪

Logic Lives Apart from Views

Because a ViewModel is a plain class, you can create one in a test and call its methods directly. This keeps your tests fast and focused.

Meet XCTest

Apple's testing framework is XCTest. You import it and write test classes that Xcode runs for you with a single keystroke.

import XCTest
@testable import MyApp

A Test Class

A XCTestCase subclass groups related tests. Every test method name must start with the word test so Xcode discovers it automatically.

final class CounterVMTests: XCTestCase {
}

Arrange, Act, Assert

A clean test follows three steps: arrange the objects, act by calling a method, then assert the result is what you expected.

Create the ViewModel

Start by making a fresh instance of the ViewModel inside your test. A new object per test keeps each one independent and reliable.

let vm = CounterViewModel()

Call a Method

Now act on it. Call the method you want to verify, just like your view would when a button is tapped. ➡️

vm.increment()

Assert with XCTAssertEqual

Use XCTAssertEqual to confirm a value matches what you expect. If it differs, the test fails with a clear message.

XCTAssertEqual(vm.count, 1)

Testing Booleans

For true or false results, reach for XCTAssertTrue and XCTAssertFalse. They read clearly and document your intent.

XCTAssertTrue(vm.isEmpty)

Test Edge Cases

Good tests cover more than the happy path. Check empty input, limits, and unexpected values so bugs surface before your users do.

Run with One Shortcut

Press Command-U in Xcode to run every test. Green checkmarks mean your logic still works after each change you make.

Quick Check

Which assertion confirms two values are equal?

Recap

You learned to test a ViewModel in isolation: create it, call a method, then assert the result with XCTest. Fast, focused, dependable. 🎉

Kostenlos starten

Lerne Swift mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
30
Lektionen
120

Häufig gestellte Fragen

Ist die Lektion „ViewModels per Unit-Test testen“ kostenlos?

Ja — der vollständige Text von „ViewModels per Unit-Test testen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des SwiftUI Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der SwiftUI Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „ViewModels per Unit-Test testen“?

Testen Sie die Geschäftslogik isoliert. Du übst SwiftUI 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 SwiftUI Academy zu starten?

Keine Vorkenntnisse erforderlich. SwiftUI 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 1 von 4.

Wie lange dauert die Lektion „ViewModels per Unit-Test testen“?

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 SwiftUI Academy-Lektion Code schreiben und ausführen?

Ja. Jede SwiftUI 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. ViewModels per Unit-Test testen
  2. Asynchronen Code testen
  3. UI-Tests mit XCUITest
  4. Snapshot- und Preview-basierte Tests
← Zurück zu SwiftUI Academy