功能测试一般分为四个阶段:
  1) 分支的测试
  • 分支的测试是测试重点,主要测试本次项目的所有业务逻辑,页面友好,安全性,可靠性,性能等所有的测试内容,此时产出有: 测试日报,功能测试报告,性能测试报告
  • 这个阶段的测试策略根据前段准备的测试用例进行测试
 2) 合并到主干后的测试
        经过前段分支的测试,本项目内部的bug在理想情况下应该已经解决,这此阶段主要测试的内容有:
  1.  
    • 解决合并时出现的冲突
    • 测试在checkout分支代码后到合并到主干之间相关的日常需求和其它已经合并的项目
    • 回归测试,再次执行本项目内部的测试用例,确保合并的代码还是正确的
    • 回归测试,执行全环境的各项目功能(一般需要自动化脚本),确保本项目的内容不影响主干环境的功能
    3)  预发布测试
       预发布测试主要测试线上环境和测试环境是不是相同的,测试策略还是回归一些主要的功能,一般主要功能没有问题应该就没有问题了,关注线上一些特殊数据是否会出现异常.
    4)  Beta测试
    经过预发布测试后,测试基本已经结束,那为什么需要Beta测试呢?
  • 测试人员测试场景和数据必竟有限,不能测试到方方面面
  • 用户行为是多种多样的,好多用户行为是测试人员无法想到或模拟到的,使用Beta测试很好地监控了用户的某些行为,是网站更加稳定和健壮
  • 能过使用Beta版测试,了解了网上实际的浏览量,为服务器的最后布暑进行一定的参考
  • 总之通过Beta测试可以解决很多在前面的测试中无法解决的问题,当然前面的测试能做的事情尽量要在前面一阶段完成,否则就会影响Beta测试的质量
最后我感觉在测试的任一个过程中,都要时刻提醒开发人员多查看后台日志,在后台日志中可以看到测试人员无法在前台看到的冲突.