我正在尝试按如下方式实现UIAutomation脚本:
var target = UIATarget.localTarget();
var window = target.frontMostApp().mainWindow();
var collectionView = window.collectionViews()[0];
collectionView.cells()[0].tap();
当我运行脚本时,我在日志中得到以下内容:
target.frontMostApp().mainWindow().collectionViews()[0].cells()[0].tap()
target.frontMostApp().mainWindow().collectionViews()[0].cells()[0].scrollToVisible()
Script threw an uncaught javascript error: t...cells()[0] could not be tapped
如果我在任何其他单元格上调用它,它可以工作,但由于某种原因,第一个单元格没有。那里有人遇到过这个问题吗?
答案 0 :(得分:2)
我一直在经历同样的事情。如果您使用仪器 - >自动记录新脚本,您会看到它通常是.tapWithOptions({tapOffset:{x:0.15, y:0.35}})
,而不是对象.tap()
。
我不确定你的显示结构是什么,但我正在测试的应用程序在集合视图的单元格中有集合视图。虽然target.frontMostApp().mainWindow().collectionViews()[0].cells()[0].collectionViews()[0].cells()[0]
有效,target.frontMostApp().mainWindow().collectionViews()[0].cells()[1].collectionViews()[0].cells()[0]
没有,target.frontMostApp().mainWindow().collectionViews()[0].cells()[1].collectionViews()[0].tapWithOptions({tapOffset:{x:0.17, y:0.42}})
有效,但我宁愿.cells()[0]
有效。