大型机测试2025年3月17日 | 阅读 14 分钟 在本节中,我们将了解Mainframe 测试,它用于测试在 Mainframe 系统上开发的软件或应用程序和服务。 我们还将学习 Mainframe 属性、Mainframe 测试类型、如何执行 Mainframe 测试、在执行 Mainframe 测试时遇到的不同挑战和故障排除、Mainframe 测试中使用的各种命令、Mainframe 测试期间遇到的一些常见问题以及 Mainframe 自动化测试工具。 在理解 Mainframe 测试的概念之前,我们将先了解 Mainframe。 什么是 Mainframe?Mainframe 是一种多用户、高性能、高速度的计算机系统。Mainframe 是最可靠、可扩展且安全的机器系统。 换句话说,我们可以说这些系统用于大规模计算,涉及极高的可用性和安全性。Mainframe 系统主要用于各种细分领域,如零售、保险、金融和其他关键领域,在这些领域中,海量数据会被处理多次。 通过以下方面,我们可以每秒执行数百万条指令 [高达 569,632 MIPS]
在理解了 Mainframe 的概念后,现在我们进入我们讨论的重点——Mainframe 测试。 什么是 Mainframe 测试?Mainframe 测试的主要目标是通过验证和确认方法来确保应用程序或服务的可靠性、性能和卓越性,并检查其是否已准备好部署。 在执行 Mainframe 测试时,测试人员只需要了解 CICS 屏幕的导航,因为这些屏幕是为特定应用程序定制的。 如果 COBOL、JCL 等代码发生任何修改,测试人员不必担心机器上的模拟器设置。 在哪里执行 Mainframe 测试?通常,Mainframe 测试在已部署的代码上执行,并通过将多个数据组合设置到输入文件中。换句话说,我们可以说 Mainframe 应用程序 必须在生产运行之前经过全面测试。 Mainframe 应用程序,或者称为批处理作业,是根据开发的测试用例与需求进行测试的。 运行在 Mainframe 上的软件或应用程序可以通过终端模拟器进行检索。 在理解了 Mainframe 测试之后,我们将看看 Mainframe 测试的几个特征。 Mainframe 测试方法论在 Mainframe 测试中,软件或应用程序的检索方式与 Web 应用程序不同,是由 最终用户 执行的。 应用程序测试人员应该了解这些重要的区别,如下所示。
Mainframe 属性在 Mainframe 测试中,我们有以下 Mainframe 特性;让我们一一来看。
![]() 多进程
分时
虚拟存储
Spooling
批量处理
如何进行 Mainframe 测试Mainframe 测试可以有两种方式执行:手动 或使用一些 自动化工具,如 QTP、REXX 和 IBM Application Performance Analyzer 等。但通常,我们将 手动 执行 Mainframe 测试。 要进行 Mainframe 测试,我们需要遵循以下步骤: ![]() 步骤 1:规划 首先,业务团队 或 开发团队 构建 测试计划,包括 业务需求文档、系统需求文档、其他 项目文档 和 输入。它控制在发布周期中特定项目或流程将如何被更改。 同时,为了提前准备测试场景和测试用例,测试团队将与开发和项目管理团队协调。 步骤 2:计划安排 一旦需求文档成功准备好,它将被移交给开发团队和测试团队。测试计划应与项目交付计划一起书写,并且应准确。 步骤 3:可交付成果 收到文档后,他们将检查可交付成果。可交付成果应描述清晰,没有任何不确定性,并且应满足测试目标的范围。 步骤 4:实施 之后,实施应按照计划和可交付成果进行。 通常,在发布中,15-25% 的应用程序将直接受到修改需求的影响。而发布的其他 60-75% 将依赖于开箱即用的功能,如应用程序和流程的测试。 因此,我们需要通过两种方式测试 Mainframe 应用程序:
测试需求: 我们将测试应用程序的功能或需求文档中披露的修改。 测试集成: 回归测试 是此测试活动的主要关注点。我们将测试整个流程或其他接收或发送数据到先前应用程序的应用程序。 步骤 5:报告 之后,我们将定期与开发团队分享测试结果。为了保持连续性,测试团队应与开发团队保持联系,以便在关键情况下进行即时修改。 Mainframe 手动测试的分类Mainframe 手动测试 可分为以下两类:
![]() 在线测试
批处理作业测试
Mainframe 测试命令在 Mainframe 测试中,我们使用各种命令,这些命令在测试应用程序或软件时非常有用。 以下表格显示了一些最常用的 Mainframe 测试命令:
注意:我们在执行 Mainframe 测试时还有一些其他命令,但它们不经常使用;因此,我们只在需要时使用这些命令。Mainframe 操作的先决统计信息在对应用程序执行 Mainframe 测试时,测试人员应掌握以下关于 Mainframe 操作的信息:
Mainframe 测试的挑战和故障排除如果我们正在对应用程序执行 Mainframe 测试,我们可能会遇到一些挑战,对于这些挑战,我们有一些特定的方法,如下表所示:
Mainframe 测试的步骤在执行 Mainframe 测试时需要遵循以下步骤: 步骤 1:冒烟测试 第一步,我们将执行 冒烟测试,检查安装的代码是否在正确的测试环境中。它还确保代码没有关键问题,从而节省测试人员在测试有缺陷版本时的时间。 步骤 2:功能测试/系统测试 执行冒烟测试后,我们将进行一轮功能测试或 系统测试,以独立地测试各个模块的功能以及它们之间的相互关系。 以下是在实施系统测试时必须进行的测试类型:
我们将执行批处理测试,以根据测试规范验证输出文件中的测试结果以及批处理作业完成的数据修改。 注意:批处理作业是一系列事件,它们在没有用户与可访问计算资源交互的情况下执行。
在在线测试中,我们将测试 Mainframe 应用程序的 前端 功能。在线测试涵盖了各种方面,例如 用户友好性、数据输入验证、外观和感觉、屏幕内的导航等。 应用程序应针对精确的输入字段进行测试,例如计划中的利息、保险计划等。
在线-批处理集成测试可以在具有批处理进程和在线应用程序的系统上执行。在这里,我们还测试了在线进程与后端进程的集成功能。 基本上,在此测试中,我们验证数据流的准确性以及屏幕与后端系统之间的交互。批处理作业用于检查在线屏幕之间的数据流和通信。
数据库测试用于测试事务存储的数据是否符合系统规范。数据库验证其布局和数据存储,其中包含 Mainframe 应用程序的数据,例如 IMS、IDMS、DB2、VSAM/ISAM、Sequential datasets、GDGs。 在数据库测试中,我们还可以验证 数据完整性 和其他数据库参数以获得最佳性能。 步骤 3:系统集成测试 系统集成测试用于检查系统功能与被测系统相关。在单元级测试之后执行,因为测试接口和各种消息(如 作业成功、作业失败、数据库已更新等)很重要。 为了正确性,我们将测试跨模块和应用程序的数据流。执行系统集成测试以确保构建已准备好部署。 在系统集成测试中,我们可以执行以下测试:
步骤 4:回归测试 任何测试中最关键的阶段是回归测试。回归测试是为了确保 批处理作业和在线屏幕 不会直接影响被测系统,并且不受当前项目发布的影响。 回归测试保证了模块中的修改不会影响父应用程序和整体功能以及集成应用程序。 应根据其复杂性接受一组特定的测试用例,并且应创建 测试用例存储库 以获得成功的回归测试。并且,每当有新功能集成到发布中时,都应修改特定测试。 步骤 5:性能测试 在 Mainframe 测试中,下一步是性能测试。在性能测试中,我们将尝试查找关键区域的瓶颈,例如 前端数据、升级在线数据库以及预测应用程序的可扩展性。 在 Mainframe 应用程序中,我们可能会遇到以下性能问题:
为了克服上述问题,我们应该通过以下方式充分测试应用程序:
步骤 6:安全测试 安全测试包括评估应用程序和网络的 威胁、风险、漏洞 并提出补救措施。 安全测试应涵盖 身份和访问管理、风险与合规管理、数据保护与隐私政策遵从 等用例。 换句话说,我们可以说安全测试是为了检查应用程序在对抗安全攻击方面的设计和开发程度。 安全测试应在两种安全系统上完成:Mainframe 安全和网络安全。 在安全测试中,我们需要测试以下方面:
步骤 7:敏捷方法 敏捷方法用于简化应用程序的渐进式开发,并快速响应更改。 注意:在敏捷开发场景中,我们可以使用增量测试方法。Mainframe 自动化测试工具市场上我们有各种类型的 Mainframe 自动化测试工具。以下是一些最常用的 Mainframe 自动化测试工具:
QTP [Quick Test Professional]QTP 工具用于测试 Web 应用程序的功能回归测试用例。QTP 代表 Quick Test Professional,现在称为 Micro Focus UFT [Unified Functional Testing]。 对于新测试工程师来说,它非常有帮助,因为他们可以快速理解这个工具。QTP 基于 VB 脚本等脚本语言进行应用程序自动化。 ![]() QTP 的特性 以下是 QTP 最常见的特性:
REXX [Restructured Extended Executor]它是一种解释型编程语言,在 IBM 开发。REXX 是一种高级、结构化编程语言,专为阅读和学习而设计。REXX 代表 Restructured Extended Executor。 它用作 脚本和宏 语言。换句话说,我们可以说 REXX 经常用于 处理文本、数据和生成报告。 它支持各种操作系统,如 MVS、OS/2、AmigaOS、VM。 REXX 也可以用作某些其他软件的 内部宏语言,例如 KEDIT、ZOC 终端模拟器、SPFPC 等。 ![]() REXX 的特性 以下是 REXX 最常见的特性:
执行 Mainframe 测试的优势执行 Mainframe 测试过程的优势将在以下方面帮助我们:
概述在 Mainframe 测试部分,我们学习了以下主题:
下一主题Adhoc Testing |
我们请求您订阅我们的新闻通讯以获取最新更新。