Scrum测试方法


在当今不断发展和快节奏的环境中,高速实施至关重要。这对于所有商品和服务都适用。假设您在使用应用程序时因问题而受阻。您自然希望团队在报告问题后尽快修复错误。如果没有,您的下一步将是切换到不同的服务。

客户希望立即进行调整和升级。因此,大多数软件组织正在采用专注且灵活的软件测试。记住,如果您让客户等待,您的竞争对手只需几次按键即可!

在优化整个软件开发生命周期同时节省时间和资源至关重要。这就是为什么大多数企业更喜欢与敏捷团队一起进行测试的原因。让我们仔细看看这意味着什么。

在这篇文章中,我将向您展示从传统的测试环境切换到敏捷环境如何影响项目的预算、资源使用和及时性。您将了解Scrum测试、测试人员在敏捷环境中面临的问题以及最终如何累加。因此,您将学习如何提高公司的产出和客户满意度。

什么是Scrum?

Scrum是一种软件开发方法,专注于复杂软件应用程序的开发。它提供完成困难任务的简单方法。Scrum允许开发团队专注于软件开发的所有方面,例如质量、性能和可用性。为了避免复杂性,它允许在整个软件开发过程中进行透明化、检查和适应。

Scrum是一个框架,允许团队解决复杂问题,同时仍然交付产品。即使问题很复杂,交付产品的质量也必须很高。当问题复杂时,需要有效的团队协作。

Scrum是一种简单易懂的方法。但是,掌握它可能很困难。与普遍的看法相反,Scrum不是一种方法。它只是一个框架。

Scrum团队由以下人员组成:

  • 产品负责人
  • Scrum主管
  • 一群开发人员和测试人员

整个Scrum理念的基础是确保更好的灵活性和创造力,同时提高生产力。团队是多功能的。这样就无需依赖其他团队来完成任务。由于团队是自组织的,因此它们不需要任何外部指导。

Scrum测试的目标

Scrum测试的目标是:

  • 确定软件的复杂性。
  • 评估软件的质量。
  • 评估软件的性能。
  • 评估软件的可用性。
  • 协助单元测试。

Scrum和敏捷的区别

敏捷是一套原则,指导您完成迭代式软件开发过程。但是,在敏捷环境中,测试人员必须遵守某些准则。Scrum就是这套准则的名称。Scrum是一种用作敏捷框架一部分的工具。让我们更仔细地看看敏捷和Scrum,以便更好地理解。

敏捷管理

敏捷管理是一套软件开发方法。这些方法是迭代的和渐进的。理性统一过程 (RUP)、极限编程 (XP) 和 Scrum 都是敏捷管理的例子。敏捷方法还会导致需求和产出的演变。由于团队协作,这种项目开发方法的演变是可实现的。

敏捷团队是自组织和跨职能的。新项目的分析、文档编制和开发都是交织在一起的。每次迭代都使我们更接近目标。这种方法简化了适应修改的过程。它还提高了可扩展性。运营和流程变得更具适应性。

Scrum生态系统

敏捷生态系统包括 Scrum,它是敏捷生态系统的一个子集。这是一种处理难题同时交付高质量成果的方法。如果需要立即更改,团队可以灵活地进行必要的调整。Scrum 的有效性取决于有效的团队合作和频繁的沟通。此外,每次冲刺都会带来新的方法来提高效率。

由于Scrum是敏捷测试的一部分,我们也应该了解敏捷方法,因此敏捷测试的一些重要部分:

是什么让敏捷测试不同于传统测试?

为了快速实施概念,软件开发生命周期 (SDLC) 需要一种可靠的方法。传统测试是常态,但当公司转向敏捷测试时,生产力会提高。让我们看看敏捷测试与传统测试有何不同,以及它如何帮助您的公司。

传统测试

传统测试试图找出用户想要什么,然后构建一个产品来满足他们的需求。在发布产品之前,测试人员会对其进行测试并报告任何问题。然后,开发团队会处理这些问题,使用最佳可用解决方案纠正任何缺陷。反馈。

传统测试的假设是流程是可重复和可预测的。

