什么是HP ALM?Quality Center (QC) 测试工具
什么是 HP ALM?
HP ALM (Application Lifecycle Management) 是一款基于网络的工具,可帮助组织管理应用程序生命周期,从项目规划、需求收集到测试和部署,否则这是一项耗时的工作。
在其早期版本 HP Quality Center 中,这款测试管理工具由 Mercury interactive 开发。
它现在由 HP 开发为 ALM。ALM 的全称是应用程序生命周期管理工具,支持软件开发生命周期的各个阶段。
ALM 工具还提供与其他所有 HP 产品(如 UFT 和Load Runner)的集成。
为何使用 HP ALM?
典型项目中涉及的各个利益相关者包括:
- 开发人员
- 测试员
- 业务分析师
- 项目经理
- 产品负责人
这些利益相关者执行各种活动,需要将这些活动传达给所有相关的团队成员。
如果我们不维护一个集中式存储库来记录、维护和跟踪所有与产品相关的工件,项目无疑会失败。
我们还需要一种机制来记录和协作所有测试和开发活动。
HP ALM 登场!
- 它使所有利益相关者能够互动和协调,以实现项目目标。
- 它提供强大的跟踪和报告以及各种项目相关任务的无缝集成。
- 它支持详细的项目分析和有效管理。
- ALM 工具可以连接到我们的电子邮件系统,并向所有所需的团队成员发送有关任何更改(如需求变更、缺陷提出等)的电子邮件。
HP Quality Center 版本
了解 ALM 的历史非常重要。
- HP Quality Center 以前称为 Test Director,由 Mercury Interactive 开发。
- 2008 年,发布了版本 8,产品更名为 Quality Center。
- 后来,HP 收购了 Mercury Interactive,并将所有 Mercury 产品重新命名为 HP。
- 因此 Mercury Quality Center 变成了 HP Quality Center。
- 2011 年,发布了版本 11,Quality Center 更名为 HP ALM。
QC 的架构
现在让我们了解 HP-ALM 的技术部分。ALM 是一个使用Java 2 Enterprise Edition (J2EE) 开发的企业应用程序,其后端可以是 MS SQL Server 或 Oracle。ALM 包含 3 个组件:客户端、应用服务器和数据库服务器。
- HP ALM 客户端:当最终用户/测试人员访问 ALM 的 URL 时,客户端组件会下载到客户端系统上。ALM 客户端组件帮助用户通过 .NET 和 COM 技术通过安全连接 (HTTPS) 与服务器交互。
- ALM 服务器/应用服务器:应用服务器通常运行在 Windows 或Linux 平台上,用于处理客户端请求。应用服务器利用 Java 数据库连接 (JDBC) 驱动程序在应用服务器和数据库服务器之间进行通信。
- 数据库服务器:数据库层存储三个架构。
- 站点管理架构:它存储与域、用户和站点参数相关的信息。
- 实验室项目:此架构存储与远程主机上的功能和性能测试相关的实验室信息、Performance Center 服务器数据。
- 项目架构: 存储项目信息,例如用户在项目区域下创建的工作项/数据。每个项目都有自己的架构,它们与站点管理架构创建在同一个数据库服务器上。
HP ALM 版本
HP ALM 工具是一款商业许可工具,HP 以 4 种不同的版本分发 ALM
ALM 版本功能比较
每个许可证都允许用户访问特定的 ALM 功能。下表列出了特定许可证提供的功能 =
让我们研究一下为什么你会购买某个特定版本以及它适合谁
- HP ALM Essentials – 这适用于那些只需要基本功能来支持其整个软件生命周期的公司。它具有需求管理、测试管理和缺陷管理功能。
- HP QC 企业版 – 此许可证适用于希望专门将 ALM 用于测试目的的公司。它还提供与统一功能测试器 (UFT) 的集成。
- HP ALM 性能中心版 – 此许可证最适合希望使用 HP ALM 驱动 HP-Loadrunner 脚本的组织。它帮助用户维护、管理、调度、执行和监控性能测试。
ALM 工作流程
要了解 HP Application Lifecycle Management 工作流,我们首先研究一个典型的测试过程-
- 我们从规划、起草和发布详情开始。确定每个发布中的周期数和每个发布的范围
- 对于给定的发布和周期,我们起草需求规范。
- 根据需求,创建测试计划和测试用例。
- 下一阶段是执行已创建的测试计划
- 此测试过程的下一阶段是跟踪和修复执行阶段检测到的缺陷
- 在所有阶段,都会进行分析,并生成报告和图表以生成测试指标。
HP ALM 测试工具为测试过程的每个阶段提供一个模块。我们将在后续教程中详细学习它们。