Selenium的三生三世

Selenium1.0

Selenium的三生三世_第1张图片
image.png

Selenium IDE

一个Firefox插件,可以录制用户的基本操作,生成测试用例,随后可以运行这些测试用例在浏览器里回放,可将测试用例转换为其他语言的自动化脚本

Selenium Grid

允许Selenium RC针对规模庞大的测试案例集或者需要在不同环境中运行的测试案例集进行扩展,用于实现分布式测试。利用Grid,可以很方便地同时在多台机器上和异构环境中并行运行多个测试事例。

Selenium RC

rc是remote control 的缩写,它的功能就是用来模拟一个浏览器

利用selenium的代理服务器来实现访问浏览器实现自动化测试。

其中:selenium RC分为:Client和Selenium Server。

client实现自动化脚本,Selenium Server负责控制浏览器行为

Selenium Server分为3部分。

  • Launcher:启动浏览器

  • Http Proxy:selenium Server的Http代理

  • Core:嵌入到浏览器的js代码。

有Launcher启动浏览器,将core嵌入到浏览器,并把浏览器代理设置为selenium Server的Http Proxy。

不足之处

不支持本机键盘和鼠标事件

不支持同源策略XSS/HTTP(S)

不支持弹出框,对话框(基本身份认证,自签名的证书和文件上传/下载)

Selenium 1.0使用的是Javascript注入技术与浏览器打交道,需要SeleniumRC启动一个Server,将操作Web元素的API调用转化为一段段Javascript,在Selenium内核启动浏览器之后注入这段Javascript。开发过Web应用的人都知道,Javascript可以获取并调用页面的任何元素,自主的进行操作。由此才实现了Selenium的目的:自动化Web操作。这种Javascript注入技术的缺点是速度不理想,而且稳定性大大依赖于Selenium内核对API翻译成的Javascript质量高低。

Selenium 2.0

Selenium2.0=Selenium1.0+WebDriver

selenium 1.0中selenium RC替换为了WebDriver

基于调用WebDriver Api来模拟用户操作

WebDriver速度更快,因为它直接交互使用的浏览器

支持多种编程语言

Selenium 3.0

去掉了Selenium RC 的支持

全面拥抱java8

支持macOS(Sierra or later),支持官方的safarideriver

通过ms官方的webdriver server支持Edge浏览器

只支持ie 9.0版本以上

通过Mozilla 官方的geckodriver来支持firefox

查看WebDriver API

pydoc是Python自带的模块,主要用于从python模块中自动生成文档,这些文档可以基于文本呈现的、也可以生成WEB 页面的,还可以在服务器上以浏览器的方式呈现!

一、pydoc

到底什么是pydoc? , 这个是准确的解释:Documentation generator and online help system. pydoc是Python自带的模块,主要用于从python模块中自动生成文档,这些文档可以基于文本呈现的、也可以生成WEB 页面的,还可以在服务器上以浏览器的方式呈现!简而言之,就是帮你从代码和注释自动生成文档的工具。

二、启动server

1.打开cmd命令行,输入:python -m pydoc -p 6666

2.-p参数:这个表示在本机上启动服务

3.6666参数:这个是服务端口号,随意设置

命令:

python -m pydoc -b
Selenium的三生三世_第2张图片
image.png

三、浏览器查看文档

浏览器会出现一个网页

Selenium的三生三世_第3张图片
image.png

找到这个路径:C:\Users\lenovo\AppData\Local\Programs\Python\Python35\lib\site-packages

打开的selenium>webdriver>

最终看到的这些就是selenium的webdriver API帮助文档啦

Selenium的三生三世_第4张图片
image.png

当然网上也有一些翻译的,建议自己看原声的API

你可能感兴趣的:(Selenium的三生三世)