0%

在自动化测试中,重要的不是工具

首先说明一点的是:专注于某种编程语言或工具可能限制你的发挥,尤其可能限制了你在工作中可提供的价值。

注:如果你可提供的价值在逐步退化,那么你的舞台可能突然谢幕。

下面我要说说这些限制体现在哪些方面,你应该如何去避免它

在2008年的时候,就已经参与到自动化测试项目中,至今已过10年了,在这10年里见尽了各种工具的突起、消失。

有些一时的兴起,然后消失;

有些慢慢的崛起,其强悍的生命力还在延续;

有些当年风光无尽,如今依然江河日下。

最终,在可预见的未来,当前所有的工具都会过时,被更好地工具所替代或是停止了维护。

因此,如果你只专注学习一门编程语言或工具,可能每隔几年甚至更短时间,就必须从头开始学习新的东西了。

所以什么最重要? 能力才是需要聚焦的!!!

你可能要说了,屁话,谁不知道能力才是根本,什么才是能力,你倒告诉我呀。

撸了个天,这就是能力。

基本原则和设计模式才是你持久输出的动力。

对于自动化测试新手而言,甚至对于一些有自动化测试经验的人来讲,面对现在大量的工具和编程语言,时时的都会感到不知所措,甚至迷茫。

各种工具你或多或少有所了解,甚至不断新出的工具都会第一时间了解到,在这些层出不穷的工具涌现的过程中,有一个非常好的消失:

很多工具都是基于相同的设计模式或原则

没错,聚焦在这相同的设计模式或原则上,而不仅仅是工具本身,这才是打造你能力的根本

下面我们看看基于相同设计模式或原则的示例:

  • 自动化测试工具Selenium Webdriver、Cypress、CodeceptJS以及许多类似的商业的、开源的工具都在大致相同的设计或原则下运行的。 它们通过与浏览器进行交互,搜索DOM树标识元素与之进行交互,达到自动化测试的目的。
  • 常用的模式,例如PO,即页面对象模式,也只不过是面向对象软件开发中的一些基本原则或设计模式而已。
  • 几乎所有用于自动化测试的编程语言,本质上都是面向对象的编程语言。这就意味着它们拥有同样的特性,共享对象、方法、参数等概念,也具有面向对象的四大特性:封装、抽象、继承和多态。

如果你掌握了这些基本原则和设计模式,再去学习基于这些基础原则和设计模式上所形成的工具或编程语言,你将更加从容的游刃于各种工具和编程语言。

例子:Selenuim原理
转自:https://mp.weixin.qq.com/s/-cY-7RqWB5R-a49Gk_NhcA