zoukankan      html  css  js  c++  java
  • <<有效软件测试>> 读书笔记和自己的一些思考

    需求阶段

    1. 测试人员及早介入,需要彻底了解产品,设计测试过程
    	* 及早介入,可以了解在开发的过程中需要使用哪些新技术,新的平台, 测试组是否方便进行测试,是否方便进行自动化测试,早期开发和测试应该对这个进行评估	
    2. 验证需求,将功能性文档化,使以后测试更加全面,对测试内容进行分级,除了考虑需求,还需要考虑性能和安全,对测试过程进行区分优先级
    3. 需求就绪后立即设计测试过程 不要推迟到软件版本交付后才给测试组 开发人员需要拽写设计文档,测试人员也需要提前撰写测试文档,同时这些文档是会变化的
    4. 确保需求变化的传达 可以通过变更请求表传达给测试组
    5. 注意在现存系统上进行开发和测试
    

    编制测试计划

    6. 了解手头的任务和相关的测试目标
    7. 考虑风险 比如新的设计过程 新的技术
    8. 根据功能优先级安排测试 测试的需求可以根据合同上的需求来设计,并且合同上的需求优先级安排高一点,尽量保证合同上的需求可以进行自动化测试,发布版本前都把这些自动化测试跑一遍,优先级的划分优点在于:在时间紧迫的时候可以更快地完成优先级最高的,也可以在人手不足的时候优先完成优先级较高的功能
    9. 牢记软件方面的问题 制定测试计划的时候,测试组应该了解项目开发和交付的一些软件问题 
    10. 获得有效地测试数据 测试组和开发人员必须进行协调,收集测试数据,收集测试数据也是为了后续的自动化测试做准备,当需要测试数据的时候,最好在测试文档上进行标注
    11. 规划测试环境 单元测试和集成测试通常由开发人员在开发环境里面完成,但是系统测试和用户验收测试最好在独立的测试实验室完成,测试实验室的设置应该和生产环境相同,能够发现所有影响应用程序的,比如配置,比如防火墙,网络波动等等
    12. 估计测试准备和执行所需的时间
    

    测试组

    13. 定义测试组的角色和职责,比如GUI测试,性能测试, 开发测试
    14. 测试技巧,行业知识和经验三者缺一不可 测试不是单纯地模拟用户,必须对于了解各方面才能进行边界测试等
    15. 评估测试人员的有效性 
    	* 要保持有效性,需要对测试工作的各个元素(测试策略, 测试环境和测试组的组成)不断地进行评估, 并且根据实际需求不断地改进这些元素 
    	* 测试经理需要熟悉各个测试人员的背景,才能根据经验,专业知识进行分配任务和评估任务
    

    系统架构

    16. 了解系统的架构和组件,如果测试人员对这些熟悉,这些知识对于查明特定测试结果的应用程序的各个部分
    17. 确认系统的可测试性
    18. 使用日志增加系统的可测试性
    19. 验证系统支持调试和发型两种执行模式
    

    测试设计和测试文档

    20. 有效地分解测试任务
    21. 使用测试过程模板和其他测试设计标准
    22. 根据需求得到有效的测试用例
    23. 把测试过程当做"动态"的文档
    	* 开发会随时变化,测试要跟随者开发进行变化
    24. 利用系统设计和系统原型
    	让用户预先看到某个功能的实现结果,让用户对应用程序有所体验
    25. 设计测试用例场景时才用经过检验的测试技术
    26. 在测试的过程中避免包含显示和详细的数据元素
    27. 运用探索性测试
    

    单元测试

    28. 用结构化的开发方法来支持有效地单元测试
    29. 在实现之前或者实现同时开发单元测试,为了简化单元测试的开发工作,开发人员必须重视基于接口的方法来实现组件,优秀的软件工程做法是围绕接口,而不是围绕组件内部的机理来设计软件
    30. 使单元测试的执行成为生成过程的一部分
    

    自动测试工具

    31. 了解各类测试支持工具
    32. 自主生成一个工具
    33. 了解自动测试工具对测试工作的影响
    34. 关注组织的需要
    35. 在应用程序的原型上对工具进行测试
    

    自动测试

    36. 不要过分依赖记录/回放工具
    37. 必要时自制开发一个测试工具
    38. 使用经过考验的测试脚本开发技术
    39. 尽量使回归测试自动化
    40. 实现自动生成和烟雾测试
    	* 自动生成,通常每天执行一次自动生成
    	* 烟雾测试,回归测试的精简版本,主要对应用程序关键的高层功能(也就是主要功能)进行自动测试。
    

    非功能性测试

    41. 不要事后才考虑到非功能性测试
    42. 用产品级数据库进行性能测试
    43. 为预期受众定制可使用性测试
    44. 特定需求和整个系统都需要考虑安全性
    45. 研究系统对并发性测试计划的实现
    46. 为兼容性测试建立搞笑的环境
    

    管理测试的执行

    47. 明确定义测试执行周期的开始和结束
    48. 隔离测试环境和开发唤醒
    49. 实现缺陷追踪生命周期
    50. 追踪测试工作的执行
  • 相关阅读:
    6. Flask请求和响应
    5. Flask模板
    FW:Software Testing
    What is the difference between modified duration, effective duration and duration?
    How to push master to QA branch in GIT
    FTPS Firewall
    Query performance optimization of Vertica
    (Forward)5 Public Speaking Tips That'll Prepare You for Any Interview
    (转)The remote certificate is invalid according to the validation procedure
    Change
  • 原文地址:https://www.cnblogs.com/linyilong3/p/6033883.html
Copyright © 2011-2022 走看看