SwiftUI UI 测试如何在 app.scrollViews 中显示动态按钮文本值?

问题描述

如何在 app.scrollViews 中显示动态按钮文本值?

我希望能够点击滚动视图中第一行内的按钮,但不确定按钮的索引是什么。我尝试了 1、2 和 3,但都没有运气。

let scrollViewsQuery = app/*@START_MENU_TOKEN@*/.scrollViews/*[[".otherElements[\"Tabbar\"].scrollViews",".scrollViews"],[[[-1,1],[-1,0]]],[0]]@END_MENU_TOKEN@*/
    let elementsQuery = scrollViewsQuery.otherElements
    elementsQuery.buttons.element(boundBy: 0).tap() //
    print("----------------------------------------------")
    var i = 0
    for element in elementsQuery.buttons.allElementsBoundByIndex{
        i += 1
        print(i)
        print(element) //How To display the Button Text here?
       // print( elementsQuery.buttons.element(boundBy: i))
    }

解决方法

假设您只有一个 scrollView,点击其中第一个按钮的代码如下:

let myScrollView = app.scrollViews.firstMatch
let myScrollViewsButtons = myScrollView.buttons
let myScrollViewsFirstButton = myScrollViewButtons.firstMatch

myScrollViewsFirstButton.tap()

此上下文中的 buttonXCUIElement,不是特别可打印的东西。按钮确实有 label 属性,通常是显示在按钮上的文本...

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...