手把手教你测微信小程序
WeTest 导读
在小程序持续大量爆发的形势下,现在已经成为了各平台竞争的战略布局重点。至今年2月,月活超500万的微信小程序已经达到237个,其中个人开发占比高达2成。因小程序的开发门槛低、传播快、收益高,越来越多的开发者投入了小程序这一领域,由于整体开发水平层次不齐,会碰到越来越多的小程序质量问题。特别是面对电商、零售、旅游、直播等容易有高并发量的行业,会出现“服务器崩溃”、“访问响应缓慢”、“页面操作卡死”、“支付提交失败”等性能问题。那么,应该如何做小程序服务器压测呢?
接下来,我们将以电商行业为例,为您介绍如何使用WeTest的压测大师来做微信小程序的压测。
首先新建一个测试用例,添加客户端请求,然后根据自身业务需求设计测试模型,最后对微信小程序发起压测。
一、场景的需求分析
某电商类微信小程序需要压测商品详情和加入购物车页面,根据业务逻辑,首先进入商品详情页,再将商品加入购物车。
1、进入商品详情页
1)通过商品id,可以打开不同商品详情页
2、加入购物车
1)选择不同商品详情页,将不同商品加入购物车中
测试模型如下:

二、场景配置的操作步骤
接下来为了实现前面的测试需求,我们来介绍下具体步骤:
1、登录WeTest平台(wetest.qq.com),在导航栏选择产品>性能测试>服务器性能>进入项目>创建项目

(注:创建团队项目可与团队成员共同管理和完成项目)
2、在项目首页点击创建测试按钮,选择URL测试来创建用例,示例如下:

3、 在客户端请求栏,填写URL地址、选择请求方法。
请求方法:POST
说明:该示例中,使用的域名“top.domain.com”,为示例地址,您可以根据真实业务场景填写压测URL。

4、在客户端请求栏,填写Header、Body请求参数。
1)选择Header页签,填写商品详情接口请求header信息。

2)选择Body页签,填写商品详情接口请求body信息,Header中Content-Typ字段为application/json,故Body是 JSON格式,body上传方法选择raw。
5、单击 添加客户端请求 ,填写第二个客户端请求信息。

6、为判断“商品加入购物车”是否成功,可设置检查点,选择检查点页签,填写检点信息。
1)变量名:填写自定义的变量名称;
2)来源:根据变量的返回路径选择Response Header或Response Body,这里我们选择Response Body;
3)提取方式:可根据需要自主选择变量的提取方式,这里我们选择 JSON;
4)Header名称:当来源为Response Header时需要填写相应的header名称;
5)检查规则:根据选择的提取方式填写对应的规则;
6)预期值:填写预期服务器返回值;
示例如下:
商品加入购物车接口成功的返回信息为:
{"code":"100","message":"","result":{#加入购物车的对应商品信息},"ver":"1"},来自Response
Body,这里我们自定义变量名为code,提取方式选择 JSON,检查规则为["code"],预期值为100设置检查点。
如图所示:

三、场景调试操作步骤
1、 定义场景名
1)自定义一个场景的名称,平台默认场景名为:默认场景1/2/3……
2、上下文/单场景模式选择
1)单场景是单独执行这一条URL,设置多个单场景时,多条URL将会并行执行;
2)上下文是构建链路性场景,从A到B顺序执行,B的某个值从A的返回内容中提取等。
3、设置压力百分比
1)设置该场景的压力百分比,当测试模型中有多个场景时,可根据自身业务比例进行分配压力百分比
4、点击“调试”按钮进行调试。一般调试时间在5秒至20秒。
1)调试结束后,可查看客户端请求的调试详情。
四、压力设置步骤
场景调试完成后,需要设置并发人数和场景配置等。
1、填写并发设置,如图所示:
1)起始人数:初始并发10;
2)每阶段增加人数:每阶段增加并发为0;
3)每阶段持续时间:代表压测时长为1分钟;
4)最大人数:最大人数需要大于或等于初始并发;
5)发包间隔时间:每次请求收到回包后等待0s,再次发送请求
6)超出时间:事务响应时间超过10000ms,记为超时请求
7)发包模式:客户端建链后不切换端口,始终在长链接上不断发包

2、报告标准阈值设置
可以根据项目需求设置阈值,如成功率、响应时间和TPS,最终压测数据与阈值进行比对,若满足条件即测试通过。

