app专项测试一
学习目标
- 掌握基于敏捷开发的测试流程
- 掌握app的测试要点,熟悉各种专项测试的关注点
- 熟悉GT工具的使用,能使用GT工具进行对应的性能测试
一、app测试基础理论
1、app的应用架构
app属于CS架构,是通过HTTP协义来传输数据的。 通过json的格式来传送数据的。
2、app架构和web架构的区别
相同点
- APP和web使用的后端服务器是相同的
- 前后端都使用HTTP协议进行交互 (也有部分APP用socket来交互)
不同点
- APP是C/S结构,web浏览器是B/S结构
- APP前后端交互的数据格式以json为主,web前后端交互的数据格式以HTML为主
3、app项目环境及发布平台
3.1 app项目环境介绍(后端服务器环境)
编号 | 环境 | 说明 |
---|---|---|
1 | 开发环境 | 是给开发人员进行代码联调的。给开发进行自测的。 |
2 | 测试环境 | 用来给测试人员进行测试用的。测试环境也可能分为手工测试环境和自动化测试环境的。 |
3 | 预发布环境 | 当项目要上线时,做最后一轮的验收测试时,预发布环境的数据跟生产环境的数据是一致的。 |
4 | 镜像环境 | 当生产环境出现问题时,把生产环镜的相关数据以及代码全部拉到镜像环境,复现生产上的问题,然后由测试人员协助开发人员复现问题,然后由开发人员去进行问题的定位和分析。 |
5 | 生产环境 | 给用户或者是客户使用的环境 (生产环境测试人员不能随便操作,由运维人员管理的) |
3.2 灰度发布介绍
所谓灰度发布,就是指在发布生产环境过程前,先发布其中几台服务器,如果这几台服务器功能运行一段时间后能够正常,那么再把其他未升级或者未发布的服务器进行生产环境发布,那如果说先发布的几台服务器运行有问题,那么就需要回滚到原来的版本。
3.3app项目发布平台
android 安卓app文件后缀名是 apk
IOS 苹果app文件后缀名是ipa
获取app安装包文件的方式一:
- anroid 可以直接找开发给对应apk安装包
- IOS 直接将手机给开发人员,让开发人员安装对应的ipa包
获取app安装包文件的方式二:
可以借助内测试平台
国内用的内测平台是蒲公英, 国外用的是fir.im
测试包生成之后会上传到蒲公英平台,然后生成一个链接地址(二维码),可以直接通过二维码或者链接地址下载对应的测试包
生产app安装包的获取
anroid的app安装包:豌豆荚、应用宝、360手机助手、各类手机品牌商城(上传app安装包需要审核 2-3 )
ios的app安装包:appstore itools(IOS时间更长,一周左右)
4、敏捷开发模型
4.1 敏捷开发模型介绍
瀑布模型(传统行业)
流程
- 需求分析
- 设计
- 编码
- 测试
- 运行维护
优点
- 为项目提供了按阶段划分检查点(文档)
- 当前一阶段完成后,只需要关注后续阶段。
缺点
- 在项目各介段之间极少有反馈,出现问题没法及时处理,灵活性差;
- 只有在项目结束交付上线时才能看到最终的结果;
- 需要太多的文档来驱动项目进行。影响项目的效率。
结论
采用传统的瀑布模型最大的问题是开发的周期长,迭代的速度慢。
- 互联网行业特点:追求创新、以快吃慢、需求高度不确定性
- 互联网产品开发的特点:新需求、新方向
- 降低项目风险,确保正确的方向:快速的反馈机制、快速试错的流程 (针对需求不确定性)
敏捷开发
概念:以用户的需求为核心,采用迭代、循序渐近的方法进行软件开发
在敏捷开发过程中,软件项目在构建初期会被切分成不同的子系统以及不同的迭代,各个子项目的成果经过测度,具备可视,可集成和可运行的特征。
4.2 Scrum介绍
Scrum是一个敏捷开发框架,是一个增量的,迭代的开发过程。
在这个框架中,整个开发周期包括若干个小的迭代周期,每个小的迭代周期成为一个Sprint(sprint:项目开发过程中最小迭代周期),每个Sprint的周期建议为2~4周。
在Scrum中,将产品Backlog(产品待办列表)按商业价值排出需求列表。在每个迭代中开发团队从产品Backlog挑选最有价值的需求进行开发,实现完成后产品推出市场,进入下一个迭代。
需要熟悉的三个角色:
- 产品负责人:收集产品需求,确定产品上线时间,排产品需求的优先级
- 项目经理:带领团实现SCRUM敏捷过程,确保组内成员不被外界干扰,确保组内成员按时完成任务
- 开发团队:程序员,测试员,设计(程序员分前端、后端、android开发、ios开发)
- 每日例会: 需要知道每天干了什么,明天计划干什么,以及遇到的问题。一般早上开会,15分钟左右。 同时需要知道项目的进度是否正常
5、app应用测试流程
- 参与需求评审 评审前一定要看需求文档
- 制定测试计划 一般由测试负责人或测试主管制定
- 设计编写测试用例 有一些小公司由人力时间紧张,可以不写用例,需要写测试点。用例评审
- 执行用例,跟踪缺陷 搭建环境,冒烟测试(有可能做,也有可能不做)
- 编写提交版本测试报告