我正在使用 Jetpack Compose 测试库实现一些仪器测试。我对 Kotlin / Android 开发还不太熟悉,但我有多年使用 Selenium 和其他测试库的经验,所以我缺少一些基本的东西,并且不知道如何实现它们。
我想做的事:
在 Selenium 上我可以轻松做到这一点:
elements = driver.find_elements("item")
elements.each do |element|
element.click
end
Run Code Online (Sandbox Code Playgroud)
但在具有组合测试框架的 Kotlin 上,我不知道如何做到这一点。下面的方法(负责返回节点列表)不支持forEach:
composeTestRule.onAllNodes(hasTestTag("item")
Run Code Online (Sandbox Code Playgroud)
在 Selenium 上,以下方法返回找到的项目数量:
driver.find_elements("item").size
Run Code Online (Sandbox Code Playgroud)
但是,再一次,没有什么可以与写作相提并论:
composeTestRule.onAllNodes(hasTestTag("item")
Run Code Online (Sandbox Code Playgroud)
我已经阅读了官方的JetPack Compose 测试教程,但它没有提供太多细节
automated-tests gui-testing kotlin instrumented-test android-jetpack-compose-testing