本文依据selenium 官方文档,结合自己的理解完成,可能存在不尽准确的地方,各位看官请多多指教。
2004年,Jason Huggins 在ThoughtWorks测试一个内部应用,作为一个有头脑的人,他不能局限于将有限的生命投入到无限的手工测试中去,他必须去改变这种现状,遇上他就开发了一套Javascript library,在多个浏览器上自动运行test cases,这个Javascript library最终变成了 selenium score,实现了Selenium Remote Control (RC) and Selenium IDE的基础功能。
虽然selenium是一款强大的自动化工具,但是他也是有一定缺陷的,他的javascript是基于自动引擎和具有一定安全限制的浏览器上运行。更糟糕的是,webapps变得越来越强大,并且会越来越多的使用浏览器提供的一些特有特性。selenium的局限性越来越明显。
| |
| |
| |
2006年,Google一个非常勇敢的工程师Simon Stewart开始一个被叫做WebDriver的工程。Google已经使用Selenium很长时间了,但是测试人员不得不使用有局限性的产品。Simon想到了一款测试工具能够直接使用‘本土’的方法为浏览器和操作系统,以此规避这个Javascript环境带来的沙盒限制。WebDriver工程就为了这个目标而开始。
| |
| |
| |
2008年,北京奥林匹克运动会标志着中国已经达到了一个全球化的高度。这一年最重要的事情就是Selenium and WebDriver的归并。Selenium 已经有大量用户的支持,但是WebDriver才是这个工具真正的未来,两个工具的合并给用户提供了统一的特性,并且带来更多新的亮点,成功绕开了javascript sandbox问题。
Selenium 2 (aka. Selenium Webdriver)
Selenium 1 (aka. Selenium RC or Remote Control)