admin管理员组

文章数量:1530953

2024年2月11日发(作者:)

测试用例的功效(2)

测试用例的功效

多个USB接口情况下,该功能是否正常

对于不同USB设备是否该功能都有效果:如USB的U盘,移动硬盘,MP3,USB打印机等。

该功能运行后,是否能还原。还原功能是否正常。

。。。。等,上面这些,大家也应该想的到,下面这些大家是否会考虑:

1)大家都知道禁止某设备运行后,在设备管理器会显示?号或者红叉,大家会不会设计手动从设备管理器去启动被禁止的外接USB设备的用例?

2)有的USB设备需要驱动才能运行,如USB接口打印机,是否会设计驱动卸载,重新安装后的用例?

3)现在也有那种USB转换器,比如把PS/2接口转换为USB接口,那外接USB能否使用?把USB接口转换为PS/2接口,PS/2接口的设备能否使用?

4)不同操作系统下,该功能是否有效,如LINUX,UNIX,WINDOWSXP,2000,2003等。

上面这些可能可能很难想到的地方,所有设计测试用例也并不是一件容易的事,需要发散性的思维,需要大量的经验。现在看到很多人有点本末倒置了,都去追求工具自动化,其实当你设计出一个完美的用例后,测试出的效果绝对是巨大的,要不怎么会说一个好的测试用例是发现从为发现的错误呢?基本功还是需要.

上面的那些情况只 是一部分,还可以设计出很多来,大家可以一起讨论下。 三,测试用例的一些技巧:

在软件测试中,有很多被测试的软件都是C/S结构的,而软件的界面估计是从头到尾都在改变中,这都测试用例的编写,维护是一件耗时,耗力的事。下面是我个人的一些经验: 1,界面测试用例和功能方面测试用例分开写,比如在一份EXECL测试用例中,界面的就单

单写界面的,如写字体,排版,快捷键等,功能就只写逻辑方面,实现方面,这样当界面修改后,修改也快点。

2,比如说在编写一个弹出提示框用例时,以前我写用例的时,把预期结果写成提示的消息,如:“登陆用户名错误”,而当这个提示消息变为“用户名错误”时,有要去修改用例,很烦的。后面我就写“弹出一个提示消息框”,这样就解决了

3,写用例时,尽量分清层次结构,比如用户登陆模块,写的时先写正常情况下登陆,再写异常情况下登陆,不要一下写正常情况下,有写异常情况,然后再写正常情况下,让人感觉很混乱。

4,写测试用例之前,最好在纸上画一个框架出来,按照什么顺序来写,比如是按照操作系统的分类先,还是按照正常,异常情况先来写,下面模板中的一级分类,二级分类就是这个效果

测试用例的作用2017-05-10 15:15 | #2楼

4年前我刚入职测试的时候也是对测试用例的实际价值和具体应用有过相当一段时间的不解,不过当时没人能给我一个真正合理并具有说服性的理由,只知道很重要,就这样一直做下来,直到4年后现在的我,当带别人的时候我也会说测试用例很重要,是一个测试人员的核心能力,测试的好坏一半取决于你对测试用例的编写能力,另一半来自于你对业务的'发散性思维,来自于测试人员测试时的状态。

不要说时间紧迫,需求变化较快,如果你提前在心里就为自己找好了不去做的理由,那么对这项工作你会永远都保持着抵触的情绪,进而越发的觉得测试用例没用。我具体说几点希望能让你对测试用例有所改观:

1、先说说你所说的编写用例和临时的灵感之间的区别,这也是现在很多测试人员的困惑,因为工作中所有的感觉都在告诉我们,临时的发挥往往发现更多更隐蔽的bug,而测试用例中往往也都是开发人员已经注意过的地方,能出现让你感觉很有成就感的bug实属不易,但我前面说了,这仅仅限于我们的感觉,举个大学时的例子来解答你这个困惑,我记得我大学的时候我的高数老师在讲课的同时不忘提醒我们该以怎样的态度对待目前的知识,我想大多数同学都会有我这样

的想法,看看书本上的东西,这么简单还用学么,临时看看就会了,况且学了能有什么用呢?有一天老师在讲一个简单的公理时突然说了一句话,他说这个公理是很简单,是最基础的,但我提醒大家最基础不是不重要,相反它是最重要的,如果没有这个基础公理后续课程中所有的理论都不存在。这句话我一直记在心里,基础的是最重要的,这也是我一直很痛心的地方,因为平时我看着都会的东西,一个学期过去,我居然什么都不会了,我很鄙视同学平时不断的做着我看着都会的题目,可到最后我都答不上来了,可同学却很轻松的交卷了。

