浅谈自动化测试和性能测试

发表于:2018-12-28 11:53

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

 作者:Cara69    来源:CSDN

分享:
  常常有刚接触自动化和性能测试的同学问我,感觉性能测试和自动化测试是差不多的,我自己刚接触的时候认为也是差不多的,区别就是:自动化一个用户再跑,性能测试需要并发,需要设计各种场景。慢慢的做的多了,发现两者区别还是挺大的。
  共同点:
  接口的自动化测试和性能测试在处理脚本的方式上差不多,特别是使用JMeter、LR 这些工具测试的时候,例如测http协议的请求,只需模拟发送get或post方式的请求,接口脚本很容易转成性能测试脚本。但对于Web应用来说,自动化测试和接口测试就大相径庭了。下面说下具体的差异吧。
  差异:
  1、测试角度不同
  自动化测试和性能测试的出发点不一样,也就是最终的目的不一样。自动化测试是基于功能测试,案例也是来自功能测试,通常用做回归测试,其实测的是业务,是功能。
  性能测试考虑单个接口的性能,有时候不会太考虑整体的业务通不通,只需考虑需要压测接口的性能表现,比如处理的tps、平均响应时间、支持的并发用户数。当然性能测试也会关注整个流程的测试。
  比如有个做性能测试的小伙伴去做接口测试,就某一个产品的下单操作来说,做接口测试是为了查看下单这个功能是不是正常,他写的接口测试脚本跟性能测试脚本一样,只有一个下单的接口,下单之前一些商品的查询,账户的查询都没有做,这在业务上是不连贯的。
  2、使用框架不同
  如果说接口的自动化测试和性能测试在脚本处理上有些相同,就Web测试来说,二者就大相径庭了。首先使用的框架就不一样,Web自动化测试使用的是Selenium Webdriver,模拟的是点击页面的元素,性能测试还是录脚本、发请求。一个主要是关注页面元素,后端做了些什么完全是黑盒;一个需要关注发的请求有哪些,是post还是get,传的参数是什么,后端的一些知识还是要了解下,有点像灰盒。
  3、要掌握的技能不同
  自动化测试偏重开发,对开发语言要求相对高些,如果只是配置现成的框架做自动化测试,那要求并不高。
  性能测试要了解的知识很多,脚本语言(C或者java等等)、操作系统Linux,常用的监控命令,出问题时分析线程)、数据库(查询语句、表的关联、索引、Oracle的AWR 报表);如果是高级的性能测试,那还要懂架构方面的知识。
  总的来说,自动化测试偏向于开发,但要有测试的思维;性能测试要懂的知识点很多,真正高级的性能测试也跟开发架构师的水平差不多了。
  
     上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号