Mat*_*oal 29 xcode ui-testing swift xcode-ui-testing
我想验证一个元素是否可见取决于它的.hidden属性,但我找不到使用新的Xcode 7 UI测试的有效方法.
我试过了myelement.exists,myelement.hittable但它们似乎没有像我预期的那样工作.我想他们与hidden财产合作.隐藏的元素不应该存在且不可命中......但这不是当前的行为(我可以理解exists行为......但隐藏的元素应该是不可命中的IMO).
还有另一种方法来验证"隐藏"的财产价值吗?
Joe*_*tti 29
从Xcode 7.1 Beta 3开始,UI测试目前不支持验证元素的可见性.我建议备案雷达给苹果带来必要的关注.
Xcode 7.1解决了这个问题.hittable现在检查元素是否正确.
1)我正在使用Xcode 7.3中的swift测试UI,我使用.hittable和.exists来测试标签是否隐藏,它们都有效.我测试'true'和'false'以确保两种方式都符合结果.
我有一个标签,其静态文本是"Track Info"并设置为在首次加载app时隐藏,然后我按下按钮显示标签,这是显示标签后的结果.
//测试失败
let trackInfoLabel = app.staticTexts["Track info"]
XCTAssertEqual(trackInfoLabel.exists, true)
XCTAssertEqual(trackInfoLabel.hittable, true)
Run Code Online (Sandbox Code Playgroud)
//测试通过
XCTAssertEqual(trackInfoLabel.exists, false)
XCTAssertEqual(trackInfoLabel.hittable, false)
Run Code Online (Sandbox Code Playgroud)
//测试通过
let trackInfoLabel = app.staticTexts["Track Info"]
XCTAssertEqual(trackInfoLabel.exists, true)
XCTAssertEqual(trackInfoLabel.hittable, true)
Run Code Online (Sandbox Code Playgroud)
//测试失败
XCTAssertEqual(trackInfoLabel.exists, false)
XCTAssertEqual(trackInfoLabel.hittable, false)
Run Code Online (Sandbox Code Playgroud)
当我按下按钮隐藏标签时,所有结果都反过来了.这确认了两个属性(hittable和exists)适用于label.hidden设置.
2)找出元素是否隐藏的另一种方法是,你可以做的是element.frame.size.width == 0 || element.frame.size.height == 0
| 归档时间: |
|
| 查看次数: |
17038 次 |
| 最近记录: |