不知道你对我所说的能否理解,编写测试用例我们都很不耐烦,觉得自己到时候也知道这些,写了又有什么用呢?可真正到了测试的时候你凭什么说你都知道呢,这不过是一厢情愿的想想罢了,就像我面对刚开始简单的公理,我反复做这个公理的题有什么用呢,多简单啊,可对简单的都无法理解吃透,又如何在简单的基础上进行发散性思考?一个系统连基本的保障都没有,仅靠临时的灵感去挖掘我们不太容易发现的问题,我想你自己心里对系统都没底吧。简单的说,编写是基础,临时的灵感是深度挖掘。

2、如果说上面的理由不足以说服你,那么再看看这一点如何。不靠谱的灵感——如论是哪个测试人员,都会承认,测试与我们本身的状态有相当紧密的关系,如写文章一样,状态好时文思如泉涌,状态不好时提笔忘字,甚至生厌,毕竟我们大多仍然还执行着手工测试,工作的单调和枯燥不会让你像一直打了兴奋剂一样,此时你如何保障你的测试是有效的?

3、盲点。不知道你是否听过这个词,由于每个人的逻辑思维迥异,看待事物必然不同,针对一个测试点每个人编写的测试用例也会有不同,我不相信一个人可以把一个系统想得方方面面滴水不漏,bug总是源源不断超出你的想象,这些你想不到的即是你的盲点,当你把编写好的测试用例上交评审时,你会发现别人总是会提出这样那样的问题,你会发现你原有的逻辑竟然暗藏n多漏洞,更可怕的是随着工作的进行,当你对系统进行多次的回归,你会发现你可测的越来越少,为何?不是你的错,每个人在持续的重复同样的活动时,都会渐渐失

去原有状态,渐渐麻木,那么我们的盲点也会偷偷的加大,如果没有提前的测试用例保证,你可以保证你在系统交付前的测试与你第一遍测试的内容完全一致么?如果不完全一致,那些落下的测试点,你测试过吗,测试几次呢?现在是正确的吗?

4、管理成本。这个应该说和部门对项目的长期管理有关,面对现今it业人员流动大的特性,每个部门对项目的管理成本在加大,老员工离职留下一堆问题,新员工入职业务不熟,无法马上接手,之前的系统如何,由谁去给他讲解?对于测试,我想如果我是管理者,我会直接给他一些模块的测试用例,按着这些用例去测试,从这些用例中去理解系统,即增加了一点人手,也极大提高他学习的速度,4年的经历告诉我一个新入职的测试人员仅仅是看需求说明来学习,效率异常低下,并且一旦实际接手测试任务,之前所学习的基本还得对着系统重来一遍,记得,企业招聘员工,要尽可能要你来创造更多的效益,当然这个效益创造的越早越好,而不是真的让你来学习。

或者整体来说,测试用例是测试对系统的一个基本的质量保障,是一个项目可持续化管理的有效手段之一,当然,不是说写了测试用例就万事大吉,软件就毫无问题,还是我老师那句话,这是最基础的,也是最重要的,你的那些灵感会使你的测试大放异彩,但绝不要被这色彩蒙住你的眼睛,导致你看不清基石而摔下来。

最后回到我开始说的,"不要说时间紧迫,需求变化快",这个问题我不想多说,因为这个问题只要我们想解决,总会有办法,关键是看你以什么样的态度对待,想克服就不是什么大问题,不想克服,那就无解。

以上只是简单说了下测试用例实际的好处与作用,当然不止这些,既然有这些好处,至于你执行多少全在自己,现在很多企业都想采用敏捷开发的方式,对测试也发起了新的挑战,也有人用测试点或者需求列表的形式来代替,无论什么形式都无所谓,选择一条最适合当前部门状况的方式,但你所说的灵感是绝不靠谱的事情,两者无法比较。

自己也曾经疑惑过用例和作用,并想方设法提高用例对于异常场景的覆盖。其实这类灵光一现的异常场景有用例设计初期是无法做到

太多的覆盖,只能根据以往的测试经验来写。在测试过程中如果有新的场景想到,一定要及时补充到用例中,而不是测试过一次就忘了~~还是那句老话:测试用例是需要维护的,不是死的!

本文标签: 测试用例测试设备问题发现