• 软件测试的艺术(总结)


    以下部分为软件测试艺术的总结

       本书主要分为以下几个部分:1.测试经济和心理学及测试原则;2.代码评审;3.测试基础部分;4.开发中的调试和测试思想;5.软件测试最新应用;

      1、测试经济和心理学及测试原则

      软件测试虽然是一种技术性工作,不可否认,他也同人类的心理息息相关。如果你在认知上确定:软件测试是为了发现错误而执行程序的过程。那么,首先你在设计测试用例时,会有意识的去设计一些能够发现问题的测试用例;然后,在执行测试计划时,也会将发现错误当做自己测试的方向和目标;当然,你也会将发现软件问题,提升软件质量作为自己测试程序的价值体现。

      软件测试永远都不可能发现所有的问题,为了使用最小的资源和成本发现尽可能多的问题,就需要建立某些策略应对经济学挑战。包括黑盒测试、白盒测试、各种高级别的测试方法。

      因为软件测试中大多数都是心理学的问题,所以作者总结了软件测试的十个指导原则,用于知道软件开发和软件测试工作。这些原则在工作中都应该牢记于心,不论是做开发还是做测试,根据这些原则不仅可以指导自己更好的测试,同时也可以在开发上给出启示。

      详细可参考:《软件测试的艺术(读书笔记1)》(https://www.cnblogs.com/chengabc/p/11215552.html

      2、代码评审

      代码评审包括:代码检查、代码走查、桌面检查和同行评审。工作中用到最多的还是代码检查,一般将代码检查等同为代码评审。通过同书中方法对比,发现公司在对代码进行检查并不是很正规。不正规现象如下。

      (1)对于代码检查

        代码检查定义是组成一个小组来阅读和检查程序。有以下几个问题,

        1.成员参与感不强

        评审过程大部分的改进建议都是由领导指出,当然领导的经验也很丰富。这就导致其他成员的参与感不强,没有体现其他成员的价值,如果所有建议都是领导提出,我是不是可以潜意识的认为,其他成员的工作没有做好。

        2.缺乏错误列表

        评审过程没有一份检查错误的列表,都是凭借成员的经验。如果有一份检查错误的列表,会提高代码检查的效率,同时也能让各个成员从列表的对比中获得成长。

        3.版本修改较多

        程序下发版本较多,且人员不够情况下,只能通过领导或负责人一一进行审查,也就是桌面检查。一个比较好的建议是,在软件版本提交测试之后,测试人员在测试之前可以对照一份错误列表,对程序修改点进行审查。

      (2)对于代码走查

        代码走查定义为:以小组为单位进行代码审查,不同点是小组成员对测试用例在程序中的运行进行推演。问题就是,目前并未使用过此类评审。

      详细可参考:《软件测试的艺术(读书笔记5)》(https://www.cnblogs.com/chengabc/p/11331771.html

      3、测试基础部分

        测试基础包括:测试用例设计方法、单元测试方法和高级别测试方法。

      (1)测试用例设计方法

        测试用例设计方法包括:黑盒和白盒测试方法。

        黑盒测试方法常用有:等价类划分方法、边界值分析方法和错误推测法。

        白盒测试方法有:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、多重条件覆盖。

        方法其实很简单,但是如果在工作中使用这些方法对程序设计合理的测试用例,是一件非常有挑战性的工作。

      详细可参考:《软件测试的艺术(读书笔记2)》(https://www.cnblogs.com/chengabc/p/11254877.html

      (2)单元测试方法

        单个模块测试

        1.在模块源码基础上分析模块的逻辑结构;

        2.根据白盒测试方法设计测试用例;

        3.接着查看模块的规格说明书;

        4.使用黑盒测试方法补充测试用例。

        多个模块测试

        1.使用增量式测试

        2.选择自顶向下或自底向上的测试方法

        3.使用自动化工具对多个模块进行测试

      详细可参考:《软件测试的艺术(读书笔记3)》(https://www.cnblogs.com/chengabc/p/11260916.html

      (3)高级别测试方法

        更高级别测试是为了降低从需求端到代码段之间信息转换不一致,所导致的各类型软件错误。更高级别测试包括:模块测试、功能测试、系统测试、验收测试、可用性测试等。其中系统测试比较多,需要重点考虑。

      详细可参考:《软件测试的艺术(读书笔记4)》(https://www.cnblogs.com/chengabc/p/11297967.html

      4、开发中的调试和测试思想

      (1)调试思想

        1.暴力调试方法:看内存信息、打印日志、添加断点Debug。

        2.归纳法调试:通过获取的正确和不正确的数据,研究数据之间联系,找出产生错误的原因,进而解决问题。

        3.演绎法调试:根据搜集到的数据,列举出可能的根原因,根据数据之间关系排除不能的原因,进而解决问题。

        4.回溯法调试:在出现错误的位置,逆向执行程序找到程序逻辑出错的位置。

        调试过程分为两个步骤:定位错误和修改错误。错误修改后,我们应该对错误进行分析,试图获得一些改进编码和设计的启示。

      详细可参考:《软件测试的艺术(读书笔记6)》(https://www.cnblogs.com/chengabc/p/11335893.html

      (2)敏捷开发和测试思想

      为了应对日益增长的软件需求,一些开发人员提出敏捷开发的思想,敏捷开发的主要特征:客户参与,迭代开发,测试驱动。相应的也需要敏捷测试提升软件测试的效率,敏捷测试的特征:客户参与,自动化测试,项目跟进。

      在小型的项目中,通过使用极限编程方法和极限测试方法可以加快开发进程,并保证产品的质量。

      详细可参考:《软件测试的艺术(读书笔记7)》(https://www.cnblogs.com/chengabc/p/11351334.html

      5、软件测试最新应用

      本书的第10章讲解web测试,本书第11章讲解移动设备测试,目前在工作中均为接触到,以后用到可以再看。   

        

  • 相关阅读:
    一种神奇的双向循环链表C语言实现
    ucore_lab0
    使用展开操符作替代 .apply() (prefer-spread)
    使用剩余参数代替 arguments (prefer-rest-params)
    LeetCode 11. Container With Most Water 单调队列
    Codecademy网站安利 及 javaScript学习
    谈项目团队分工角色和改进
    谈大型项目开发的多个环境配合
    以api文档为中心--前后端分开发离新思维
    中国进出口商品交易会开发总结
  • 原文地址:https://www.cnblogs.com/chengabc/p/11427909.html
Copyright © 2020-2023  润新知