如果测试员希望了解更多程序设计方面的知识,我们建议学习Perl、Visual Basic、TCL、JavaScript、Python或周围程序员了解并使用的任何脚本语言(Sweeney 2001)。有些脚本语言,例如Unix壳脚本或Dos批处理文件已经被使用很长时间了。脚本语言是便于使用而不是用来提高执行性能的高级语言。使用脚本语言而不是系统程序设计语言,例如C/C++或java时,很多程序员的生产率都更高,更不容易出错。
对于大多数自动化测试来说,脚本语言都是最合适的。测试员可以使用脚本语言生成测试用例、访问编程接口以及检验结果。
很多测试工具都有内置脚本语言。有些工具明智地使用了标准脚本语言,有些工具创建了自己专用的脚本语言,我们叫做提供商脚本。我们认为使用提供商脚本并没有令人信服的理由,而且还有一些问题。
提供商脚本使编码更困难。这些脚本语言中的很多都以像C这样的标准语言为基础。如果可以看懂C,也许就能看懂基于C的提供商脚本,但编写有效代码需要很长的时间。这些提供商脚本不支持很多标准语言表达方式,这些表达方式使编写代码在一定程度上就像书写不用字母N的英文一样容易。
提供商脚本难以掌握。很难找到提供商脚本的培训课程或书籍,这增加了掌握提供商脚本的难度。即使学会了提供商脚本也不能用在其他地方。因此人们学习提供商脚本的积极性不高。如果要招募员工,也很难找到已经掌握提供商脚本的人。
提供商脚本影响测试员与程序员之间的协作。我们建议测试自动化项目要得到测试员和产品程序员的合作。如果使用不同的语言会使合作变得复杂。
很难在别人工作的基础上构建基本库。与可用于标准语言的库相比,可用于提供商脚本的库少得可怜。这意味着不能在别人工作的基础上构建,而是要花时间重新构建基本库。
我们建议避免使用采用提供商脚本的工具。现在有越来越多的工具使用标准语言。如果必须使用采用提供商脚本的工具,应尽量减少在工具中编写的代码量,并在独立语言环境中进行尽可能多的处理。