Xamarin UITest 查询 如何仅获取标签作为响应



当我在 Repl(( 窗口中使用自动化 ID 查询我的列表视图时,我得到了一大块数据。我只想返回一个字段"文本"或"标签"

这是我的查询:应用程序。查询(q => q.Id("officerList"(.后代((。id("官员姓名"(。索引(0(.类("UILabel"(。索引(0((

这是返回:[ [0] {
Id => 空, 描述 => ">", 矩形 => { 宽度 => 88, 高度 => 20.5, X => 12, Y => 144, CenterX => 56, 中心Y => 154.25 }, 标签 => "阿布里尔,吉尔· 文本 => "阿布里尔,吉尔· 类 => "UILabel", 已启用 => 真 } ]

我想继续查询并只返回"Abril,Jill M"。

我尝试添加.标签没有运气,它因错误而中断:(1,103(: 错误 CS1061:键入Xamarin.UITest.Queries.AppQuery' does not contain a definition for标签",并且找不到Label' of typeXamarin.UITest.Queries.AppQuery' 的扩展方法。是否缺少程序集引用

这应该有效:

var query = app.Query(q => q.Id("officerList")
.Descendant().Id("officerName")
.Index(0).Class("UILabel")
.Index(0));
var labelText = query[0]?.Text;

labelText应包含所需标签的值。

在恢复中,Query返回一个AppResult数组 (AppResult[](。您需要获得所需的项目,在这种情况下是第一项。

希望这有帮助.-

您也可以对标签尝试此查询 - q.Id("官员名单"(。后代((。id("官员姓名"(。索引(0(.类("UILabel"(。索引(0((。标签

输出 - "阿布里尔,吉尔·

或文本

q.Id("官员名单"(。后代((。id("官员姓名"(。索引(0(.类("UILabel"(。索引(0((.第一文本

输出 - "阿布里尔,吉尔·

也许这会起作用

最新更新