《从菜鸟到测试架构师》读后感

来源:互联网 发布:java访问修饰符 案例 编辑:程序博客网 时间:2024/05/02 05:07
至于测试,使用的方法是多种多样的,理论上,任何方法,只要发现的错误或缺陷是确实存在的,都是可行的测试方法。但是在项目实践中,我们不可能把所有可能的方式都使用上,而智能采取最有效和可控的方法。有效,是指这种方法有效模拟真实的应用,并有效地暴露潜在的问题;可控,指的是使用方法有明确的步骤,通过相应的步骤可以使暴露的问题重现。
测试目标是发现软件系统中存在的缺陷,其中有个关键的原则--尽可能早的发现问题。
软件开发的前期甚至是设计阶段,某些缺陷可能已经存在,然而在这个时期要发现问题并不是件容易的事情。一个相同的问题如果在不同的开发阶段解决,所需的开销是不一样的。越是底层的缺陷,发现的时间越晚,修复缺陷的代价越高。
如果说新手到专家的成长过程是一个学习“硬性技能”的过程,那么专家成长为高手则更在于“软性技能”的修为。软性技能的提高,归根结底是思考能力和分析能力的提高。新手可以随着经验积累和技能学习成长为专家,然而,经验的继续积累只是专家成长为高手的其中一部分。专家到高手的修炼,重点在于思考的方法和技巧。
像外行一样思考,像专家一样实践。测试专家往往下意识地对一个方法的技术可行性做判断,这种下意识能够高效地排除许多不可行的方式方法。但在某些时候,这种下意识却阻碍了创造性灵感的萌生。像外行一样思考追求的是一种新的方法或者角度,仅仅考虑某个问题是否可能存在或者某种方法是否能解决问题,不考虑方法是否有理论依据,也避免过多地考虑可行性。
面对众多的选择,测试工程师必须权衡资源的投入和测试的涵盖度的矛盾。权衡的一般方法是,先确定测试的可用资源和测试方法,资源和方法确定以后,能够完成的任务数量就可以估算了。对同一个功能点的测试,每增加一个深度或广度级别,对测试资源的消耗也相应增加。这种增加的对应关系不一定是线性的,提高一个深度或广度级别,增加的相应工作量可能是一倍或接近一倍。因此,权衡的时候得考虑种子覆盖深度和广度的提升在逻辑上是否必要,是否有业务需求。
计算机最适合高速连续地执行确定的任务,而用人脑来执行这些重复且枯燥的步骤就要慢得多。人脑更适合做创造性的工作,自动化测试就是把人脑从枯燥的工作解放出来,而去做更适合人脑的事情,比如去分析问题、写自动化脚本等。

 

转载:http://www.51testing.com/html/03/14991103-852617.html

原创粉丝点击