其理念是团队可以在 SDLC 期间控制流程。在不同的级别,层次结构保持稳定性。它通过根据个人的能力将不同的工作分配给不同的人来标准化流程。但是,虽然标准范例似乎很简单,但它缺乏灵活性。由于团队必须按特定顺序完成任务,因此该方法需要很长时间。

敏捷测试

传统测试很僵硬,而敏捷测试旨在解决这个问题。它是一种基于团队的方法,但与传统测试不同,它具有交互性和动态性。因此,产品到达所需的时间减少了。项目被分成冲刺,这是定时任务。每个冲刺都有一个特定的时间限制。我们谈论的是不可预测的流程。此外,这些流程一开始可能看起来有点难以掌握。这是因为任务没有明确定义。

但是,该流程的高度适应性和灵活性使其物有所值。敏捷测试方法会在用户需要时快速适应变化。迭代周期会根据定期的客户沟通和反馈做出调整。

切换到敏捷测试之前测试人员应该了解什么

对于习惯于瀑布模型的人来说,适应敏捷环境是一个巨大的转变。在切换到敏捷测试之前,测试人员应该了解一些事情。

自动化工具专业知识

对每次冲刺进行重复测试是浪费时间。测试人员必须加快回归测试速度。他们还必须熟悉自动化工具才能加快测试速度。这些工具的例子包括 Selenium WebDriver、HP UFT 和 Appium。在转向敏捷测试之前,需要掌握的一些 BDD 和单元测试工具包括 JUnit、Cucumber、Pytest、JBehave 等。

项目管理工具知识

曾经有一段时间,测试人员使用 HP Quality Center 来跟踪错误并报告错误。Slack、JIRA 和 Mantis 是可以用于多种用途的工具示例。除了发现问题之外,它们还有助于高效的合作和项目管理。

Scrum方法的关键特征

Scrum 的主要特征如下:

  • 为了适应快速变化的开发需求,Scrum 使用称为冲刺的具有可变范围的短期固定发布周期计划。每次发布可能有多个冲刺。每个 Scrum 项目可能有多个发布周期。

  • 一系列重复出现的会议、事件和里程碑。

  • 一种测试和实施新需求(称为故事)的方法,以确保在每个冲刺结束时发布一些准备就绪的工作。

Scrum 由三个关键组成部分组成。

角色:

  • 产品负责人
  • Scrum主管
  • 团队

工件:

  • 产品待办事项列表
  • 冲刺待办事项列表
  • 燃尽图

仪式:

  • 冲刺计划
  • 冲刺回顾
  • 冲刺反思
  • 每日站会

让我们分别看看每一个。

Scrum 的角色

在Scrum测试中,产品负责人、Scrum主管和开发团队是三个主要角色。让我们仔细看看它们。

产品负责人

  • 他或她定义产品的特性。

  • 产品负责人确定发布日期和相关特性。

  • 他们根据产品的市场价值和盈利能力对属性进行排序。

  • 他或她负责产品的盈利能力。

  • 他或她可以选择接受或拒绝工作项目的成果。

Scrum主管

  • 他/她负责团队的生产和管理。

  • 他/她跟踪开发中的障碍并将其消除。

  • 他或她负责协调所有职责和职能。

  • 他/她保护团队免受外部影响。

  • 需要参加每日站会、冲刺评审和计划会议。

开发团队

  • 团队通常由5到9人组成。

  • 它包含程序员、设计师,有时还有测试人员等等。

  • 团队自行安排和安排工作。

  • 有权在项目范围内做任何事情以实现冲刺目标。

  • 积极参与每日例会

Scrum工件

产品待办事项列表 −

  • 1. 发布待办事项列表(发布1)- 1. 冲刺待办事项列表(冲刺1)- 冲刺计划 – 每日站会工作(每日站会) - 冲刺回顾

  • 2. 冲刺待办事项列表(冲刺2)

  • 2. 发布待办事项列表 – 发布2

