Compose 中的界面测试使用语义与界面层次结构进行交互。 顾名思义,语义就是为一部分界面赋予意义。在这种情况下 “界面的一小部分”(或元素)可以表示任意元素,无论是单个可组合项,还是一个 全屏。语义树 与界面层次结构一起生成, 用于描述层次结构
如需详细了解语义,请参阅 Compose 中的语义 。
图 1. 典型的界面层次结构及其语义树。
语义框架主要用于无障碍功能,因此测试会利用语义提供的有关界面层次结构的信息。由开发者决定要提供哪些信息以及提供多少信息。
图 2. 一个包含图标和文本的典型按钮。
例如,假设有一个这样的按钮,它由一个图标和一个文本元素组成,默认语义树仅包含文本标签“Like”。这是因为,某些可组合项(例如 Text
)已经向语义树公开了一些属性。您可以使用 Modifier
。
MyButton
(
modifier
=
Modifier
.
semantics
{
contentDescription
=
" Add
to
favorites
"
}
)