【eNet硅谷动力专稿】一直以来,测试是都是应用生命周期的一个单独活动,使用不同并且没有关联的工具。首先,开发团队会运行一套JUnit测试套件,作为建设过程的一部分。然后,质量保证团队会手动创建并运行了一套针对用户界面的功能测试。最后,性能团队将使用一套单独的负载测来试运行和监督完成的应用。
在传统世界里,这些团队之间并没有太多的信息和测试结果的交流,除了偶尔会有书面的“错误报告”,但往往队问题发生的根源描述比较简单。发生这种情况主要是因为现有的测试工具所产生的测试结果是矛盾的,并且在很大程度上与链条上的下一个团队无关。单元测试对于开发人员测试代码中的结构型漏洞是很有帮助的,但这些测试并没有转化成质量保证小组任何可用的业务信息。质量保证小组不得不自己进行用户界面测试,很明显,他们测试组件或代码的方法与开发人员追踪问题根源所使用的方式不同。
这不是一个非常有效的过程,所以企业开始围绕高效的过程工具调整人员,更好地处理工具,从而实现更好地管理开发和集成。敏捷性不只是提供更快的发布周期,而且还提高了企业应用的可靠性,为应用生命周期和控制工具“灌输”了更高程度的协作和控制。敏捷性还能提高开发过程的效率以及灵活性。但是,如果测试和验证处理得不恰当,风险就有可能会出现并损害这些成果。
在这一系列文章中,我们主要看看敏捷生命周期的四个方面:测试和质量管理、应用生命周期管理、IT业务、监测和业绩、IT和SOA治理。但首先,让我们先来看看经常遇到的主要应用过程工具。
所有应用过程工具的目标是在软件生命周期中嵌入某种形式的工作流程,无论是测试、开发、操作、治理还是IT基础设施一体化。能够由主流过程工具直接测试和验证是大多数SOA和企业软件组件所必须的。
通过使用可执行的测试资产支持这些工具的工作流程,我们得到了一个更高程度的可预见性和性能,同时允许开发、测试和运营团队用自己喜欢的工具和方法更好地管理各自的过程。虽然供应商提供的许多解决方案可能会跨不同的工作领域(例如生命周期管理可能包括一些测试管理),我们提供了上述列表作为典型的IT客户环境中遇到的工具样本。敏捷开发实践的关键是与开发活动进行密切测试互动,已变加快产品发布时间并优先考虑商业功能
从本质上说,测试或验证是向上述过程和自动化工具存储、或提供的一种反馈,有助于实现SOA的敏捷性这一目标。在下一篇文章中,我们将讨论测试和质量管理。