UIAutomation使iOS应用程序达到一致的状态

我为我的iOS应用程序编写JavaScripttesting。 我希望使用苹果Profiler和UIAutomation。

1)我想知道如何在每次运行testing时重置应用程序。 我希望在每次运行新testing之前将应用程序重置为一致的状态。 把我的testing分成几组。 第一组的每个testing都应该在包含tableView的第一个屏幕上开始,并且应该将该表中用于sorting元素的filter设置为一致的状态。 第二组testing应该在设置屏幕上开始,并且应该按特定顺序按下一些选项/开关来testingUI。

2)也是第一次启动应用程序是一个教程。 我怎样才能让应用程序认为它是新鲜安装和testing教程function。

感谢您的答案

我怎么能让应用程序认为它是新鲜安装?

由于iOS应用程序是沙盒,唯一的办法是每次删除和重新安装应用程序。

在我写的Illuminator框架中(它扩展了UIAutomation),我们提供了一个自动化桥接 ,允许我们发送“重置”命令给应用程序,在每次testing运行之前将其置于已知状态。 这使得testing非常可重复,即使有些testing失败。

另外,即使应用程序崩溃,命令行脚本也可以恢复testing运行。