五、启动压测
单击立即执行,即可发起压测(腾讯云用户需在VUM消费确认栏点击确认)
WeTest平台针对于服务器性能测试中常出现的技术门槛、配置冗杂、成本高昂等开发者亟待解决的问题,推出“压测大师”服务,包含了“服务器自助压测服务”与“深度性能测试服务”两大功能模块,通过专业级别测试与健全修正方案,协助开发者逐一击破切实难关。
点击传送门获取更多压测信息:
手把手教你测微信小程序的更多相关文章
- 手把手教你玩微信小程序跳一跳
最近微信小程序火的半边天都红了,虽然不会写,但是至少也可以仿照网上大神开发外挂吧!下面手把手教妹纸们(汉纸们请自觉的眼观耳听)怎么愉快的在微信小游戏中获得高分. 废话不多说,咱们这就发车了!呸!咱们这 ...
- 手把手教你制作微信小程序,开源、免费、快速搞定
最近做了个"罗孚传车"的小程序 一时兴起,做了一个小程序,将个人收集的同汽车相关的行业资讯和学习资料,分享到小程序中,既作为历史资料保存,又提供给更多的人学习和了解,还能装一下:) ...
- 用python一步一步教你玩微信小程序【跳一跳】
12月28日,微信上线了小游戏「跳一跳」,瞬间成了全民游戏,如何牢牢占据排行榜的第一位呢?用Python帮助你,Python真的无所不能. 作为技术出身的我们,是不是想用技术改变排名呢? 注意:本文适 ...
- 教你理解微信小程序的生命周期和运行原理
转自:http://blog.csdn.net/tsr106/article/details/53052879 写微信小程序,他的生命周期不能不知道,不知道小程序就会出现各种bug而无法解决.小助君 ...
- [iOS]手把手教你实现微信小视频
本文个人原创,转载请注明出处,谢谢. 前段时间项目要求需要在聊天模块中加入类似微信的小视频功能,这边博客主要是为了总结遇到的问题和解决方法,希望能够对有同样需求的朋友有所帮助. 效果预览: 这里先罗列 ...
- 微信小程序自定义组件
要做自定义组件,我们先定一个小目标,比如说我们在小程序中实现一下 WEUI 中的弹窗组件,基本效果图如下. Step1 我们初始化一个小程序(本示例基础版本库为 1.7 ),删掉里面的示例代码,并新建 ...
- 微信小程序 教程之引用
系列文章: 微信小程序 教程之WXSS微信小程序 教程之引用微信小程序 教程之事件微信小程序 教程之模板微信小程序 教程之列表渲染微信小程序 教程之条件渲染微信小程序 教程之数据绑定微信小程序 教程之 ...
- 微信小程序开发过程中tabbar页面显示的相关问题及解决办法!
在微信小程序的开发过程中如果有使用过tabbar的同学,我相信一定会遇到一些困扰.为什么有些时候代码中明明已经在app.json里面增加了tabbar,可以页面中就是不显示呢?可不可以有些页面显示ta ...
- 微信小程序——手把手教你写一个微信小程序
前言 微信小程序年前的跳一跳确实是火了一把,然后呢一直没有时间去实践项目,一直想搞但是工作上不需要所以,嗯嗯嗯嗯嗯emmmmm..... 需求 小程序语音识别,全景图片观看,登录授权,获取个人基本信息 ...
随机推荐
- 铁乐学python-面向对象的更多说明
以下内容摘自授课老师的博客http://www.cnblogs.com/Eva-J/ 面向对象的更多说明 面向对象的软件开发 很多人在学完了python的class机制之后,遇到一个生产中的问题,还是 ...
- KInect AR沙盒制作的一点小经验
最近在微博上看到这样一条 微博 >点这看< 看起来非常有意思,就去Google了一下如何制作. 没想到这是一个开源项目,而且还告诉你如何安装 OK,接下来就说说我的制作过程. 首先,先放 ...
- python第十四课--排序及自定义函数之自定义函数(案例四)
整理:4中最常见的自定义函数模型1).无参无返回值2).无参有返回值3).有参无返回值4).有参有返回值 #定义无参无返回值自定义函数 def func1(): print('hello method ...
- 初识Qt窗口界面
1.新建一个新的Qt Gui应用,项目名称随意,例如MyMainWindow,基类选择QMainWindow,类名为MainWindow. 2.项目建立后,双击mainwindow.ui文件,在界面的 ...
- java 输出流 outputstream
一:输入和输出概念 输入流(inputstream):对于java程序来说,从程序写入文件叫做输出. 输出流(outputstream):对于java程序来说,从文件读取数据,到java程序叫做输入. ...
- Kafka设计解析(十二)Kafka 如何读取offset topic内容 (__consumer_offsets)
转载自 huxihx,原文链接 Kafka 如何读取offset topic内容 (__consumer_offsets) 众所周知,由于Zookeeper并不适合大批量的频繁写入操作,新版Kafka ...
- STM32F103 ucLinux开发BOOT
STM32F103 ucLinux开发BOOT STM3210E-EVAL官方开发板主芯片STM32F103ZET6: 片内512K Flash,地址0x0800 0000 ~ 0x0807 FFFF ...
- 串口调试助手vc源程序及其详细编写过程
串口调试助手vc源程序及其详细编写过程 目次: 1.建立项目 2.在项目中插入MSComm控件 3.利用ClassWizard定义CMSComm类控制变量 4.在对话框中添加控件 5.添加串口事件 ...
- p标签不自动换行原因
前言:发现以前写的就像是笔记,哪像博客啊,这里再次修改. 问题描述: 在固定宽度的p元素里(任何块级元素同理),长单词不自动换行,中文字符会自动换行,效果如:http://codepen.io/ali ...
- expect 分发ssh key脚本
#!/usr/bin/expect } { send_user "USAGE:expect_sshkey.exp host" exit } #define var set host ...