我如何在 xctest 中找到标签或静态文本的层次结构?
How i can find the hierarchy in xctest for a label or static text?
您好,我需要测试 window 中存在的静态 txt,以查看是否存在文本,我使用了以下代码,
XCTAssert(mailwindow.staticTexts["Sign In to access Accounts"].exists)
现在我需要测试文本的层次结构。
例如登录访问帐户应该出现在 "hello world" 文本之后。
听起来您想测试定位而不是层次结构。 XCTest UI 测试更倾向于功能测试,而不是检查布局。
按层次结构,您可以检查父视图是否包含两个文本元素,但这不会断言它们在屏幕上的显示顺序。
可以根据每个元素的框架位置进行断言,但如果更改屏幕布局,则可能需要重写测试。
let firstText = app.staticTexts["accessAccountsLabel"]
let secondText = app.staticTexts["helloWorldLabel"]
XCTAssert(firstText.frame.origin.x < secondText.frame.origin.x)
XCTAssert(firstText.frame.origin.y < secondText.frame.origin.y)
您好,我需要测试 window 中存在的静态 txt,以查看是否存在文本,我使用了以下代码,
XCTAssert(mailwindow.staticTexts["Sign In to access Accounts"].exists)
现在我需要测试文本的层次结构。
例如登录访问帐户应该出现在 "hello world" 文本之后。
听起来您想测试定位而不是层次结构。 XCTest UI 测试更倾向于功能测试,而不是检查布局。
按层次结构,您可以检查父视图是否包含两个文本元素,但这不会断言它们在屏幕上的显示顺序。
可以根据每个元素的框架位置进行断言,但如果更改屏幕布局,则可能需要重写测试。
let firstText = app.staticTexts["accessAccountsLabel"]
let secondText = app.staticTexts["helloWorldLabel"]
XCTAssert(firstText.frame.origin.x < secondText.frame.origin.x)
XCTAssert(firstText.frame.origin.y < secondText.frame.origin.y)