使用nGrinder实现性能测试驱动开发

为君一笑 提交于 2019-11-29 04:36:51

来自 : Performance Driven Development  作者 : Juno.Yoon

使用nGrinder实现性能测试驱动开发

   在许多项目中,开发者们通常不会在项目中期就考虑到各种非功能性要点。他们经常只是专注于功能需求而忽略了非功能需求,直到项目进入到QA阶段。我曾经见到过,许多在压力负载较大情况下发生的问题在开发的最后阶段才被发现,导致开发工作陷入一片混乱。我想类似问题发生的一个重要的原因,是没有容易的方法在项目中期确认非功能需求(特别是性能需求)。

   nGrinder是为了达到性能测试“0”成本的目标而创造出来的。我观察到许多开发者在他们自己的PC上安装并使用nGrinder。在这个事例中,很难说性能测试的成本是“0”,因为因为他们必须提供足够的PC机器作为Agent并且预置环境,比如Java。但是如果在一个组织中有人已经安装了nGrinder并且与整个团队分享,将大大降低性能测试的困难程度。在这样的情况下,其他使用者所需要做的只是多启动一个浏览器而已。我可以说性能测试的成本实际上几乎是“0”。

   NHN正是这样运营nGrinder的。所有NHN的开发者都能够通过浏览器访问http://ngrinder.nhncorp.com,并以SSO方式自动登陆nGrinder实例。然后只需要在首页输入目标URL,从而启动一个性能测试。

  用nGrinder能够发现的问题,而用其他方法可能就没那么容易。通常这些问题只有当用户流量如洪水般涌入产品服务器时才被发现。然而,通过nGrinder发现这些问题是非常简单的。下面是我们从本公司-NHN-内部的nGrinder用户处搜集回来的反馈。当我们使用Performance Center的时候,,由于包括注册步骤在内复杂的过程,我们需要花不少时间来搜集返回的结果。但是,使用nGrinder,我们可以很快获得反馈结果。这对提升开发速度非常地有帮助。

  这是否跟你曾经在哪里见过的一样?TDD(Test Driven Development)?如果我们用test替换Performance Center,用功能替换性能,再用JUnit替换nGrinder,你会发现这与TDD是完全一样的。这就像是通过步进式的开发来发现更好的解决方案。我更倾向于称之为"性能驱动开发"。

   如果你已经是nGrinder用户了,请让他人使用你已经安装好的nGrinder实例。这会显著减少性能测试的消耗,而且你会感受到跟我一样的快乐--使用nGrinder实现最为便捷与有效的性能测试。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!