软件测试2019:第四次作业
第四次作业--性能测试(含JMeter实验)
一.性能测试有几种类型,它们之间什么关系?
答:
性能测试包括:负载测试、压力测试、配置测试、并发测试、容量测试、可靠性测试、失败测试。
负载测试:是通过逐渐增加系统的负载,测试系统性能的变化,并最终确定在满足系统性能指标的情况下,系统所能承受的最大负载量的测试。简而言之,负载测试时通过逐步加压的方式来确定系统的处理能力和能够承受的各项阈值。
压力测试:是通过逐步增加系统的负载,测试系统性能的变化,并最终确定在什么负载条件下,系统性能处于失效状态,并获得系统能提供的最大服务级别的测试。压力测试是逐步增加负载,使系统某些资源达到饱和和甚至失效。
配置测试:主要是通过对被测试软件的软硬件配置进行测试,找到系统各项资源的最优分配原则。配置测试能充分利用有限的软硬件资源,发挥系统的最佳处理能力,同时可以将其与其他性能测试类型联合应用,从而为系统提供重要依据。
并发测试:测试多个用户同时访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题,几乎所有的性能测试都会涉及一些并发测试。
容量测试:在一定的软、硬件条件下,在数据库中构造不同数量级的记录数量,通过运行一种或多种业务场景在一定虚拟用户数量的情况下,获取不同数量级别的性能指标,从而得到数据库能够处理的最大会话能力,最大容量等。系统可处理同时在线的最大用户数,通常和数据库有关。
可靠性测试:通过给系统加载一定的业务压力(如CPU资源在70%~90%的使用率)的情况下,运行一段时间,检查系统是否稳定因为运行时间较长,通常可以测试出系统是否有内存泄漏等问题。
失败测试:对于有冗余备份和负载均衡的系统,通过失败测试来检验如果系统局部发生故障,用户能否继续使用系统,用户受到多大的影响,如几台机器做均衡负载,一台或几台机器垮掉后系统能够承受的压力。
负载测试和压力测试都属于性能测试,两者可以结合进行。负载测试是慢慢增加测试难度,压力是一次性施加系统所能承受的最大或者当前瓶颈,以求得目前的极限性能。
二.使用JMeter开展性能测试
1.概述
请搭建并简单配置一个JMeter的性能测试环境,贴上搭建完成后的截图,写一段搭建和初步试用的心得。
学习资料:JMeter性能测试实战
2.实验目的
1) 巩固所学的系统性能测试方法;
2)训练使用性能测试工具的能力。
3.实验内容
选择一个Web应用系统开展性能测试
4.实验环境
1) 选择一个Web应用服务。如学校的教务管理系统、邮件系统等
2) 下载并安装Jmeter;
3)部署Jmeter环境
5.实验过程
1)选择Web页面的某几个关键页面,录制或开发测试脚本;
2)添加采样器:覆盖HTTP协议;
3)[可选] 针对HTTP协议,需要设置断言、cookie管理、缺省值等
4)测试多组负载,如并发用户数100、500、1000; 获取并记录不同负载下的测试结果;
5)根据聚合报告、图形结果开展结果分析。
答:
1.从网站上下载apache-jmeter-3.3
2.打开apache JMeter
3.添加http请求
4.添加监听器并启动
5.测试多组负载
①用户数为500
② 用户数为1000
③用户数为100
三、遇到的问题
1、第一次测试时没有注意循环问题,线程组设置1,导致测试不严谨,又重新测试
2.测试用户数500中发生错误,由于没有设置出错后停止测试,导致测试不停止。
3.测试用户数1000时电脑卡死了一次,控制台报错内存溢出。
。