2004年,Thought Works公司一个名为Jason Huggins的兄弟为了减少手机测试的工作量,实现了一套基于JavaScript的代码库,使用这套代码库可以进行页面的交互操作,并且可以重复地在不同浏览器上进行各种测试操作,通过不断改进和优化,这个代码库逐渐成为Selenium Core。Selenium Core为Selenium Remote Control (RC) 和 Selenium IDE提供了坚实的核心基础能力。
随着互联网技术的不断发展以及浏览器对于JavaScript语言的安全限制,Selenium的发展也遇到了很多难以解决的困难。由于其自身实现的机制,Selenium无法突破浏览器沙盒的限制,导致很多测试场景的测试需求难以被实现。
2006年,Google的工程师Simon Stewart开启了WebDriver的项目,此项目可以让测试工具调用浏览器和操作系统本身提供的内置方法,以此来绕过JavaScript环境的沙盒限制。
2008年,Selenium和WebDriver两个项目进行合并,至此,Selenium2.0出现了 (Selenium2.0 = Selenium + WebDriver)
2016年10月,Selenium3.0诞生,实现了把核心API跟客户端driver进行分离,同时去掉用的越来越少的Selenium RC功能。
---------------------------------------------------