做测试开发工作已经有一年多的时间了,在这一年多的时间里,我的能力得到了提高,也有了一些感悟,现就将我的一些感悟分享给大家,有不对的地方希望大家指正。
我所做的测试开发工作简单说来,就是为测试工作的顺利进行而编写测试程序的过程。经过一年多的工作经历,我总结了测试开发的几个特点:
1、做过测试的人才能更好地做测试开发工作
为什么这样说呢?测试开发工作,本质就是:为了让测试能够正确顺利地进行而做的工作,是完全为测试服务的。测试人员需要使用开发出的测试程序作为测试工具进行测试。这就需要测试开发人员知道测试人员需要什么样的工具,什么样的功能能够减少测试人员的工作量。只有做过测试的人才能清楚这些问题,只有有了亲身的体会,才能更快捷和准确的理解测试人员和测试工作对测试工具提的要求,从而达到更好的为测试工作服务的目的。
2、测试开发的程序越简单越好
测试开发的程序,并不是要投入生产的程序,而仅仅是一个测试的工具。如果程序太过于复杂,即会花更多的时间去写程序,又会导致调试程序和修改测试工具的bug的时间花费得过长,对于测试工作来说就得不偿失了。毕竟测试工作是尽可能地发现被测软件的bug,而不是测试工具的bug。所以测试工具只要实现了需要的功能即可。
3、测试开发出的程序不要把异常都扼杀在自己的程序里
做过接口测试的人都知道,我们会测试被测件对于异常的处理是否正确,这就需要测试开发人员开发出的测试工具可以支持将这类异常发出的功能。
我还清楚的记得做测试开发工作经历的第一个项目。当时有一个参数类型是日期型,由于我当时的经验不足,很想当然的在测试开发的工具中把这个参数的类型写成了Date,于是在测试过程中悲剧的事情就发生了,测试人员想传入一个“1234”的字符串测试被测件对于类型异常的判断,结果发现我写的测试工具不支持。于是为了不影响测试的进度,在大家下班后我花了一晚上的时间把调用接口的功能用另外的一种可支持错误类型的方式实现了,这对我来说是个很深刻的教训。
4、要尽可能地通过开发的测试工具减少测试时间
这点,主要是要测试开发出的工具能够尽可能地代替手工完成一些重复性的工作,这样就会减少测试的时间,节约成本。
举个例子,接口测试中对于日期类型的测试,测试人员可以一次设计好对于日期类型所有的测试数据,每遇到一个日期类型的参数,测试工具应该能够用测试人员设计好的此类型的测试数据依次调用接口,然后将返回结果与测试数据对应供测试人员判断用例是否通过。
但要注意,测试工具只能尽可能地代替手工完成部分测试,但不能完全替代。
5、满足测试人员的需求越多,就越有成就感
测试人员觉得测试工具有不方便使用的地方就会向我提出需求,在实现提出的功能后,当我看着测试人员能够因为我实现的功能能够更好更快地完成测试工作,或者我自己用着自己写的测试工具进行测试的时候,心里就有了小小的成就感。我想这也是我喜欢这个工作的一个原因。
以上就是我做测试开发一年多来的一些感受,如果有不对的地方还希望有经验的朋友给予指正。
-- End --
文末寄语: 每个月总有那么几张毛爷爷,他的脸色由红变绿,由绿变黄,接着变蓝,再变紫,再变青,最后离我而去。