1

我正在处理 UIAutomation 中的警报。当我遇到警报时,我应该确保警报标题和消息与预期相同。我这样做是为了访问警报标题。

var AlertTitle = target.frontMostApp().alert().name();
UIALogger.logMessage(AlertTitle);

以类似的方式,有没有办法在 alert 中检索消息?我试过使用

target.frontMostApp().alert().value(); 

但它没有用。我已经记录了元素树并得到了这个。

UIAAlert
 |
 UIAImage
 UIAStaticField name: Abc value: ABc
 UIAStaticField name: XYZ value: XYZ
 UIAButton

我需要在此警报中检索第二个 UIAStaticField 的值并与预期值进行比较。我怎么做 ?

我试过这样做,但没有奏效。

target.frontMostApp().alert().staticTexts[1]().value();
4

2 回答 2

5

在 iOS 7 中,它们似乎将 staticTexts 包装在一个滚动视图中,因此您需要将乔纳森的答案更改为:

target.frontMostApp().alert().scrollViews()[0].staticTexts()[1].value();
于 2014-02-12T00:28:03.940 回答
4

你这么近!你的括号和括号在你的行中。这样做:

target.frontMostApp().alert().staticTexts()[1].value();

这样,您将调用staticTexts()警报上的方法来获取元素数组,然后使用括号语法来获取第二个元素。

于 2013-07-17T22:46:31.503 回答