敏捷开发中如何持续集成和优化软件性能

        敏捷开发中快速进行版本迭代和发布,已经成为大多数敏捷团队的工作常态。同时,保证每个版本软件功能运行性能不下降也是其基本目标,但是由于团队资源不足或者测试成本过高等原因,对于多数团队来说这一基本目标也只是美好的愿景。

        其实,做到这一点也不难,对于核心代码建立单元级别的自动化性能测试,对于核心业务流程建立Web应用级别的自动化性能测试,在每次代码集成或发布的时候由构建系统自动运行测试,测试完成后和历史数据进行对比评估并自动发送报告给团队成员,做的好一点甚至可以和代码变更记录进行关联联想,自动推测可能导致性能下降的代码变更,这样团队就可以及时发现潜在的问题,快速消除风险。这套体系基本上是一次性投入,多次复用的,比起赌概率等问题出现搞突击加班加点还是很划算的。

       涉及到的要点主要如下:

       1、构建系统自动运行测试和发送报告

             现在的构建系统都支持自定义运行任务,自动发送报告,已经不是什么问题。

       2、编写单元性能测试代码

            已经有测试软件可以支持直接调用代码,以脚本语言快速编写测试代码,只需几行方法调用,就可以模拟并      发运行以及支持配置复杂逻辑调用,比如HyperPacer、Jmeter等

       3、应对Web页面快速变化自适应的性能测试脚本开发

            大多数开发平台的Web控件都是有规则可循的,选择支持基于关键字匹配的测试软件(比如HyperPacer),         可以将Web页面的控件识别设置形成规则库,在脚本运行时自动进行关联匹配,只要关键字不变,即使Web页面         发生变化,也能匹配到正确的控件,提高脚本的复用性。

       4、应对数据变化的测试

            应用真实模拟测试中,经常需要模拟变化的数据,选择支持数据工厂或数据池化处理的测试工具比如HyperPacer),可以根据规则自动生成需要的测试数据,或者将已有的测试数据管理起来,减少模拟数据的工作量。

你可能感兴趣的:(软件性能)