利用Fitnesse和Jmeter实现接口性能测试

发表于:2012-6-06 10:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Victor_菜    来源:51Testing软件测试网采编

  由于Fitnesse上所有case的执行都是向SlimServer发送Http请求,那么我们可以针对相关Case实现性能测试,这样的好处有以下三点:

  1、用于在Fitnesse上已经构建了相关的测试场景或者业务逻辑,我们只需要利用性能测试工具去调用这些Case便可以实现压力测试

  2、在准备压力测试数据的时候,由于有些数据需要多个接口组合调用才能完成,比如下面的测试场景有两个webservice接口,CreateMember和CreateOperator。

  每个Member下面有多个Operator,我们要先构建Member才能创建Operator,如果直接使用Jmeter的话要首先创建Member接口创建member,然后在调用CreateOperator接口创建operator,其中member中的memberId还要和OperatorId做关联,无疑要相对麻烦一些。因为我们先前已经利用Fitnesse对CreateOperator做过功能测试,在Fitnesse的Case中已经完美的实现创建Operator这个场景,并且做到数据的关联,因此我们只需要直接利用这个Case做压力测试数据准备工作

  3、可以利用功能测试的Case实现压力测试,使功能测试和压力测试串联起来,可以互相协助并发现一些功能和性能上的问题。

  下图给出一个Fitnesse接口Jmeter做压力测试的例子:

  其中红色方框中的路径,便是Fitnesse上面case的路径,记得一点要加上?test,这样便告诉Jmeter这是一个执行Case的get 请求。

  当然利用Fitnesse做接口压力测试,也要注意,由于在Fitnesse上面书写的Case可能没有考虑接口的Response Time, 比如在两个接口的组合调用中有Thread.Sleep(time)等,所以在压力测试中对接口的Response time的检查一定要去除这些等待时间或者其他对压力测试结果有影响的时间因素,这个需要在功能测试中对每个接口调用时要清晰的在日志中记录一些影响因素,便于压力测试时的分析。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号