前段时间学习了selenium的使用,今天开始接触appium看到appium的原理后产生了疑惑:
现在的selenium是通过webdriver来操作驱动浏览器的,然而appium有一个server的概念
那么为什么没有app driver这个东西呢?
![1240](https://upload-images.jianshu.io/upload_images/4241125-3fdfa03db27956f2.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
selenium
早期的selenium
早期的selenium主要是指selenium1.0的版本,
这个版本主要由Selenium IDE + Selenium Grid + SeleniumRC组成
seleniumRC就是后来被webdriver取代的一个代理server
RC == Remote Control 远程控制
早期Selenium 引入了 Remote Control Server 这样一个代理 Server,JavaScript 脚本注入和与 Server 通讯都通过这个代理 Server 来进行,JavasScript可以获取并调用页面的任何元素,Selenium启动一个Server,将操作Web元素的API调用转化为一段段JavaScript,在Selenium内核启动浏览器之后注入这段JS
缺点:但是JS注入速度不理想,稳定性大大依赖于Selenium内核对API翻译成的JS质量高低