通过引入基于图像的自动化测试技术,气象部门增强了对灾害性天气信息预警系统的信心。
英国国家气象局提供全国范围内的气象服务,涵盖从短期天气预报到长期气候变化的所有预报工作。该部门向公众提供了一个名为NSWWS(National Severe Weather Warning Service, 国家严重天气预警服务)的灾害性天气预警系统。该系统旨在警告公众和应急服务机构有关可能威胁生命或造成广泛破坏的灾害性天气信息。
NSWWS是一个复杂的后台服务应用,与气象局的其他许多系统交互。由于系统新版本的发布和变更,总会出现潜在的问题。气象局的信息部门希望采用更频繁的回归测试,以减少这些问题带来的风险。Ian Gentry,测试团队领导,解释说:“NSWWS服务于公众和紧急情况应对组织,对那些可能危及生命或造成广泛性破坏的灾害性天气作为告警。因此,在相关软件更新过程中,可能给NSWWS系统引入任何问题,可能导致灾难性结果。并且,作为政府机构,这些缺陷也会给国家和组织带来潜在的声誉损害!所以我们不断寻求改善对系统质量的信心,降低组织风险的解决手段。规范的测试是其中的一个重要部分。”
NSWWS是一个复杂的系统,包含许多不同的输出渠道和过程。气象局的气象中心对发出的警告包括警报类型(如雪、风、冰等)的详细信息和受影响的区域。这些内容包括数据和非数字化内容,如图像、地图和影像等。经过一系列内部系统和数据网络处理后,以多种形式和多种媒介显示在不同类型的终端系统上,包括气象局的官方网站、手机网站、移动应用或激励其他预警系统。
如何确保气象中心发布的所有不同类型的信息,都能以各种所需的不同类型的表现形式正确地显示在各类终端系统上,对于NSWWS系统来说至关重要。
国家气象局最终决定采用测试自动化解决方案,使其能够自动化现有的手工回归测试,增加整体的回归测试频率,以减少潜在风险,提高质量信心。
信息部门选择了基于图像识别的功能测试自动化解决方案,使用具有专利的、基于图像识别的方法进行基于用户界面的测试,允许测试人员以与用户相同的方式,通过观察屏幕显示来实现与任何类型待测设备和系统的交互。事实上,测试团队正在使用基于图像识别的方法来验证其公共网站上的警告的可视化是否恰当,以改善应用的用户体验。
国家气象局信息部门希望使用其内部已有的警告管理器工具生成警告场景,然后检查这些警告的图像在多个终端上正确显示。实践中,他们将警告管理器的输出输出到一个XML文件,并将这个文件的内容直接注入到警告处理系统中。基于图像识别的功能测试平台,采用数据驱动的测试方式,将这个文件的内容作为测试输入,来校验这些警告在网站上正确的输出,并验证这些内容以公众或其他紧急响应团队期望的形式来显示。
“我们一直想要一个简单易用的工具,可以支持我们的测试需求,从测试生成到可视化验证,而且,测试方法最好是非侵入性的。我们发现基于图像识别的这种以用户为中心,基于图像识别的自动化测试方法,很好地满足了我们的这一需求。”Gentry补充说。
“很多警告类型会覆盖多个区域,有许多小而重要的细节,例如,东北部的警告可能部分地延伸到西北部,这意味着警告应该显示在这两个地区。重要的是,我们的测试应该能发现任何不准确的地方,无论多么微小。这些问题,可能是由于系统的变化或更新引起的。我们必须分配资源去做足够的回归测试,而不得不停下其他重要的任务。但我们还希望能够更频繁地运行测试——即使在有些看似不会影响NSWWS系统的变更发生时。”
自从实施基于图像的功能测试自动化以来,英国国家气象局已经能够将以前花费在回归测试上的时间,从每次半天缩短到仅仅每次10分钟,从而使IT团队更有效率。因此,测试团队能够从过去每四到六周一次回归测试,提高到每周两次,显著地增加回归测试的总体覆盖程度和频率。每当当和NSWWS相关的任何变更发生时,团队可以快速运行测试。
“Aidan Green,气象局项目管理负责人强调说:“自动化工具很好的支持了我们从瀑布开发模式向敏捷开发模式的变革。它允许我们以一种低成本的方式实现我们缓解风险的目标,同时对任何新上线实施的过程,实施至关重要的审计跟踪。”
“使用基于图像识别的测试平台,我们现在可以在几分钟内,对任何有可能影响到NSWWS系统的变更进行测试,”Gentry总结说,“它改变了我们的测试方法。通过自动化,我们的测试现在变得更快和更频繁,使得我们有信心将更多的新功能发布到被可靠验证和保护的关键产品中。”
“有了基于图像识别的测试平台,我们现在可以确信任何对NSWWS的变更和更新没有带来任何问题,这改变了我们的测试方法。”
Ian Gentry,测试团队领导,国家气象局