最近要做个微信小程序的性能压测,虽然之前只做过web端的,但想一想都是压后端的接口,所以果断答应了下来,之前对jmeter都是小打小闹,所以趁着这次机会好好摆弄摆弄。

--------------------------------------------------------------------------------踩坑前总结哈理论,这篇写给自己的-----------------------------------------------------------------------------------

一,性能测试概述

看了些资料,我这里小捋一下,有可能说得不准确,欢迎大家拍砖。(以下摘自段念的《软件性能测试过程详解与案例剖析》)

什么叫性能测试:

观察系统在一个给定的环境和场景中的性能表现是否与预期目标一致,评判系统是否存在性能缺陷,并根据测试结果识别性能瓶颈,改善系统性能的完整的过程

不同视角下的软件性能:

1,用户视角的软件性能

从用户的角度看,软件性能就是软件对用户操作的响应时间,就像单击一个按钮,到应用系统把本次操作的结果以用户能察觉的方式展示出来,这个过程所消耗的时间

2,管理员视角的软件性能

管理员是一种特殊的用户,除了关心系统的响应时间外,还会关心和系统状态相关的信息,比如在1000用户并发下,业务A的响应为3秒,此时的系统状态如何,CPU内存如何等等

3,开发视角的软件性能

从开发人员的角度看,除关心上面用户的内容外,最想知道如何通过调整设计和代码实现,系统设置等方法提高软件的性能表现,以及发现并解决由于大量用户访问时引起的缺陷

二,性能测试理论

性能测试的应用领域:

1,能力验证(描述方式:某系统能否在A条件下具有B能力)

2,规划能力(描述方式:应该如何使系统具有我们要求的性能能力;或在某种可能发生的条件下,系统具有如何的性能能力)

3,性能调优(主要对应于对系统性能进行调优,一般会和其他性能测试应用领域的活动一起)

4,缺陷发现(通过性能测试的手段来发现系统中存在的缺陷,可以作为系统测试阶段的一种补充测试手段)

5,性能基准比较(应用于敏捷开发过程中,不设定明确的性能目标,通过每次迭代的性能表现的变化,根据这些变化觉得迭代是否达到了预期目标)

性能测试的方法:

1,验收性能测试

验收性能测试方法通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求

2,负载测试

负载测试方法在被测系统上不断增加压力,直到性能指标(如响应时间)超过预定指标或某种资源使用已达到饱和状态

3,压力测试

压力测试方法测系统在一定饱和状态下,例如CPU、内存等在饱和使用情况下,系统能够处理的会话能力,以及系统能否出现错误

4,配置测试

配置测试方法通过对被测系统软硬件环境的调整,了解各种不同环境对系统性能影响的程度,从而找到系统各项资源的最优分配原则

5,并发测试

并发测试方法通过模拟用户的并发访问,测试多用户并发访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题

6,可靠性测试

可靠性测试方法通过给系统加载一定的业务压力(例如资源在70%-90%的使用率),让应用持续运行一段时间,测试系统在这种条件下能否稳定运行

7,失败恢复测试

失败恢复测试方法是针对有冗余备份和负载均衡的系统设计的,检验如果系统局部发生故障,用户是否能够继续使用系统,或在这种情况发生下,用户受到多大程度的影响

三,性能测试流程

说起测试流程,都大同小异,也遵循功能测试流程,这里记录一个非敏捷过程中的PTGM(Performance Testing General Model)模型:

1,测试前期准备

包括系统基础功能验证;组建测试团队;测试工具需求确认

2,测试工具引入

包括选择工具;工具应用的技能培训;确定工具的应用过程

3,测试计划

包括性能测试的领域分析;用户活动剖析与业务建模;确定性能目标;制定性能测试时间计划

4,测试设计与开发

包括测试环境设计;测试场景设计;测试用例设计;脚本和辅助工具开发

5,测试执行与管理

包括建立测试环境;部署测试脚本和测试环境;执行测试和记录结果

6,测试分析

用于对测试结果进行分析,根据测试的目的和目标给出测试结论

---------------------------------------------------------------------------------------未完待续-------------------------------------------------------------------------------

下篇结合自己的实际过程,接着写性能测试中关注的一些指标