Scrum流程包含以下步骤 −

  • 用户案例 − 它们是对正在测试的系统功能的简洁总结。例如,对于保险提供商来说,“可以使用在线系统支付保费”。

  • 产品待办事项列表 − Scrum产品的待办事项列表是收集的用户故事的集合。产品待办事项列表由产品负责人准备和维护。产品负责人对其进行优先级排序,任何人都可以在产品负责人的许可下添加内容。

  • 发布待办事项列表 − 发布是一段时间,在此期间完成一定数量的迭代。产品负责人和Scrum主管合作确定哪些故事应该优先发布。

  • 发布待办事项列表中的故事计划在特定版本中完成。

  • 冲刺 − 冲刺是产品负责人和编程团队完成用户故事的预定时间段,通常为2-4周。

  • 冲刺待办事项列表 − 冲刺待办事项列表是必须在一个冲刺中完成的用户故事的集合。在冲刺待办事项列表期间从不分配工作,团队自行认领任务。团队拥有并管理它,并且每天都会更新预计剩余的工作量。它是冲刺期间必须完成的任务列表。

  • 阻塞列表 − Scrum主管的阻塞列表每天更新,列出了未作出的决策和障碍。

  • 燃尽图 − 在整个过程中,燃尽图描绘了正在进行的工作和已完成工作的总体进度。它以图表形式显示未完成的故事和特性。

Scrum中的仪式(流程)

  • 冲刺计划 − 团队将故事从发布待办事项列表导入到由Scrum主管主持的冲刺待办事项列表中。测试人员估计测试冲刺待办事项列表中每个故事所需的时间。

  • 每日站会 − 持续大约15分钟,由Scrum主管主持。在每日站会期间,成员将讨论前一天完成的工作、第二天计划的工作以及冲刺期间遇到的问题。在每日站立会议期间跟踪团队的进度。

  • 冲刺评审/回顾 − 由Scrum主管主持,此会议持续大约2-4小时,讨论团队在上一个冲刺中完成的工作以及吸取的经验教训。

Scrum测试是什么样的?

当我第一次了解Scrum时,整个测试方法被分成四个象限的事实让我感到惊讶。让我们仔细看看。

第一象限

第一步是检查代码质量。测试人员提供即时反馈。然后,开发人员根据输入继续他们的工作。单元测试和组件架构测试就是这些工作的例子。前者是指开发人员检查代码单元以验证它是否满足要求。后者是确保将代码片段组合在一起时,它们可以工作。

第二象限

测试人员和开发人员都理解需求。两者在履行职责的同时,牢记公司的目标。这包括对多种场景进行测试。原型和线框测试必须在考虑用户体验的情况下进行。

第三象限

自动化测试评估产品的可用性。尽管产品开发尚未完成,但仍在进行测试。预定的演示验证开发是否按照公司的目标进行。第三象限涵盖以下五个阶段 −

  • 测试期间的协作
  • 用户验收测试
  • 观察性研究
  • 可用性测试
  • 结对测试

第四象限

测试人员测试性能、数据迁移、基础设施、压力和负载。其他考虑因素包括身份验证安全性。产品应具有反黑客和反攻击功能。测试人员的另一个考虑因素是可扩展性。

Scrum对测试人员意味着什么?

与标准测试环境不同,测试人员不必等到流程结束才进行测试,而必须在整个过程中进行测试。除了测试之外,测试人员还可以学习新技能,例如开发或业务分析。工作场所文化发生了变化。让我们看看测试人员在进行Scrum测试时遇到的一些事情。

更好地理解业务逻辑

测试人员会接受关于领域应用程序如何工作的广泛培训。他们必须与开发团队紧密合作。这使他们能够提出新的有效的业务案例场景。架构图和开发术语变得更加熟悉。测试人员需要清晰的业务逻辑,以便他们可以与业务分析师和开发人员讨论应用程序规范。

自动化测试以节省时间。

测试人员应该熟悉Selenium、Appium、UFT、GitLab、Codeship、Jenkins等工具。为了保持竞争力,他们必须拥抱变化。

快速测试需要自动化。尽管测试人员必须在自动化过程中处理一些重大变化,但这却是磨练技能的机会。除此之外,自动化降低了与回归测试相关的风险。

最好使用Testim之类的服务。它提供人工智能辅助的自动化功能测试。在自动化测试过程中,它还可以加快执行、创作和维护速度。

