selenium 1.0包括selenium IDE、selenium Grid、selenium RC
selenium 2.0包括selenium IDE、selenium Grid、selenium webdriver
selenium IDE是一个可以录制、回放元素的客户端软件
selenium Grid可以实现分布式运行测试用例即在很多机器上运行同一份测试用例
selenium RC现在被selenium webdriver代替了
webdriver原理:
webdriver是按照C/S模式设计
server就是remote server,可以是任意的浏览器。当我们的脚本启动浏览器后,该浏览器就是remote server,它的职责就是等待client发送请求并作出响应
client就是我们的测试脚本。我们测试脚本中的一些行为,例如打开浏览器,跳转到指定URL等操作是以http请求的方式发送给被测试浏览器的,也就是remote server,remote server 接受请求,执行相应操作,并在response中返回执行状态、返回值等信息
1.webdriver启动目标浏览器,并绑定到指定端口。启动浏览器实例将作为 webdriver的remote server
2.client通过commandexecuter发送httprequest给remote server的侦听端口(通信协议:the webriver wire protocol)
3.remote server依赖浏览器组件(驱动)来转化浏览器的native调用