在软件开发中,后台开发人员需要掌握的是后台开发技术,前台开发人员需要掌握的是前台技术。理所应当,测试开发人员也应该有自己的十八般兵器。在下不才,列出个一二三条,供大家茶余饭后消遣。
第一,至少掌握一种自动化测试框架。无论是开源的自动化测试框架,还是针对具体系统的测试框架,都是进行自动化测试的利器。自动化测试框架通常可以对一类被测对象具有通用性,在框架的基础上可以进行自动化测试的设计、开发。
第二,一种后台编程语言和后台技术。无论是apache下使用cgi或者是php。如果你不想使你的自动化测试仅仅停留在前台界面的UI测试上(事实上开展UI测试是一项非常费事和费时的事),那么掌握后台开发技术是十分必要的。有了后台开发技术,可以对被测对象的后台功能进行验证。
第三,一种前台脚本技术,vbs,js等。虽说前台UI自动化测试费力不讨好,但是还是十分有必要进行的。UI测试的难点在于测试用例维护量很大,因为后台功能可能变化不大,但是前台UI经常变动,UI一变化,原有的测试用例要进行维护。
第四,一种自动化测试工具。无论是商业的,非商业开源的,还是自己开发测试工具。有了自动化工具像无翼天使长了翅膀,可以通过工具驱动各种脚本执行,或者使用录制/回放等很容易实现自动化测试。
第五,理解测试的能力。前面说了那么多,无非是从设计开发自动化测试的角度来讲的,无论怎么开发自动化测试,其根本都在于替代手工测试,所以切记在自动化测试中不能单一的追求测试覆盖率,不能为了实现自动化而进行自动化。
第六,测试管理工具。能够将对测试进行管理,比如测试用例的管理,测试计划的管理等。
第七,指导、协调测试的能力。这点不单纯属于测试开发的要求了,对于一名测试开发而言,能够明确的分析开发测试的成本,在自动化测试和手工测试之间找到平衡点,并能够指导测试人员进行自动化测试方面的实践。