版本 日期 描述 作者
1.0 2018.04.29 小程序端和PC端的测试方案_初版 朱育佩、李晓芸
  1. 小程序端:

    云真机测试,“微信开发者工具”自带的测试功能(原理:以高页面覆盖率为目标的穷举随机算法),生成测试报告(js异常等缺陷,性能数据,多种机型覆盖)

  2. 小程序端和PC端:

    • 单元测试:

      • 针对各个用例的源代码,编写测试用例
      • 可考虑引入单元测试工具作为辅助:(测试工作开始,再根据实际看是否引入工具??)
        • 针对js语言的JsTestDriver
        • Jasmine工具,不依赖于其他的js框架
        • mocha,可以运行在浏览器环境以及Nodejs环境中
        • Coded Test UI(UI测试)
    • 集成测试:

      • 采用持续集成服务 travis CI,和github绑定,完成自动化构建,测试,部署
      • 自动化的功能测试和回归测试工具:QTP(用它来执行重复的手动操作)
    • 系统测试:以 《需求规格说明书》 为标准,测试包括随机测试、功能测试、压力测试、容量测试、性能测试和安全测试等,验证单元测试和集成测试的正确性,检查产品的各个功能,并测试产品的健壮性、安全性、可维护性等

      • 常见的测试产品有多种,目前拟用以下2种测试工具,测试的效果等到实施系统的测试工作后再考量,也可考虑使用其他的测试工具

        • LoadRunner:录制性能测试脚本 -> 创建、运行和监控场景 -> 分析性能测试结果
        • Jmeter:测试静态和动态资源(静态文件、数据库...),压力测试,功能/回归测试

设想的测试工作流程:

  1. 针对每个用例,画出它的程序控制流图,考虑到所有的路径,分支,设计一个高覆盖率的单元测试 - 前端测试:coded test UI,其实前端手动测试可能会更快一点... - 后端测试:引用上述提到的js测试工具(mocha、jasmine、JsTestDriver等) - 将测试代码放在持续集成的环境中

  2. 经过单元测试后,进行集成测试 - 手动测试 - 可以用QTP替代手动测试

  3. 系统测试 - 压力测试,LoadRunner, Jmeter - 性能测试,LoadRunner, Jmeter - 安全测试