首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Jetpack组合UI测试按钮onClick

Jetpack组合UI测试按钮onClick
EN

Stack Overflow用户
提问于 2022-03-31 15:22:43
回答 1查看 1.8K关注 0票数 4

我正在尝试测试buttonClick如何改变UI。

测试的设置如下:

代码语言:javascript
运行
复制
composeRule.setContent {
    var i by remember { mutableStateOf(0) }
    Button(modifier = Modifier.testTag("TEST"), onClick = { i++ }) {
        Text(text = i.toString())
    }
}

我的实际测试是这样的:

代码语言:javascript
运行
复制
val button = composeRule.onNodeWithTag("TEST")

button.assertTextEquals("0")
button.performClick()
button.printToLog("Test")
button.assertTextEquals("1")

第一个断言通过,但是它在检查文本是否应该等于1时失败。

代码语言:javascript
运行
复制
java.lang.AssertionError: Failed to assert the following: (Text + EditableText = [1])
Semantics of the node:
Node #2 at (l=0.0, t=66.0, r=176.0, b=165.0)px, Tag: 'TEST'
Role = 'Button'
Text = '[0]'
Actions = [OnClick, GetTextLayoutResult]
MergeDescendants = 'true'
Selector used: (TestTag = 'TEST')

单击后的printToLog()如下所示:

代码语言:javascript
运行
复制
Printing with useUnmergedTree = 'false'
Node #2 at (l=0.0, t=66.0, r=176.0, b=165.0)px, Tag: 'TEST'
Role = 'Button'
Text = '[0]'
Actions = [OnClick, GetTextLayoutResult]
MergeDescendants = 'true'

因此,当执行单击时,要么内容不被重新组合,要么由于某种原因,单击没有实际发生。

有人知道这里会发生什么事吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-31 19:03:07

我解决了这个问题!

我的模拟器运行的API级别为32..看起来撰写交互库还没有完全使用32。

在降低API级别后,代码工作不发生任何更改。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71695189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档