FromTheTestingMap.org
这是一副完整的思维导图,重点是左边的方法(methogology)及其应用,然后介绍了测试原则、测试流程、测试工具、测试活动等。还有一些内容,是间接和测试相关的,如学习资源(如网站、杂志、图书、培训等)、社会(如博客、社区、竞赛、调查等)、计算机技术(如web、嵌入式软件、桌面、数据库、搜索引擎等),其中目前流行的Mobile技术是放在嵌入式软件中。
左边的方法,首先分为动态、静态的方法,大家熟悉的黑盒方法、白盒方法基本归入动态方法中,这种划分不一定科学,但符合多数测试人的习惯,而且也没有完全隔离它们,它们之间还是通过线联系在一起。运维相关的测试、性能测试、安全性测试,虽然归入白盒方法,但从黑盒方法有一根线连到这里,说明不是纯白盒方法,可以理解为灰盒方法。里面也有一些新的东西,如Happy-PathTeating,在Wikipedia中被定义为awell-definedtestcaseusingknowninput,whichexecuteswithoutexceptionandproducesanexpectedoutput
静态测试方法,主要是走查、代码评审等,文档测试不能算方法,只是测试类型。在测试层次中,丢掉了验收测试(业务层),而单元测试的方法分支测试/条件覆盖、基本路径测试等,连到白盒测试。各种类型的测试还比较全,但把Codecoverage放在这里不合适。
测试实践中内容丰富,包括敏捷测试、TDD/BDD(少了ATDD)、探索式测试、结对测试、数据/上下文/代码驱动测试等。组合测试更应该在测试方法或测试类型中,不应该在这里。输入/输出数据,缺少真正的实践,只是列出一些UI元素等,价值没能体现出来。
测试原则,侧重基于风险饿测试,到Oracle(测试启发式准则),思路也有些怪,大家可以慢慢体会,时间关系,就不展开讨论;
工具,一方面从Bug跟踪开始到测试管理,再到Drivers/Stubs(真实醉了);另方面从Forensics(取证)开始,到版本控制、部署工具,再到性能测试、安全性测试、自动化测试等工具,这种思路也是奇特。
流程中,标准大类倒是全了,和测试相关的计划、策略、测试用例、缺陷、报告都提到,还涉及开发流程、交付流程。支持活动,涉及更广,如项目计划、配置管理、质量管理、变更管理、风险管理等。
从中让我们体会到,知道(软件测试)得越多,越有一种(对软件测试)敬畏感。
治疗白癜风多少钱治疗白癜风最好的医院