gpt4 book ai didi

ios - iPhone app UI自动化测试设计

转载 作者:行者123 更新时间:2023-12-01 16:56:09 25 4
gpt4 key购买 nike

嗨自动化/iOS专家,

我们最近推出了一个新的 iPhone 应用程序项目,并希望使用 Apple 的 UIAutomation Instruments 自动化一些基本的验收测试。现在我们有一个非常基本的框架来完成这项任务。该框架简单地将Apple提供的底层JS函数封装在Java中(提供一些调试能力),并通过Junit驱动测试。测试在 iPhone 模拟器中运行。

所以背景是 Instruments + Eclipse + Java + Junit + iPhone Simulator。

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

TOU -> 首页 -> 搜索结果 -> 查看详情。

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

现在问题来了:
为了自动测试查看详细信息功能,我的测试是否应该经过所有前面的步骤(假设应用程序总是重新启动而没有保存任何状态)?
或者我的测试应该假设一些先决条件(比如假设我的应用程序位于“搜索结果”中的“查看详细信息”测试)?

请说出你的理由。对不起,如果我的英语不是我的母语,很难理解。

谢谢!

文斯

最佳答案

“前提条件”/“已知基线”/“已知状态”是自动化的黄金。对于 UI 测试来说更是如此,因为它们有更多的变体,可能会导致测试失败,因为这些问题与您的测试所做的事情无关。

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

  • 首先运行一个自动化脚本来清除 TOU 并退出,然后是处理主页、搜索等的所有其他测试。或者...
  • 手动清除 TOU,然后进行所有其他测试。
  • 奖励选项:您还可以测试 TOU 每次重置不会出现超过一次,因为它不应该出现。这可能是您每次都运行的第一个和第二个测试。然后运行剩余的测试。

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

    关于ios - iPhone app UI自动化测试设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11614822/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com