从一开始就遵循SDLC

在瀑布方法中,测试人员过去是在测试开始之前等待的。但是,在Scrum测试中,测试人员必须从一开始就遵循SDLC。

通过这种方法,测试窗口扩大,协作得到改善。在这种方法中,测试人员可以彻底了解流程。因此,不会跳过任何测试阶段。

定期进行每日站会

在敏捷环境中,测试人员需要参加定期的每日站会。这些会议通常持续15到30分钟,并且在一天开始时举行。这时,经理或Scrum主管会询问每个团队成员他们前一天的活动。他们还会获取有关当天的任务和潜在障碍的信息。

让测试人员参加每日站会有助于避免项目早期的障碍。包括测试人员在内的整个团队都知道正在发生的事情。它保证某些任务能够完成。

Scrum中测试人员的角色

在Scrum流程中,测试人员没有积极的角色。测试通常由使用单元测试的开发人员完成。在每个冲刺期间,产品负责人也大量参与测试过程。根据项目类型和复杂性,一些Scrum项目使用专门的测试团队。

那么,是否有测试人员的角色呢?下一段将通过测试人员的工作来解答这个问题。

Scrum测试活动

在Scrum的各个阶段,测试人员执行以下任务。

冲刺计划

  • 在冲刺准备期间,测试人员应从产品待办事项列表中选择一个用户故事进行测试。

  • 作为测试人员,您必须确定完成您选择的每个用户故事的测试需要多少小时(工作量估算)。

  • 作为测试人员,他或她必须了解冲刺目标。

  • 作为测试人员,为优先级排序过程做出贡献。

冲刺

  • 协助开发人员进行单元测试

  • 用户故事完成后,对其进行测试。测试执行在一个实验室中进行,测试人员和开发人员都在那里一起工作。

  • 使用缺陷管理应用程序每天跟踪缺陷。在Scrum会议期间,可以讨论和分析缺陷。缺陷一旦得到解决,就会重新测试并部署进行测试。

  • 作为测试人员,他/她参加所有每日站会以发表意见。

  • 作为测试人员,他/她可以将任何无法在当前冲刺中完成的待办事项带到下一个冲刺。

  • 测试人员编写自动化脚本。他使用持续集成 (CI) 系统来规划自动化测试。由于交付时间紧迫,自动化正变得越来越重要。

  • 可以使用市场上各种免费和商业产品来实现测试自动化。这种方法非常适合确保已完成所有需要测试的内容。通过与团队的密切沟通,可以获得足够的测试覆盖率。

  • 审查CI自动化的结果并向利益相关者提供报告。

  • 对已批准的用户故事执行非功能性测试

  • 与客户和产品负责人合作,为验收测试定义验收标准。

  • 在某些情况下,在冲刺结束时,测试人员进行验收测试 (UAT) 并验证当前冲刺的测试是否完成。

冲刺回顾

  • 作为测试人员,他将找出当前冲刺中哪里出了问题以及哪里做对了。

  • 作为测试人员,他确定了经验教训和最佳实践。

Scrum测试的好处

Scrum测试具有以下好处 −

  • 它有助于确定软件的质量。

  • 它对单元测试有益。

  • 它有助于开发复杂的软件。

测试报告

Scrum测试指标报告为利益相关者提供了项目的透明度和可见性。所报告的指标使团队能够评估其成功并规划未来的产品改进策略。在报告方面,通常采用两种指标。

燃尽图 (Burndown chart) − Scrum主管每天在燃尽图上记录冲刺中预期的剩余工作量。燃尽图就是这样,它每天都会更新。

燃尽图快速总结了项目的进度;它包含诸如项目中需要完成的总工作量、每个冲刺中完成的工作量等数据。

速度历史图 (Velocity history graph) − 速度历史图预测团队在每个冲刺中的速度。这是一个条形图,显示团队的产出如何随时间推移而变化。

进度燃尽、预算燃尽、主题完成百分比、已完成的故事与剩余的故事以及其他指标可能也很有价值。

更新于:2021年8月19日

浏览量:1000+

开启您的职业生涯

完成课程获得认证

开始
广告