[英]How to check element properties in iOS gui automation?
我見過的所有 UI 自動化示例都使用標准組件,其 state 可以使用value()
方法使用 JavaScript API 檢查。 這有點限制。 假設您要檢查顏色或 alpha 值等等。
如何檢查視圖的屬性?
一個例子:點擊某個元素應該使其“被選中”。 我想對其進行點擊,然后驗證 isSelected 是否為 TRUE。
更新:
我發現理論上應該這樣做的withPredicate()方法,除了它似乎只在name
屬性上觸發:
element.withPredicate("isSelected == YES") // always fails
element.withPredicate("name matches 'my element'") // works
我最終采用了這種適用於我的目的的方法:
讓 UIView.accessibilityValue 返回具有相關屬性的 JSON 字符串:
- (NSString *)accessibilityValue
{
return [NSString stringWithFormat:
@"{'alpha':%f, 'isSelected':%@}",
self.alpha, self.isSelected ? @"true" : @"false"];
}
然后在測試代碼中使用 eval() 並檢查這些屬性。 value() 是調用accessibilityValue 的簡寫:
var props = eval("(" + element.value() + ")");
if (props.isSelected) {
UIALogger.logFail("Should not be selected");
}
UIATarget.localTarget().tap({"x":471, "y":337});
var props = eval("(" + element.value() + ")");
if (!props.isSelected) {
UIALogger.logFail("Should be selected");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.