0Pricing
Jetpack Compose Academy · Lekcja

Asercje i wykonywanie akcji

Weryfikuj stan i symuluj dane wprowadzane przez użytkownika

Asercje i wykonywanie akcji to bezpłatna lekcja Jetpack Compose Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Jetpack Compose Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Jetpack Compose Academy zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

Find, Then Verify

Finding a node is only half the job. To prove your UI behaves, you add an assertion that states what should be true about that node. ✅

assertIsDisplayed

The most common assertion is assertIsDisplayed. It confirms the node is actually visible to the user, not just present in the tree.

composeTestRule.onNodeWithText("Welcome")
    .assertIsDisplayed()

assertExists vs assertIsDisplayed

Watch the difference: assertExists checks the node is in the tree, while assertIsDisplayed also checks it is on screen and not clipped away.

composeTestRule.onNodeWithText("Footer")
    .assertExists()

Chaining Assertions

You can chain several checks on one node. Each returns the node again, so the test reads like a clear sentence about your UI state.

rule.onNodeWithText("Save")
    .assertIsDisplayed()
    .assertIsEnabled()

Performing a Click

To simulate a tap, call performClick on a found node. Compose dispatches the same click your real users would trigger.

composeTestRule.onNodeWithText("Add")
    .performClick()

Typing Text

For input fields, performTextInput types characters into the focused field, letting you test forms exactly as a user would fill them.

rule.onNodeWithText("Email")
    .performTextInput("a@b.com")

Act, Then Assert

The classic flow is act then assert: perform a click, then verify the new state appeared. This mirrors how a person uses your app.

rule.onNodeWithText("+").performClick()
rule.onNodeWithText("Count: 1")
    .assertIsDisplayed()

Asserting on State Flags

Beyond visibility, you can check toggles. assertIsOn and assertIsOff verify switches and checkboxes hold the value you expect.

rule.onNodeWithText("Notifications")
    .assertIsOff()

Quick Check

You want to confirm a button is genuinely on screen, not merely present in the tree. Which assertion do you use?

Assert on Count

When you grab a group with onAllNodes, verify how many matched using assertCountEquals. It is perfect for checking list sizes.

rule.onAllNodesWithText("Item")
    .assertCountEquals(3)

Clear Before You Type

Replacing text? Call performTextClearance first, then performTextInput, so old characters do not stick around and break your check.

rule.onNodeWithText("Name")
    .performTextClearance()

Readable, Trustworthy Tests

Good assertions describe behavior, not pixels. Aim for tests that read like requirements, so a failure instantly tells you what behavior broke.

Recap: Actions & Assertions

You drive the UI with actions like performClick and performTextInput, then prove the result with assertions like assertIsDisplayed. That is the heart of UI testing. 🎯

Często zadawane pytania

Czy lekcja „Asercje i wykonywanie akcji” jest bezpłatna?

Tak — pełny tekst „Asercje i wykonywanie akcji” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Jetpack Compose Academy, przejdź na CoddyKit PRO. Kurs Jetpack Compose Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Asercje i wykonywanie akcji”?

Weryfikuj stan i symuluj dane wprowadzane przez użytkownika Ćwiczysz Jetpack Compose Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Jetpack Compose Academy?

Nie wymagamy żadnego doświadczenia. Jetpack Compose Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Asercje i wykonywanie akcji”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Jetpack Compose Academy?

Tak. Każda lekcja Jetpack Compose Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. createComposeRule i findery
  2. Asercje i wykonywanie akcji
  3. Semantyka i tagi testowe
  4. Testowanie ViewModeli i przepływów
← Powrót do Jetpack Compose Academy