自动化测试语言的选择

时间:2021-03-05 06:04:00

通过前面的介绍,我们了解到selenium webdriver 支持多种语言的开发,java、python、ruby、php、C#、JavaScript 等,那么我们应该选择哪一种语言结合selenium webdriver 进行开发呢?这里笔者给出一点自己的看法。
有同学说我们公司的软件是用某种语言开发,自动化也要选某语言;其实从本质上来说,使用软件开发语言和自动化开发语言没有任何联系。所以,在选择语言进行自动化测试时不要有这方面的顾虑。从个人来讲,自动化测试所用到代码与开发人员相同,自己的编码能力一般没开发人员强,会糟鄙视,从而也降低了自身的不可替代性。
选择与开发相同的语言当然也有有利的一面,测试人员通过自动化测试的实践,提高了自己的编码能力,也有助于其它测试工作的进行,比如,协助开发人员定位代码级的bug, 协助开发人员进行接口测试等。
本书并没有向前面几本selenium 书选用应用更为广泛的java 、C# ,而是选用了python,主要有以
下几个方面考虑。
对于编程能力比较弱的初学者来说,python 与ruby 等语言更容易学习和使用。通过自动化测试技术的实践,我们不仅掌握了自动化测试技术,从而也掌握一门语法简单且功能强大的脚本语言。(本书中对涉及到的python 知识都会做详细的讲解,所以没有python 基础的同学完全不用担心),那为什么不选ruby而选python 呢?从笔者角度来看,python 语言除了在自动化测试领域有出色的表现外,在系统编程,网络编程,web 开发,GUI 开发,科学计算,游戏开发等多个领域应用非常广泛,而且具有非常良好的社区支持。也就是说学习和掌握python 编程,其实是为你打开了一道更广阔的大门。ruby 是一个“魔法”语言,时常会给你带来很多惊喜,python 的宗旨是使处理问题变得更简单,而且格式严谨,在协同编程时不容易产生混乱。所以,综合考虑笔者认为python 更适合测试菜鸟的养成计划。
那么对于有编程经验的同学,学习python 对你来说几乎没有任何成本,你完全可以在很短的时间内学习和使用python 处理问题,有一个看上去还不错的一门语言,为什么不去尝试使用一下呢!?当然,对于非常“专一”的同学,只愿意选择自己熟悉的语言,而不愿意尝试使用新语言,那么本更多的是传递你处理问题的思路,虽然编程语言的语法有差异,但仍然可以对你的自动化工作提供解决问题的思路。