XCTest Objective C Xcode8.1如何提取任何按钮或导航栏的标签/值/名称

Posted

技术标签:

【中文标题】XCTest Objective C Xcode8.1如何提取任何按钮或导航栏的标签/值/名称【英文标题】:XCTest Objective C Xcode8.1 how to extract label/value/name of any button or navigator bar 【发布时间】:2016-12-14 06:57:25 【问题描述】:

谁能告诉我如何提取任何按钮或导航栏的标签/值/名称

到目前为止我尝试过的代码

NSString *Test = app.navigationBars[@"Test"].staticTexts[@"Test"].title;
NSLog(@"%@++++++++", Test);

NSString *Test = app.navigationBars[@"Test"].staticTexts[@"Test"].accessibilityLabel;
NSLog(@"%@++++++++", Test);

NSString *Test = app.navigationBars[@"Test"].staticTexts[@"Test"].accessibilityValue;
NSLog(@"%@++++++++", Test);

以上所有 3 个的输出保持为空

【问题讨论】:

【参考方案1】:

使用label 访问静态文本元素的值。

NSString *test = app.navigationBars[@"Test"].staticTexts[@"Test"].label;
NSLog(@"%@++++++++", test);

https://developer.apple.com/reference/xctest/xcuielementattributes/1500692-label

【讨论】:

【参考方案2】:

您必须使用label。对于您的情况,将其替换为:

NSString *Test = app.navigationBars[@"Test"].staticTexts[@"Test"].label;

【讨论】:

以上是关于XCTest Objective C Xcode8.1如何提取任何按钮或导航栏的标签/值/名称的主要内容,如果未能解决你的问题,请参考以下文章

将 XCTest 与 Objective-C++ 代码一起使用:“Unexpected @ in program”错误

Xcode 8 和 Swift 无法构建 Objective C 模块'FBSDKLoginKit'

使用 XCTest 在 Objective-C 静态库中创建测试用例

如何使用 XCTest 测试一个 navigationBar 是不是未在 Objective-C 中设置为特定颜色?

如何在 Objective C 中的 Xcode 8 中设置约束

Objective-C 协议在 XCTest 中选择器失败,但在应用程序中失败 [重复]