我使用tuneup.js在仪器中设置了一组自动化测试用例来测试应用程序。我决定使用tuneup.js,因为它允许我将我的测试分成单独的测试用例,并从一个单独的脚本运行整个测试集,如果所有的测试运行正常,这就很好,但是如果其中一个失败,所有的测试都会失败,因为模拟器处于未知状态(我已经编写了测试,所以它们都在同一个登录屏幕上开始和结束),有没有办法重置模拟器,或者在测试用例之间重新启动应用程序?
发布于 2012-07-09 20:15:49
尝试从命令行启动测试。UI自动化允许在一次运行中仅执行一个测试。测试完成后(无论是失败还是通过)-应用程序将被系统踢出(UIAutomation)。至少它可以在真实的设备上工作。
您的命令行启动脚本将以以下方式工作: 1.读取包含测试路径的配置文件(可以是任何文件txt或xml)。此时,您将拥有一个包含测试路径和总测试计数的数组。2.然后使用简单的'for‘循环(从1到'testcount'),它将启动带有所需参数的UIAutomation。其中一个参数将是从配置文件中读取的测试脚本的路径。
您还可以将“配置文件”的路径作为命令行启动脚本的参数。这将允许您简单地使用所需的配置文件调用启动脚本来运行任何测试集。
发布于 2013-10-19 01:11:52
我写了一个脚本,它将为iOS模拟器重置所有版本和设备的内容和设置。它从菜单中抓取设备名称和版本号,因此它将包括苹果为其发布模拟器的任何新设备或iOS版本。
发布于 2015-04-02 22:04:51
测试失败使你的应用程序处于未知状态,这是使用Apple instruments工具的主要问题之一。我们在一个名为Illuminator (on GitHub, and inspired by tuneup.js)的框架中通过两种方式解决了这个问题。
首先,我们编写了一个automation bridge --与正在测试的应用程序的RPC通道,它允许我们在每次测试之前重置应用程序。
在这还不够的情况下,照明器测试运行器可以选择在模拟器的原始启动中重新运行每个失败的测试(例如,使用--retest 1x,solo)。
https://stackoverflow.com/questions/10801897
复制相似问题