版本 | 日期 | 描述 | 作者 |
---|---|---|---|
1.0 | 2018.04.29 | 小程序端和PC端的测试方案_初版 | 朱育佩、李晓芸 |
-
小程序端:
云真机测试,“微信开发者工具”自带的测试功能(原理:以高页面覆盖率为目标的穷举随机算法),生成测试报告(js异常等缺陷,性能数据,多种机型覆盖)
-
小程序端和PC端:
-
单元测试:
- 针对各个用例的源代码,编写测试用例
- 可考虑引入单元测试工具作为辅助:(测试工作开始,再根据实际看是否引入工具??)
- 针对js语言的JsTestDriver
- Jasmine工具,不依赖于其他的js框架
- mocha,可以运行在浏览器环境以及Nodejs环境中
- Coded Test UI(UI测试)
-
集成测试:
- 采用持续集成服务 travis CI,和github绑定,完成自动化构建,测试,部署
- 自动化的功能测试和回归测试工具:QTP(用它来执行重复的手动操作)
-
系统测试:以 《需求规格说明书》 为标准,测试包括随机测试、功能测试、压力测试、容量测试、性能测试和安全测试等,验证单元测试和集成测试的正确性,检查产品的各个功能,并测试产品的健壮性、安全性、可维护性等
-
常见的测试产品有多种,目前拟用以下2种测试工具,测试的效果等到实施系统的测试工作后再考量,也可考虑使用其他的测试工具
- LoadRunner:录制性能测试脚本 -> 创建、运行和监控场景 -> 分析性能测试结果
- Jmeter:测试静态和动态资源(静态文件、数据库...),压力测试,功能/回归测试
-
-
设想的测试工作流程:
-
针对每个用例,画出它的程序控制流图,考虑到所有的路径,分支,设计一个高覆盖率的单元测试 - 前端测试:coded test UI,其实前端手动测试可能会更快一点... - 后端测试:引用上述提到的js测试工具(mocha、jasmine、JsTestDriver等) - 将测试代码放在持续集成的环境中
-
经过单元测试后,进行集成测试 - 手动测试 - 可以用QTP替代手动测试
-
系统测试 - 压力测试,LoadRunner, Jmeter - 性能测试,LoadRunner, Jmeter - 安全测试