查看iOS模拟器上的触摸位置

时间:2015-08-26 18:19:29

标签: ios iphone ios-simulator calabash

我正在使用Calabash为我的应用做一些自动化的UI测试,而且我试图触摸嵌入在更大视图中的一些视图,因此我无法访问他们的确切内容直接触摸它们的名称。

所以我试图使用他们所嵌入的视图的相对中心来触摸它们,但是,我只是盲目地调整我的偏移量来尝试点击这些视图而不知道我是不是&我#39;越来越接近视图。

所以,我的问题是,有没有办法在iOS模拟器中显示触摸的位置?我正在想像点或某种方式来表示触摸发生了以及发生了什么。

感谢任何帮助,谢谢!

2 个答案:

答案 0 :(得分:0)

听起来有不是嵌入式视图,但只有一个视图可以响应不同位置的触摸。

Calabash查询语言可以查找嵌入在其他视图中的视图。

除了可视化触摸外,您还可以尝试记录触摸的位置。 Briar iOS示例应用程序has an example of how to do this.要点是创建UIWindow子类,添加拦截sendEvent:选择器的方法,记录触摸点,然后调用UIWindow sendEvent:

您可以在Xcode的设备窗口(Shift + Command + 2)或ideviceinstaller中查看设备日志:

$ idevicesyslog -u < udid >

您可以使用run-loop来拖尾模拟器的日志。

# Simulator must be launched.  App does not have to be running.
$ run-loop simctl tail

答案 1 :(得分:0)

defaults write com.apple.iphonesimulator ShowSingleTouches 1

在终端中执行此命令并重新启动模拟器