软件测试2019:第四次作业—— 性能测试(含JMeter实验)
题目:性能测试练习
一、回答下述问题:
- 性能测试有几种类型,它们之间什么关系?
性能测试根据不同测试目的可以分为以下类:
(1)性能验证测试
(2)性能基准测试
(3)性能规划测试
(4)容量测试
渗入测试
峰谷测试
性能测试:性能测试是为了描述测试对象与性能相关的特征并对其进行评价而实施和执行的一类测试。它主要通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项指标进行测试。通常把性能测试、负载测试、压力测试等统称为性能测试。
负载测试:是通过逐渐增加系统的负载,测试系统性能的变化,并最终确定在满足系统性能指标的情况下,系统所能承受的最大负载量的测试。简而言之,负载测试时通过逐步加压的方式来确定系统的处理能力和能够承受的各项阈值。
压力测试:是通过逐步增加系统的负载,测试系统性能的变化,并最终确定在什么负载条件下,系统性能处于失效状态,并获得系统能提供的最大服务级别的测试。压力测试是逐步增加负载,使系统某些资源达到饱和和甚至失效。
配置测试:主要是通过对被测试软件的软硬件配置进行测试,找到系统各项资源的最优分配原则。配置测试能充分利用有限的软硬件资源,发挥系统的最佳处理能力,同时可以将其与其他性能测试类型联合应用,从而为系统提供重要依据。
并发测试:测试多个用户同时访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题,几乎所有的性能测试都会涉及一些并发测试。
容量测试:在一定的软、硬件条件下,在数据库中构造不同数量级的记录数量,通过运行一种或多种业务场景在一定虚拟用户数量的情况下,获取不同数量级别的性能指标,从而得到数据库能够处理的最大会话能力,最大容量等。系统可处理同时在线的最大用户数,通常和数据库有关。
可靠性测试:通过给系统加载一定的业务压力(如CPU资源在70%~90%的使用率)的情况下,运行一段时间,检查系统是否稳定因为运行时间较长,通常可以测试出系统是否有内存泄漏等问题。
失败测试:对于有冗余备份和负载均衡的系统,通过失败测试来检验如果系统局部发生故障,用户能否继续使用系统,用户受到多大的影响,如几台机器做均衡负载,一台或几台机器垮掉后系统能够承受的压力。
二、使用 JMeter开展性能测试
1. 请搭建并简单配置一个JMeter的性能测试环境,贴上搭建完成后的截图,写一段搭建和初步试用的心得。
因为我自己电脑jdk版本太低,我下载的时候下载的是8的,但是和我之前下载的jdk不兼容,我就懵逼,后来打开jmeter.bat,在上面敲击,它会提示你当前版本太低,后来我又重新下载就可以了。
2 开启
(1)在工作台上添加代理服务器
(2)添加录制控制器
(3)将代理服务器改名
(4)将录制控制器改到测试计划的线程组
(5)在线程组中添加察看树并进行结果观察
三、添加图形结果和察看观察树
四、总结
本来想多测几句数据,但是数据的吞吐量不行,实在是太慢了,然后我就开始了漫长的等待,主要是中途卡了一下。
其实除了慢一点,其他还好啦!我觉得对于初级性能测试工程师来说,把录制脚本做好是比较基础的,先不管脚本录制质量怎么样哈。我在进行脚本录制的时候,出现了一些问题,首先是我一开始不知道要对浏览器进去网络代理设置,所以它一直在提醒我进行证书开启。然后是在录制控制器是要选择自己所写的网络域名,这个一开始我选了默认的,所以就摸瞎了,无奈。。。。。
最后还是成功啦,可以把我们访问页面录制脚本,然后在线程组中回放脚本录制,最后进行聚合报告。我觉得最要注意的是最后网络浏览器的默认设置要改过来,不然就不好上网了,好了,差不多了,晚安吧。
最新文章
- 进阶系列三【绝对干货】----Log4.Net的介绍
- visualssh 是一个可视化的ssh客户端
- java分布式事务
- denounce函数:Javascript中如何应对高频触发事件
- 二、JavaScript语言--JS基础--JavaScript进阶篇--数组
- Given a binary tree containing digits from0-9only, each root-to-leaf path could represent a number. An example is the root-to-leaf path1->;2->;3which represents the number123. Find the total sum of a
- HTML5给我们带来了什么?
- Android 官方命令深入分析
- Razor视图引擎
- C# MVC 自学笔记—4 添加视图
- Ansible11:变量详解【转】
- 暑假集训D11总结
- 《Android源代码设计模式解析与实战》读书笔记(十四)
- java客户端调用webService
- 20175209 《Java程序设计》第七周学习总结
- pt-show-grants的用法
- java中内存分配
- centos7 Docker私有仓库搭建及删除镜像
- 动态SQL3
- String 常见的十种方法!