测试管理是对保证产品质量的测试活动进行规划、监控和记录。
测试管理与软件测试密切相关。随着软件开发变得越来越复杂,测试工作也同样如此,使得测试管理成为开发过程中的重要环节。
当今的测试管理通常涉及测试管理解决方案的使用,可组织并简化测试所需的关键工作流程。此类解决方案能够优化测试规划、帮助构建测试环境、实现测试自动化和可追溯性,改善团队成员之间的沟通和协作。
测试管理不应与项目管理混淆:项目管理可用于组织整个软件开发生命周期 (SDLC),而测试管理着重关注 SDLC 的软件测试过程。
有效的测试管理可以实现持续测试,实时揭示产品质量改进机会,在产品仍处于开发阶段时修复问题,从而加速高质量产品的交付。这与传统测试方法形成鲜明对比:传统测试通常在产品开发过程的最后阶段进行,提供的改进机会和缺陷管理机会较少。
测试的目标是识别并解决问题,使产品满足最终用户的期望。尽管软件应用程序测试取得了显著进展,但多年来仍出现了代价高昂的质量问题。
20 世纪 60 年代,软件测试很大程度上局限于单行代码测试或单元测试。但经过几十年的发展,测试流程的覆盖范围已大幅扩展,从确保不同软件组件能协同运行的集成测试,到检查代码或功能更新是否损害软件整体功能的回归测试,多种类型的测试策略和测试目标均包含其中。
虽然开发不同的测试策略可以帮助组织发现更多问题,但可用测试和测试指标的多样性也带来了优先级划分的挑战。组织需要划分测试类型和测试用例的优先级,以便识别紧急问题并迅速将其解决。测试对象日益复杂,使这一挑战变得更为艰巨:每个产品的特性和功能增加意味着需要进行更多测试。
测试规划中缺乏优先级和优化可能导致测试周期低效和无效,阻碍敏捷开发和 DevOps 等开发方法的执行,且无法及时发现代价高昂的缺陷。幸运的是,测试管理和测试管理工具有助于缓解这些挑战,帮助开发团队加速高质量软件的交付并满足可扩展性需求。
虽然测试管理框架可能因公司而异,但测试管理过程通常分为两个阶段:规划和测试执行,均由测试经理监督。
在规划阶段,测试经理进行风险分析,确定测试生命周期中可能出现的问题;测试估算,考虑测试所需的资源和资金;测试规划,制定测试策略和目标;测试组织,构建测试团队并为测试人员和其他团队成员分配职责。
在测试执行阶段,测试经理监督并监控测试活动进度;进行问题管理,识别测试过程中出现的问题并指导团队成员解决问题;创建测试报告,总结并分析测试过程和测试数据,供利益相关者审核。
过去,公司使用 Excel 等电子表格工具来进行测试管理。虽然这些工具易于学习,但现代测试管理系统提供了更好地整理和简化测试管理过程的功能。
当今测试管理工具的一项主要优点是自动化,包括自动化 API 测试、功能用户界面 (UI) 测试、性能测试和服务虚拟化(模拟可能无法实时获得的必要测试组件)。自动化还能帮助测试人员在不同的测试运行中重复使用测试数据,从而提高效率。
其他测试管理系统功能可能包括:
利用面向智能资产管理和供应链的 AI 解决方案,构建更具弹性的业务。
借助 IBM 利用丰富的数据和强大的 AI 技术来集成优化流程,从而实现业务运营转型。
IBM Cloud Pak for Business Automation 是一套模块化的集成软件组件,用于运营管理和实现自动化。