最近一段时间跑中医院比较频繁,于是有一些小小的感悟。
医生,是给人看病,而测试人员,在一定程度上来说是给软件“看病”,两者之间有一定的共同点。如果根据诊断和治疗的手法来分,那么中医就像是软件测试中的黑盒测试,而西医更像是白盒测试。
中医——黑盒测试
中医学以阴阳五行作为理论基础,通过望、闻、问、切的诊断方法,探求病因、病位、分析病机以及人体的五脏六腑、经络关节的变化,形成辨证论治原则。应用到软件测试领域,“望”,就是观察软件的行为是否正常;“闻”, 检查输出的结果是否正确;“问”,向软件 输入信息,结合“望”和“闻”来观察软件的响应程度;“切”,像中医一样给软件“把脉”,敲击一下软件的某些“关节”。
往往人们看中医一般都会选择经验丰富的老中医,而很少青睐于年轻的中医,为何?因为中医理论博大精深、玄乎奥妙,没有个几十年行医经验是很难真正理解和掌握的。而软件测试的理论其实也是一种方法论,没有一种固定的模式。测试同一个功能点,一个资深黑盒测试人可能会采取多种不同的方法,甚至是一些奇招、怪招,从而更有可能发现一些更深层次、更隐蔽的软件缺陷。所以,经验主义同样适用于测试人员,一个高端资深的黑盒测试会是很多团队的香饽饽。
西医——白盒测试
西医的诊断更多的是借助先进的医疗仪器设备和实验室做出对疾病准确的诊断。测试人员采用各种仪器和设备对软件进行检测,甚至把软件摆上手术台解剖来看个究竟。白盒测试是一种以理解软件内部结构和程序运行方式为基础的软件测试技术,通常需要跟踪一个输入经过了哪些处理,这些处理方式是否正确。所以,借助工具是西医与白盒测试的共同点。
直接把软件内部结构暴露在测试人员面前的测试手段,其缺陷定位也是相当准确,缺陷修复后见效快。就像西医,身体里如果哪个地方生了肿瘤,在手术台上直接解剖开来切除掉!
中西医结合
在测试过程中,应该综合应用黑盒测试方法和白盒测试方法,按需要采用不同的技术组合。不要用黑盒测试方法和白盒测试方法来划分自己属于哪一类测试人员,一名优秀的测试人员应该懂得各种各样的测试技术和查找Bug的手段。用一句流行的广告语来说就是,中西医结合疗效好!
转:http://mp.weixin.qq.com/s?__biz=MzA5MTYxNDE0Mw==&mid=2649894734&idx=1&sn=13e662abfd8588bfcf311a864cf71a03&chksm=887f319ebf08b888125ce9f5377c999bc3a628b6e9581db94435ff4764d4f07262ca86b49a40&mpshare=1&scene=23&srcid=0208cH7OcIYgmOxeSvWdVKHq#rd