性能测试的目的是什么?
发现性能瓶颈。
性能测试的具体分类有哪些?
1.负载测试:通过逐步加压的方法,达到既定的性能阈值的目标;
2.压力测试:通过逐步加压的方法,使得系统的某些资源达到饱和甚至失效(什么条件下能把系统搞崩)
3.并发测试:在同一时间内,多个虚拟用户同时访问同一模块、同意功能,通常的测试方法是设置集合点。
4.容量测试:通常是指数据库层面的,目标是获取数据库最佳容量的能力。(容量预估)具体测试方法为在一定的并发用户下,不同的基础数据量下,观察数据库的处理能力,即获取数据库的各项性能指标。
5.可靠性测试:又称之为稳定性测试或疲劳测试,是指系统在高压情况下,长时间运行系统是否稳定,如CPU使用率在80%以上,7*24小时运行,系统是否稳定。
6.异常测试:又称之为失败测试,是指系统架构方面的测试。如在负载均衡架构中,要测试宕机、节点挂掉等情况系统的反映。
性能测试的工作流程是什么?
需求分析-性能指标制定-脚本开发-场景设置-监控部署-测试执行-性能分析-性能调优-再次测试执行-再次性能分析-再次性能调优-测试报告
性能测试的常见系统应用分层架构是什么?
与“监控部署”这一阶段关联比较紧密。一个程序拿到手里之后,我们能将其拆分为多少块,怎么来进行监控部署
显示层(view):web、Android、iOS、H5
逻辑控制层(controller):API
数据存储层(model):mysql、monggodb(文档格式进行存储,不支持事务,MySQL可以,而且存储数据量比MySQL大)、redis(内存数据库,读取很快)
性能测试指标定义?
1.事务:从客户端发起的一个或多个请求(这些请求组成一个完整的操作),到客户端接收到从服务器返回的响应;
2.TPS(transaction Per Second):每秒钟系统能够处理的事务数;
3.请求响应时间:从客户端发起的一个请求开始,到客户端接收到从服务器返回的响应,整个过程所耗费的时间;
4.事务响应时间:由一个或者多个请求组成的,事务响应时间主要针对用户的需求,如转账;
5.并发定义:没有严格意义上的并发。并发总有先后,无论差距是1毫秒或者1微秒,总有一个时间差。所以并发讲的是一个时间范围内,比如1秒内;
【并发举例:多用户在系统上进行同一操作,比如双十一时,大家都针对同一种商品进行秒杀
多用户在系统上进行不同操作,比如双十一时,大家都针对不同商品进行秒杀,或者是大家有进行其他不同的操作,比如商品浏览】
6.并发用户数:同一单位时间内对系统发起请求的用户数量;
7.吞吐量:一次性能测试过程中网络传输的数据量的总和;
8.吞吐率:单位时间内网络上传输的数据量
吞吐率=吞吐量/传输时间
9.点击率:每秒钟用户向服务器提交的请求数【每秒钟用户总共在页面上进行多次点击动作,单击一次有可能向服务器发送了多次请求】
10.资源使用率:对不同的系统资源的使用情况,如CPU,内存,IO
性能测试为什么要进行需求分析?
明确测试指标,明确测试场景。