没有使用众包的任何好的测试计划/周期或经验?

软件测试 自动化测试 测试管理 测试设计 手动测试
2022-01-19 19:22:32

我正在尝试重新考虑我们在公司使用的测试周期,并且想知道是否有人可以在不使用众包数据的情况下提供任何线索、示例、经验等。我们制造的产品是专为专业人士设计的,他们在我们的产品上使用的时间有限且价格昂贵,因此众包数据模型可能会导致我们在竞争对手中看到的不良声誉。

我们的测试需要对单个功能进行各种排列的大量手动测试,我想让事情变得更有效率。可以这样想:

主要测试1:“测试图形功能”

测试1:在windows上测试

  • 子测试 1a:在 32 位机器上测试
  • 子测试 1b:在 64 位机器上测试

测试2:在mac上测试

  • 子测试 2a:在 32 位机器上测试
    • 子子测试 2ai:使用“示例插件”在 32 位机器上测试
  • 子测试 2b:在 64 位机器上测试

我们目前使用 JIRA,我现在正在研究 Zephyr,但不太喜欢它,因为它缺乏模块化(即,一旦我们推出更多产品并且随着系统变得更加先进,添加子测试用例变得更加困难管理)

根据答案编辑:

感谢您输入斯泰西和凯特!

我仔细考虑了一下,另一方面想,这可能是我们如何组织每个项目以及我们如何创建测试周期,这可能是我的难题的原因。

目前,对于我们发布的每个“应用程序”,我们支持许多不同“平台”上的功能(例如支持 4 个不同的操作系统),然后对于每个操作系统,我们允许支持 32 位和 64 位操作系统。

我们还将我们的“应用程序”移植到每个操作系统上的 4 个截然不同的“程序”上运行(并且每个程序都有新版本一直出现)。

好像这还不够,每个“应用程序”可以以 4 种不同质量的“分辨率”运行(即标准高清、高清等)。

同时期望每个排列具有相同的功能和质量。

不幸的是,这可能是由于我们为自己设定的高标准,我们不得不单独测试每一个排列,以确保其中一个排列不会使我们的发布成为停船……而且似乎,每个版本总是在上述一些奇怪的组合中出现问题(无论是回归还是其他),因此很难为这些要求中的任何一个偷工减料。

随着未来的快速临近,我只能想象更多的排列出现,以至于它变得难以处理。这就是我真正坚持的地方。因此,我试图集思广益,将所有这些版本组织成项目和测试周期等等,因为我们为自己设定的这个高标准使得所有这些“类似功能”的组合对于我们的最终用户来说都是“必要的” .

对此有什么想法?

2个回答

我无法与 JIRA 或 Zephyr 交谈,但我使用 TestLink 的经验是,您可以定义环境并轻松复制测试 - 或无限深地嵌套测试套件。

我建议您重新考虑一些分层:例如,通过您给出的示例,查看具有以下结构的环境测试套件:

功能 X 测试套件

  1. Windows 测试套件包含测试 a:32 位;b:64位;c:Windows 8 等。
  2. Mac 测试套件包含测试 a:32 位;b: 32 位,带额外插件;c:64位
  3. Linux 测试套件....

您应该能够在不同测试套件之间复制或共享测试数据相同的测试。

我建议的下一件事是查看端到端功能测试的自动化。显然,您不会自动化外观和感觉,但您应该能够自动化登录和访问级别测试以及使用的所有常用功能。为此,有许多解决方案,从免费到极其昂贵。Selenium 在基于 Web 的环境中非常流行——您可能已经注意到这里有大量与 Selenium 相关的问题。

任何好的测试管理工具都应该能够与自动化集成,尽管集成的水平会有所不同。一些大型解决方案,如带有 QTP 的 HP Quality Center、带有 TestComplete 的 SmartBear 的 QA Complete、带有 Visual Studio 和 Test Manager 的 Microsoft Team Foundation Server 提供了完全集成。其他你必须构建插件或使用变通方法,但它们都提供了一定程度的支持。

在您的情况下,我看待自动化的方式是拥有一组预定义的测试环境,最好设置为您可以完全控制的虚拟系统。自动化应该能够检查运行哪个受支持的环境,将您正在使用的任何数据库恢复到已知的起点,执行您的测试,然后在清理之前检查应用程序数据库的数据更改并让系统为下一次做好准备步。要获得所有环境,您可能需要不止一个工具 - 例如,我还没有使用可在 Windows 和 Mac 上运行的自动化工具。

我希望这可以帮助您做出一些决定。

对我来说,这听起来像你有两个问题:

1) JIRA 中的工具不足 - 您需要一个合适的测试管理工具,即实际为测试管理设计的工具。Jira 不是测试管理工具。

2)您必须处理的配置/系统/测试的数量。

对于 1) 我建议查看 TestRail。它与 JIRA 集成,允许测试的多种配置,支持将测试组分配给各个测试人员,并且可以跟踪同一测试的多个实例。

对于 2),在我看来,您有两种选择:

  • 自动化
    正如 Kate 在她的回答中所说,您的项目绝对是自动化的候选者。我建议研究像 Selenium 这样的东西。如果您的公司想要使用自动化,那么不要乱七八糟地尝试“在一边”学习它。找一位体面的测试自动化专家,让他们为您构建一个框架并提升您现有员工的技能。
  • 基于风险的方法
    你有很多测试,很多配置,但你所说的时间太少了。
    您在新版本上运行了多少回归?如果每次都是整个测试包,那么请考虑采用基于风险的方法,并将您的测试集中在已特别更改的区域上。可以在没有特定变化的区域执行额外的测试来证明系统缺乏回归,但这可以减少工作量,因为您不期望那里发生变化。
    正如我所说,查找“基于风险的方法”进行测试并进行阅读,它可能适合您的公司,但它确实有自己的风险,您必须考虑到这些风险。