请描述Selenium Webdriver的工作原理。
1)启动浏览器后,selenium-webdriver会将目标浏览器绑定到特定的端口,启动后的浏览器则作为webdriver的remote server,接受测试脚本的命令。
2)客户端(测试脚本),借助ComandExecutor发送HTTP请求给sever端(通信协议:The WebDriver Wire Protocol,在HTTP request的body中,会以WebDriver Wire协议规定的JSON格式的字符串来告诉Selenium希望浏览器接下来做什么事情)。
3)Sever端需要依赖原生的浏览器组件(如geckodriver.exe),来转化浏览器native的调用来完成操作