Метод assertIsDisplayed
Метод assertIsDisplayed у
SemanticsNodeInteraction
завершает тест ошибкой, если узел
скрыт, нулевого размера или за пределами экрана.
Вызывают на результате
onNodeWithText.
Синтаксис
composeTestRule.onNodeWithText("abcde").assertIsDisplayed()
Пример
Давайте проверим видимость строки abcde:
import androidx.compose.material3.Text
import androidx.compose.ui.test.assertIsDisplayed
import androidx.compose.ui.test.junit4.createComposeRule
import androidx.compose.ui.test.onNodeWithText
import org.junit.Rule
import org.junit.Test
class AssertDisplayedTest {
@get:Rule
val composeTestRule = createComposeRule()
@Test
fun textVisible() {
composeTestRule.setContent {
Text(text = "abcde")
}
composeTestRule.onNodeWithText("abcde").assertIsDisplayed()
}
}
Тест проходит: узел с "abcde"
отмечен как displayed.
Пример
Давайте проверим вторую строку после setContent:
import androidx.compose.material3.Text
import androidx.compose.ui.test.assertIsDisplayed
import androidx.compose.ui.test.junit4.createComposeRule
import androidx.compose.ui.test.onNodeWithText
import org.junit.Rule
import org.junit.Test
class SecondLineDisplayedTest {
@get:Rule
val composeTestRule = createComposeRule()
@Test
fun secondLineVisible() {
composeTestRule.setContent {
Text(text = "12345")
}
composeTestRule.onNodeWithText("12345").assertIsDisplayed()
}
}
Тест проходит: Text "12345" виден.
Смотрите также
-
метод
assertDoesNotExist,
противоположная проверка -
метод
assertTextEquals,
проверка текста узла -
метод
waitForIdle,
перед assert при анимации -
класс
SemanticsNodeInteraction,
где объявлен assertIsDisplayed