通过接口测试发现服务的性能问题
个人总结的经验:
接口自动化测试很重要,特别是业务场景的接口自动化测试(主流程多链路的接口自动化测试)最为重要!!!
1,可以先对每一个接口单独进行压测,看看响应时间和资源占用率是不是正常,然后在串起来做业务场景的接口自动化测试,
因为很多时候单个接口做压测的时候没有任何问题,但是将多个接口串联在一起进行多线程循环跑的话就会出现问题。
所以必须将多个接口串联在一起做业务场景的接口自动化测试!
2,业务场景的接口自动化测试可以很直观的得出每个接口的响应时间
如果某个接口的响应时间超出了正常的响应时间,就表明这个接口响应比较慢,可以进一步排查时间消耗在哪里(数据库,服务调用,网络,代码)
3,业务场景的接口自动化测试可以很直观的得出每个接口的资源占用率(cpu,内存,io)
如果某个接口的cpu或内存占用率很高,也表明存在一些性能问题,可能是内存泄漏或内存溢出,都需要进一步的排查