如何为已经开发的软件组织测试?

软件测试 团队管理 测试策略
2022-01-14 17:41:55

我已经管理了一个项目的测试,这是我从婴儿期开始就参与的项目。我使用 Microsoft 测试管理器将测试与需求联系起来,并将它们组织在文件夹中。进展顺利。

但是,现在我的任务是为一个已经投入生产十年并且要复杂得多的程序组织测试。我们的回归测试只是 Excel 表中近 7,000 个步骤的列表,甚至没有分解为测试。我正在寻找有关如何管理此项目的任何建议。我想在不浪费大量时间的情况下组织测试用例。想法?

还有一点需要考虑的是,我还负责自动化大多数这些测试(使用 TestComplete)。虽然组织现有的回归测试比自动化它们要快,但我认为自动化自然会导致组织。那么我是否应该建议专注于有据可查的自动化,而不是进行很多手动回归测试?

3个回答

正如其他答案所说,您的首要任务是组织列表。您想要这样做的原因有很多:

  • 这些项目可能不准确- 这很常见。往往会发生的是,执行测试步骤的人对系统有足够的了解,可以针对列表中的缺陷进行调整并采取相应的行动。
  • 这些项目可能不相关- 这是长时间手动回归测试的另一个常见问题。它们往往不会更新,因此它们会指定应用程序不再支持的操作或功能。
  • 有很多重复- 很有可能像您的 7k 项目电子表格这样的文档是有机增长的,并且其中缺乏组织意味着尝试找出它是否已经对某些需要的条件进行了测试是非常痛苦的:所以测试被添加。它也可能从未重新组织过,因此其中会有很多类似的动作可以作为一个分组更有效地处理。
  • 这是找出里面有什么的最简单的方法——我是根据这里的经验说的:有了这样的东西,找出里面有什么的最简单的方法就是通过它并组织和分组它。
  • 测试可能不适合自动化- 适合自动化的良好候选者和现有的手动回归测试用例并不相同。可能几乎没有重叠(这是一个单独的问题)。

不管你做什么,这将是一个主要的时间槽,但是组织测试用例列表会让你对应用程序的问题区域有一个感觉(因为我保证你的电子表格会通过添加报告的错误来增加列表)以及最应该针对自动回归的领域。它还允许您识别不再相关或不再有效的冗余和测试。

然后,您用于组织测试的结构可以在您的自动化中得到体现,但是您将在开始该项目时对需要什么有更清晰的了解——这将使您能够更清晰地定位您的自动化项目。

如果您希望使用,TestComplete 确实支持手动测试套件。如果项目团队有一个生命周期管理工具,我会使用它(无论是带有 Microsoft 测试管理器的 Team Foundation Server、带有测试完成功能的 QAComplete、HP ALM 还是自行开发的设置),除非他们使用电子表格。 . 如果他们没有,您可能需要考虑像 TestLink 这样的工具作为您的组织工具(老实说,即使是一组较小的网络共享电子表格也会比您现在拥有的更好)。无论您选择哪种工具,您仍然希望在开始自动化之前驯服该列表。

如果测试都在一个大 Excel 文件中,那么将它们导入工具基本上是不可能的,因此您应该期望手动(复制/粘贴)。

大多数测试用例管理工具都有某种层次结构设置,允许您以一种易于管理的方式组织大量测试。你只需要确定你想要什么样的结构。这通常是通过将它们拆分为基于高级功能的测试套件来完成的。

Testlink 是一种流行的开源测试用例管理工具,它易于使用并允许将测试套件嵌套在彼此之间。

无论是否发生自动化,我都会首先组织测试用例。

7000 步在没有任何层次结构的单个 Excel 表中,本身很难维护。我不打算评论开发它的团队的能力,但实际上很难保持更新和验证。所以你需要建议组织投入额外的投资。基本上无组织的测试用例是一种技术债务,需要在将来某个时间将其转换为地雷之前偿还。

如果项目有足够的生命来证明额外的投资是合理的,你应该增加额外的团队来分离步骤到案例和案例到文件夹结构。文件夹结构可以是您选择的分区,例如功能方面或功能方面。

如果您可以在步骤中识别出一些重复的模式,请考虑编写一个脚本来将测试步骤分成测试用例。一旦测试用例准备就绪,就需要为审查预算编制相当多的工作,即专家成员带宽。您也可以选择 excel、xml 或其他单词来完成此练习。

一旦测试用例准备就绪,将它们导入您选择的测试管理工具应该很容易。安全的方法是使用组织内已经在使用的管理工具,除非知道它的可扩展性不足以处理这些测试用例。

关于自动化,虽然测试不可能是非智能的,但您需要考虑和评估投资回报,看看哪些部分可以自动化。请记住,如果团队在自动化方面没有足够的能力,那么维护自动化本身可能会很昂贵。如果 ROI 是合理的,请继续为可自动化的部分提出自动化建议。