【Alpha】“北航社团帮”小程序v1.0测试报告

测试计划、过程和结果

后端单元测试

助教能够在这里查看测试代码。咱们对全部接口设计了单元测试,结果:所有经过。git

后端压力测试

测试结果

咱们对每一个接口进行了压力测试,助教能够在gitlab进行查看详细结果文件。这里展现出咱们获得的平均数据。数据库

并发用户数: 100
测试所用时间: 30 seconds
完成请求量: 1000
失败请求数目: 0
成功请求数量: 1000
总传输数量: 425000 bytes
吞吐率: 29.50
传输速率: 12.24 kb/s received
时长 (ms) 最短时长 平均时长 最长时长
链接时长 26 1832 5836
处理时长 500 1381 248
总时长 526 3213 6084

指标解释

  • 吞吐率(Requests per second)
    • 服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。
    • 计算公式:总请求数 / 处理完成这些请求数所花费的时间,即Request per second = Complete requests / Time taken for tests
  • 并发链接数(The number of concurrent connections)
    • 并发链接数指的是某个时刻服务器所接受的请求数目,简单的讲,就是一个会话。
  • 并发用户数(The number of concurrent users,Concurrency Level)
    • 要注意区分这个概念和并发链接数之间的区别,一个用户可能同时会产生多个会话,也即链接数。在HTTP/1.1下,IE7支持两个并发链接,IE8支持6个并发链接,FireFox3支持4个并发链接,因此相应的,咱们的并发用户数就得除以这个基数。
  • 服务器平均请求等待时间(Time per request: across all concurrent requests)
    • 计算公式:处理完成全部请求数所花费的时间 / 总请求数,即Time taken for / testsComplete requests是吞吐率的倒数。

前端测试

受权登陆与权限检查

  • 当且仅当用户赞成受权登陆咱们的小程序时,才能使用咱们的小程序。测试经过。
  • alpha版中,咱们只有游客这一种登陆方式,暂时尚未北航学生身份认证社团管理员角色,所以至关于只有一种用户。全部功能也都暂时没有权限限制,无需检查。

功能测试

对三个方面进行了测试:小程序

  1. 页面内部功能测试,按照下表中的功能树进行检查。
  2. 页面之间互相影响的测试点,主要是社团和活动的关注状态,以及活动的总关注度。
  3. 页面跳转和页面栈。
页面 功能描述 验收标准
受权登陆 1.受权登陆 1.用户第一次登陆时,当且仅当用户点击了受权登陆按钮并赞成受权后,才可跳转至主页面
2.受权登陆后能够获取用户的微信昵称和头像并录入数据库。
3.用户非第一次登陆时,无需点击受权登陆按钮便会当即从新登陆。
新闻 1.轮播展现关注度前4的活动横版海报,点击能跳转活动详情
2.列表显示新闻,即接入本小程序的公众号的文章,点击新闻跳转详情。
3.新闻列表下拉可以刷新
4.按类别筛选新闻
5.点击新闻对应的社团跳转社团信息页。
1.滑块视图容器,装载4张热度最高的活动卡片。每隔2s自动切换活动卡片,向左/右滑动能切换卡片。
2.点击活动卡片,能够跳转至活动详情,返回正确
3.新闻仅显示接入(即关联)本小程序的公众号的文章
4.新闻时间显示分段:(1)当天的新闻显示“今天”。(2)昨天至7天前的新闻,显示“x天前”,x是1~7的整数。(3)其他时间的新闻,显示月份和日期。
5.新闻按“时间”从近到远排序。
6.新闻类别筛选正确,且能返回“所有类别”状态。类别筛选的标准除了6个社团类别,还包括“所有类别”、“个人关注”类别。
7.点击新闻能正确跳转公众号文章,显示成功,返回正确
8.点击社团能正确跳转至社团信息页面,返回正确
新闻详情 1.展现文章内容
2.能留言、“在看”
1.展现文章内容正确,返回正确
2.能能留言、“在看”,能更新该文章的阅读量
活动 1.按热度非升序排列展现活动列表
2.点击跳转活动详情
3.关注和取消关注活动
1.按热度非升序排列展现活动列表
2.点击跳转活动详情,返回正确
3.关注和取消关注活动正确,并弹窗提示用户。
活动详情 1.展现活动详细信息
2.点击主办方跳转社团详情
3.关注和取消关注活动
1.正确展现活动详细信息,只展现还没有开始的活动
2.点击主办方正确跳转社团详情,返回正确
3.关注和取消关注活动正确,并弹窗提示用户。
社团 1.能搜索社团
2.列表显示我关注的社团
3.分类显示社团
4.点击类别跳转至该类别的社团列表页
5.点击社团跳转详情
1.能够用关键字搜索社团,没有则提示“无”.
2.列表显示我关注的社团,若无则提示“您还没有关注任何社团”。
3.分类显示社团
4.点击类别正确跳转至该类别的社团列表页,返回正确
5.点击关注的社团正确跳转社团详情页,返回正确。
某类别社团 1.列表显示该类别下的社团
2.点击社团跳转详情
1.列表显示该类别下的社团
2.点击社团跳转详情,返回正确。
社团信息 1.展现社团信息
2.能够关注和取消关注社团
1.正确展现社团的信息,某一项没有的不显示。
2.能够一键复制手机号、公众号。
3.正确显示关注状态,能够改变关注状态
4.除了社团简介还包括社团新闻 和 社团活动,这两部分的要求与 新闻页、活动页一致。
我关注的社团 1.列表显示用户关注的社团,点击跳转详情 1.列表显示用户关注的社团,点击跳转详情
我关注的活动 1.列表显示用户关注的活动,点击跳转详情
2.能够取消关注活动
1.列表显示用户关注的活动,点击跳转详情
2.能够取消关注活动,取消关注后当即在本页消失并弹窗提示。
3.若没有关注任何活动,则显示“您还没有关注任何活动”