微信小程序性能测试之jmeter踩坑秘籍(前言)的更多相关文章

  1. 微信小程序之mpvue+iview踩坑之旅

    因为之前参照微信的原生的文档写过一些小程序的demo,写的过程比较繁琐,后来出了美团的mpvue,可以直接使用vue开发,其他的不作对比,这篇文章记录一下踩坑之旅. 参照mpvue http://mp ...

  2. 微信小程序之蓝牙 BLE 踩坑记录

    前言 前段时间接手了一个微信小程序的开发,主要使用了小程序在今年 3 月开放的蓝牙 API ,此过程踩坑无数,特此记录一下跳坑过程.顺便开了另一个相关的小项目,欢迎 start 和 fork: BLE ...

  3. 微信小程序性能优化技巧

    摘要: 如果小程序不够快,还要它干嘛? 原文:微信小程序性能优化方案--让你的小程序如此丝滑 作者:杜俊成要好好学习 Fundebug经授权转载,版权归原作者所有. 微信小程序如果想要优化性能,有关键 ...

  4. 总结微信小程序开发中遇到的坑

    总结微信小程序开发中遇到的坑,一些坑你得一个一个的跳啊,/(ㄒoㄒ)/~~ 1,页面跳转和参数传递实例 首先说一下我遇到的需求有一个我的消息页面,里面的数据都是后端返回的,返回的数据大致如下,有一个是 ...

  5. 小程序语音红包开发中 汉字转拼音的问题 微信小程序红包开发遇到的坑

    公司最近在开发微信小程序的红包功能,语音红包需要用到文字转拼音的功能. 之前介绍过怎么将中文的汉字转为拼音的,具体看下面这篇文章. 微信语音红包小程序开发如何提高精准度 红包小程序语音识别精准度 微信 ...

  6. 微信小程序那些令人眼泪汪汪的坑儿

    前言 最近做了一个麻雀虽小,五脏俱全的微信小程序项目.一看就会,一用就废的小程序.有些坑真的坑的你两眼泪汪汪.我就爱干前人栽树后人乘凉的事儿,看到文章的你,也许是同道中人,相视一笑:亦或是小程序外围人 ...

  7. 微信小程序开发技巧及填坑记录

    以下是自己在开发过程中遇到的坑和小技巧,记录以下: 1.出现了 page[pages/XXX/XXX] not found.May be caused by :1. Forgot to add pag ...

  8. 微信小程序初体验遇到的坑

    今天,2017年1月9日凌晨,微信小程序如约上线.2007年1月9日,整整10年前的今天,苹果的iPhone手机正式问世! 经不起新技术的诱惑了,想试着开发一下看看.刚开始遇到很多坑,在这里记录一下, ...

  9. 微信小程序 开发过程中遇到的坑(一)

      2124 1.我们使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设置网络超时时间.设置多 tab 的时候在pages中写注释的时候回报错. 例如: { &quo ...

随机推荐

  1. c# MVC Take的使用

    Take的使用 myPicture = dbContext.MyPictures.Where(u => u.Width == request.Width && u.Height ...

  2. 百度地图API接口

    js <script type="text/javascript"> // 百度地图API功能 var map = new BMap.Map("map&quo ...

  3. StarUML2 建模工具全平台破解及license验证简要分析

    破解方法:找到安装目录下的文件:LicenseManagerDomain.js阅读得知,改软件用rsa加密用户信息,换行为用户信息的分隔符修改以下代码,然后打开软件点击菜单栏中的帮助->输入li ...

  4. Promise 必知必会的面试题

    Promise 想必大家都十分熟悉,想想就那么几个 api,可是你真的了解 Promise 吗?本文根据 Promise 的一些知识点总结了十道题,看看你能做对几道. 以下 promise 均指代 P ...

  5. vs2017编译网狐荣耀服务端的心得

    1.找不到d3dx9.h 从D:\Microsoft DirectX SDK (June 2010)\Include复制 d3dx9.hd3dx9anim.hd3dx9core.hd3dx9effec ...

  6. Linux系统更改网卡名称

    自己装了一台机器,有两张网卡,一个是主板上自带的,还有一个是后来自己添加的.装完系统后,系统默认主板上的网卡为eth1,而自己添加的网卡是eth0,感觉不爽,所以想办法使用udev使系统将主板上的网卡 ...

  7. Egret容器的鼠标默认事件

    容器的鼠标默认事件   touchEnabled touchChildren touchThrough DisplayObject false \ \ DisplayObjectContainer f ...

  8. iptables、防火墙配置、NAT端口映射

    一,配置一个filter表放火墙 (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) targ ...

  9. Saltstack生产案例之Haproxy安装

    cd /srv/salt/prod/ mkdir haproxymkdir keepalivedmkdir nginxmkdir phpmkdir memcachedmkdir pkg cd pkg ...

  10. 洛谷P2698 花盆Flowerpot【单调队列】

    题目描述 Farmer John has been having trouble making his plants grow, and needs your help to water them p ...