自动化脚本不起作用?

时间:2015-08-31 16:55:42

标签: javascript ios instruments ui-automation

这是我第一次使用xcode中的自动化仪器这个脚本适用于所有按钮点击,但是一个服务器连接。我不知道原因

这是我到目前为止尝试的脚本

today

以上脚本可以显示UIActivityIndi​​cator,而不是在成功后移动到下一个控制器

我知道我必须有一个非常简单的观点。所以帮帮我

1 个答案:

答案 0 :(得分:0)

UIAutomation试图让事情变得简单"轻松"对于开发人员来说,但这样做会让事情变得非常混乱。听起来您正在获取app.php的引用,等待按钮出现,然后在该按钮上执行'Access' => App\Services\Permissions\Access::class,

我发现您已经考虑过与window混淆,这与您的问题有关。超时系统允许您执行在任何理智系统中都不可能执行的操作:在元素存在之前获取对该元素的引用。我怀疑幕后,UIAutomation反复尝试获得你想要的引用 - 只要.tap()允许。

所以,在你发布的例子中,这个"特征"是可能的。真的伤害了你

target.pushTimeout()

如果视图在2秒延迟期间发生变化怎么办?您对timeout的引用可能无效,或者可能未指向您认为自己指向的对象。

我们在Illuminator framework中通过完全忘记超时系统来解决这个问题,并且只需手动重新评估给定的引用,直到它实际返回某些内容为止。我们称之为waitForChildExistence,但功能基本如下:

var window=target.frontMostApp().mainWindow()
var appScroll=window.scrollViews()[0];
UIATarget.localTarget().delay(2);
appScroll.buttons()[1].tap();

对于存在临时进度对话框的情况,此代码将在成功返回所需元素之前等待它消失。