1、想笨拙的用户那样做
正确的说法也许应该是无经验的用户或新用户,但事实上都是一回事。一个不熟悉软件的人面对程序时,他会做出令人永远想不到的举动。他们会输入程序员无从想想的数据。他们会在中途变卦,退回去执行其他操作。他们冲浪遇到某个站点,可能会单击不应该单击的东西,他们会发现开发小组完全遗漏的软件缺陷。
软件测试员看到一个没有任何测试经验的人只花5分钟来使用软件并使其崩溃,一定会感到沮丧吧!他们是怎么做的?他们不遵循任何规则,也不做任何加定。
在设计测试用例或者初次查看软件时,要设法想笨拙的用户那样想问题。抛开关于软件应该如何工作的先入之见。如果可能,找一个其他专业的朋友来整理思路。假设他什么也不会,把这些测试用例加入到已经设计好的测试用例库中,就会更加全面。
2、在已经找到软件的地方再找找
在已经找到软件缺陷的地方再找的原因有两个:
1、找到的软件缺陷越多,就说明那里的软件缺陷越多。如果发现在不同的特性中找出了大量上边界条件软件缺陷,那么明智的做法是对所有特性着重测试上边界条件。当然无论如何要进行此类测试的,但是还应该投入一些案例来保证这个问题不是普遍存在的。
2、许多程序员倾向于只修复报告出来的软件缺陷,不多也不少。如果报告软件缺陷是启动——终止——再启动255次导致崩溃,程序员就只修复这个问题。也许是内存泄漏导致这个问题出现,程序员找到症结并将其修复。当拿回软件重新测试时,一定要重新执行同样的测试256次以上。在这个范围之外既有可能存在其他的内存泄漏问题。
3、像黑客一样考虑问题
没有软件是100%安全的。黑客知道这一点,会寻找软件的漏洞并利用这些漏洞。作为测试员,需要从另外的角度考虑问题。想想软件里面有哪些有价值的东西,为什么有人要想获得其访问权限,黑客进入的方法有哪些。不要太绅士,黑客不会绅士。
4、凭借经验、直觉和预感
要想称谓真正的软件测试员,积累经验是不可替代的。没有比亲自动手更好的学习工具,也没有比客户第一次打电话报告刚经过测试的软件中存在缺陷一事更好的教训了。
经验和直觉是不可言传的,必须经过长期的积累。运用现在学到的全部技术进行测试,仍然有可能遗漏重要的软件缺陷。这是无法更改的事实。随着在职业生涯中逐步提高,学习测试不同类型和规模的产品,就会得到各种提示和技巧以便更加有效地找出令人棘手的软件缺陷。重新开始测试新软件,就可以很快找到以前同事可能遗漏的软件缺陷。
记录哪些技术有效,哪些不行。尝试不同的途径。如果认为有可以之处,要深入探究。按照预感形式,直至证实这是错误为止。
经验是每个人为其错误寻找的代名词。
网友评论