Этот ответ демонстрирует, как встроить ссылку в аннотированную строку и сделать ее кликабельной. Это отлично работает и запускает клик с правильным URL. Тем не менее, я не могу написать тест, который нажимает аннотированный текст, чтобы открыть ссылку. У кого -нибудь успешно написал такой тест? Мой производственный код очень похож на то, что находится в ответе. Ниже приведен мой тестовый код: < /p>
Код: Выделить всё
@Test
fun it_should_open_terms_of_service_link() {
val termsOfServiceText = getString(R.string.settings_terms)
try {
Intents.init()
stubAnyIntent()
composeTestRule.onNode(hasText(termsOfServiceText, substring = true)).performClick()
assertLinkWasOpened(getString(R.string.settings_terms_link))
} finally {
Intents.release()
}
}
он выглядит как Hastext (termofserviceText, substring = true) извлекает весь аннотированный строковый узел, выступающий только на подстроку, «Условия обслуживания». Таким образом, метод on chick действительно запускается, но не в правильной позиции в аннотированной строке. Рад предоставить больше информации, если это необходимо. Спасибо!
Подробнее здесь:
https://stackoverflow.com/questions/693 ... ck-compose