繁体   English   中英

iPhone应用程序UI自动化测试设计

[英]iPhone app UI automation test design

您好,Automation / iOS专家,

我们最近启动了一个新的iPhone应用程序项目,并希望使用Apple的UIAutomation Instruments自动进行一些基本的验收测试。 现在,我们有一个非常基本的框架来完成此任务。 该框架简单地封装了Apple用Java提供的底层JS函数(以提供一些调试功能),并由Junit驱动测试。 测试在iPhone Simulator中运行。

因此背景是Instruments + Eclipse + Java + Junit + iPhone Simulator。

在编写测试时,我发现测试受应用程序“状态”的影响很大。 例如,该应用程序在首次运行时会显示某种“使用条款”页面,但在重置iPhone模拟器之前不会再显示。 用户接受“使用条款”后,将被带到“主页”页面,在其中可以输入一些搜索条件并点击“搜索”,然后进入搜索结果页面。 然后可以将她带到“查看详细信息”页面。

TOU->主页->搜索结果->查看详细信息。

请记住,这只是我的真实应用程序的非常简化的版本。

现在是一个问题:为了自动测试视图详细信息功能,我的测试是否应该通过前面的所有步骤(假设应用始终在不保存任何状态的情况下重新启动)? 还是我的测试应该假设一些前提条件(例如“ View Detail”测试假设我的应用程序处于“ Search Result”)?

请说明您的原因。 很抱歉,如果我的英语不是我的母语,那么我很难理解。

谢谢!

文斯

“前提条件” /“已知基准” /“已知状态”对于自动化来说是黄金。 对于UI测试而言尤其如此,因为它们具有更多的差异,这些差异可能会导致与您的测试工作无关的问题导致测试失败。

因此,从自动化的角度来看-直接转到“查看详细信息”测试。 您的大多数自动化测试脚本都将位于这些类型的功能区域中。 每次重置/安装时,TOU等都是一次。 有两个选择:

  1. 首先运行一个自动脚本以清除TOU并退出,然后再执行所有其他处理主页,搜索等的测试。或者...
  2. 手动清除TOU,然后进行所有其他测试。
  3. 奖励选项:您还可以测试TOU每次重置不会出现多次 ,因为它不会出现。 这可能是您每次始终运行的第一次和第二次测试。 然后运行其余测试。

如果您的自动化设备始终依赖于出现的TOU,则在第一次测试后,其他设备将失败,因为TOU直到下一个重置/测试周期才会出现。 您可以在所有自动化测试的开始处放置“处理程序”,以有条件地管理TOU页面。 在这种情况下,我会选择上面的选项1。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM