性能测试基础教程

按主题探索文章、教程与工程实践。

13 篇内容

2017

性能测试基础(一)性能测试分类

关于性能测试有几个名词:性能测试、负载测试、压力测试、并发测试,很多人都是混合使用,或者有时压力测试,有时叫并发测试。这些名词除了非测试人员分不清楚,甚至许多专业测试人员也对这些名词也很模糊。关于这个分类我翻阅了一些资料,解释都比较模糊,并没有给出本质上的区别。只是从不同角度和关注点来解释。我们先来看看这些解释。 性能测试方法是通过模拟生产运行的业务压力量和 …

1 分钟阅读

性能测试基础(二)并发用户

一种是严格意义上的并发,即所有的用户在同一时间点做同一件事或操作,这种操作一般指做同一类型的业务。比如,所有用户同一时刻做并发登陆,同一时刻做表单提交。 另外一种并发是广义范围的并发,这种并发与前一种并发的区别是,尽管多个用户对系统发出了请求或者进行了操作,但是这些请求或都操作可以是相同的,也可以是不同的。比如,在同一时刻有用户在登录,有用户在提交表单。 前 …

1 分钟阅读

性能测试基础(三)经典例子--理发店原理

接下来通过一个简单理发店模拟来理解系统的并发处理。 __前提:__ 1. 一个理发店有三位理发师傅。 2. 每位理发师傅服务一位顾客需要一小时。 3. 顾客都很忙,从进理发店起最多只能等待三小时(等待加 + 被服务的时间)。 思考: 这里我们来理解“最佳用户数”和“最大用户数”。 最佳用户数: 理发店的最佳状态,理发店收入最多(理发师傅没有休息时间,一直在理 …

1 分钟阅读

性能测试基础(四)吞吐量

我们每天的生活中都在用水用电,如果我们把水龙头拧到最大,还是一滴水不出。那我们就会找物业/房东去询问情况,但一般不会想过去找自来水公司解决。我们每天都会上网,看电影很卡,需要等很久才缓冲一个几帧;打开网页很慢,IE状态条一直50%,那我们就会找电信服务器商,而不是某视频网站的客服。 以上的情况是正常的,这是生活常识。我想说明的是,你可能从来不关心一个自来水厂 …

1 分钟阅读

性能测试基础(五)响应时间

站在用户角度来说,你可以将软件性能看作是软件对用户操作的响应时间。说得更明直白点,对用户来说,当单击一个按钮或链接,从用户单击开始到应用系统把本次操作的结果以用户识别的方式展示出来,这个过程所消耗的时间就是用户对软件性能的直观印象。 我们需要对这个过程进行分解,才能得到你真正想要的响应时间。我把整个过程分三个部分:呈现时间,数据传输时间和系统处理时间。 呈现 …

1 分钟阅读

性能测试流程(一)——问清性能需求

假如你一名新进公司的测试小菜鸟,在一次的早会中,领导突然分配给你了一个性能测试任务。我想此时的你是一脸的大写??,怎么办?怎么办? 这里会提供一个通用的测试思路,照着这个思路做,你就会顺利的完成性能测试。 首先,要问本次性能测试的需求是什么,或者性能测试的目的是什么? 我把性能测试按目的分以下几种。 1)新系统能力验证 比如,你们刚好开发了一个新系统,在上线 …

1 分钟阅读

性能测试流程(二)——了解系统架构

系统架构对于测试新手来是最难的;先来了解系统所使用的技术和框架,在环境搭建阶段,你需要了解项目的部署;在性能分析与调优阶段,更要深入这些技术的细节去分析。 下面看一个基本的系统架构: 表示层 表示层(浏览器)通过前端技术(HTML5/JavaScript/CSS3)将系统功能和数据展示给用户,并与用户实现交互。通过TCP/HTTP协议与业务层系统通信,向应用 …

1 分钟阅读

性能测试流程(三)——分析测试点

当你了解你的系统架构之后,接下来可以好好的分析一下性能测试点。因为这关系到你测试工具的选型。 性能测试点的选取 * 发生频率非常高的(例如:某邮箱核心业务系统中的登录、收发邮件等业务,它们在每天的业务总量中占到90%以上) * 关键程度非常高的(产品经理认为绝对不能出现问题的,如登录等) * 资源占用非常严重的(导致磁盘I/O非常大的,例如某个业务进行结果提 …

1 分钟阅读

性能测试流程(四)——测试工具选型

根据对系统性能测试点的分析,我们选择合适的工作。不是所有的性能需求都要用LoadRunner或Jmeter来进行的。只要能满足需求就可以了,我个人倾向于轻量级的性能工具,或自己动手写代码。 软件性能测试工具分为三类,商业收费工具、开源免费工具、自主开发工具。 表: – 商业工具 开源工具 自研工具 优点 功能强大且简单易用;提供丰富的功能,支持更多协议和并发 …

1 分钟阅读

性能测试流程(五)——测试计划

简介部分就不用过多描述了,无非项目的背景,进行此次性能测试的原因,以及性能测试覆盖的范围等等,几乎所有项目文档都在开端对项目进行简单的阐述。 寻找的被测试对象和压力点 要测试的对象不是凭空想象出来,而是经过分析与系统数据收集得到。以下取几个典型的压力点。 登录:对于一般的系统来说,登录是用户操作系统的前提,如果用户根本就登录不了,那么其它功能将毫无用处。例如 …

1 分钟阅读

性能测试流程(六)——测试环境搭建

那么性能测试环境与功能测试环境有所不同,对于一些企业为了节约资源,进行功能测试的测试环境,一台服务器可以运行多个系统,通过技术手段可以使系统之间是不会相互影响的(以前公司就是一台服务器上跑多个tomcat)。 性能测试是要对整个系统运行的软件硬件环境进行测试的,如果某环境下运行多个系统,就很难判断其中的某个环境对资源的占用情况。 1、硬件环境,包括服务器环 …

1 分钟阅读

性能测试流程(八)——性能调优

性能测试调优需要先发现瓶颈,那么系统一般会存在哪些瓶颈: 硬件上的性能瓶颈: 一般指的是CPU、内存、磁盘I/O 方面的问题,分为服务器硬件瓶颈、网络瓶颈(对局域网可以不考虑)、服务器操作系统瓶颈(参数配置)、中间件瓶颈(参数配置、数据库、web服务器等)、应用瓶颈(SQL 语句、数据库设计、业务逻辑、算法等)。 应用软件上的性能瓶颈: 一般指的是应用服务 …

1 分钟阅读