兼容性测试

  • 手机操做系统:对Android手机和IOS手机都进行了测试。
  • 微信版本:对微信版本7.0/6.6/6.5进行了测试。

性能测试

  • 性能测试不是测试小程序的重点,优先级较低。小程序的性能和WEB的性能测试很是相似,性能的经常使用指标也大体相同。包括页面的白屏时间,首屏时间,资源占用,页面渲染时间,帧率等等。后端

  • 只须要小程序开发版中打开性能窗口便可看到各页面的性能数据,下表为一次测试时全部页面的性能数据:缓存

页面 CPU(%) 内存(m) 页面切换耗时(ms) 启动耗时(ms) 初次渲染耗时(ms) 数据缓存(KB)
新闻 0 293 580 1245 62 0.7
活动 0 365 194 1245 35 0.7
活动详情 0 363 106 1245 114 0.7
社团 0 404 201 1245 95 0.7
某类别社团 0 405 124 1245 49 0.7
某社团信息页 0 432 311 1245 166 0.7
新闻详情 0 459 135 1245 42 0.7
个人 0 433 159 1245 66 0.7
关注的社团页 0 453 158 1245 68 0.7
关注的活动 0 469 131 1245 47 0.7
关于咱们 0 481 184 1245 81 0.7
  • 下图为一个页面的性能数据截图:服务器

回答课程组问题

测试中发现的bug

后端:微信

bug现象 bug缘由 是否解决
有些新闻详情页没法跳转 该新闻的公众号还没有关联小程序,应给每一个社团加一个标识属性,标识是否关联了本小程序,并在接口代码中检查
筛选某类别的新闻,没法正确刷新 在筛选功能下,前端没法实现正确刷新,须要后端改接口
有个新闻没法跳转 数据录入时多加了一个空格
活动时间显示格式错误 前端不便于处理,交给后端处理,直接返回要显示的时间字符串

前端:并发

bug现象 bug缘由 是否解决
从社团信息页面关注某活动以后,返回到活动列表页,没有更新关注度 活动列表从后端获取信息的操做是在onload函数中,应放在onshow中
活动海报没法点击全屏放大显示 须要绑定使用wx.previewImage 是,可是本地图片没法全屏预览,以后会将本地图片放到服务器上
真机上关闭调试以后没法登陆 小程序代码中使用的服务器域名与微信平台上配置的服务器域名不一样
活动默认图片显示错误 本地文件路径写错了
社联显示了星级 社联被归入社团表格中。应由前端处理,判断是否为综合类别,是则不显示星级

场景测试

  • 萌新:
用户信息 用户状况
姓名 萌新M
用户身份 某学院大一新生
用户状况 刚入学,对于各个社团的状况不大了解
用户需求 但愿能方便地查看各个社团的介绍和活动,同时有让本身加入感兴趣的社团的渠道。
用户痛点 目前找不到集北航社团咨询与一身的平台。社团的公众号太分散,一个个去关注和查看文章十分麻烦;社联推送的社团介绍也比较有限。
软件对应功能 按照社团类别归置社团,同时提供搜索功能,便于用户找到本身感兴趣的社团;每一个社团都有简介、新闻和活动,便于用户浏览社团的信息和动态;多数社团提供微信公众号名称和QQ群号,用户能够复制后进行关注和加群。
预期使用场景 百团大战立刻要来了,萌新M想率先了解各个社团的状况,因而打开了“北航社团帮”小程序,浏览了本身感兴趣的社团类别(好比体育类)。在浏览了A社团的介绍、新闻和活动后,他以为A社团很符合本身的兴趣,因而他关注了该社团的公众号,同时加入了该社团的QQ群,感觉着老社员们对萌新M的热烈欢迎。
  • 二狗:
用户信息 用户状况
姓名 二狗G
用户身份 某学院大二学生
用户状况 由于特别喜欢参加A社的社内活动,因此二狗G加入了A社团,积极参加A社举办的活动;同时对于其它社团有趣的活动也蛮有兴趣。
用户需求 但愿能有一个平台将各个社团的活动集中展现,方便他获取社团活动的信息。
用户痛点 虽然只加入了A社,可是二狗G对于BCD社的活动也颇有兴趣,可是这些活动只能经过刷朋友圈,或者主动查看公众号文章的方式来获取信息,十分不便。
软件对应功能 主页轮播关注度最高的4个活动的海报,吸引用户眼球;活动页按照关注度降序排列活动,用户能够方便地看到活动的简介,并点进去查看详情,查看活动的时间、介绍、报名方式等。
预期使用场景 二狗G以为本身最近有点宅,想看看有没有什么活动能够参加,他打开“北航社团帮”小程序,哇塞,B社竟然邀请到了知名相声演员郭德纲来说相声,必须安排!得知报名方式后,他进行了报名,并在小本本上记录活动的时间,而后他心满意足地放下手机,吹起口哨继续debug。

测试矩阵

OS 微信版本 登陆 新闻 新闻详情 活动 活动详情 社团 某类别社团 社团信息 个人 关注的社团 关注的活动 页面跳转 图片加载
Android 9 7.0.3 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 通常
IOS 12.2 7.0.3 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 较慢
Android 8 7.0.3 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 较慢
IOS 12.1 7.0.3 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 通常
Android 9 7.0.4 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 较慢
IOS 12.2 7.0.4 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 较慢

出口条件

  • 兼容性:对Android和IOS操做系统、不一样版本的微信都兼容。
  • 易用性:底部导航易用,功能入口明显,交互结果的弹窗提示等。
  • 功能正确性:各功能正确,页面跳转正确。
相关文章
相关标签/搜索