首页 > 编程知识 正文

自动化测试工具selenium的使用,selenium自动化测试指南

时间:2023-05-04 23:46:33 阅读:243306 作者:1536

Selenium简介

Selenium也是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE、Mozilla Firefox、Chrome等,支持多种语言编写测试测试脚本,目前支持的语言有Java,Python,Ruby,C#,当前Selenium最常用的版本是Selenium2和Selenium3。

Selenium 1.0 的工作原理

Selenium 1.0,又称 Selenium RC,其中 RC 是 Remote Control 的缩写。Selenium RC 利用的原理是:JavaScript 代码可以很方便地获取页面上的任何元素并执行各种操作。Selenium 1.0 的核心是,基于 JavaScript 代码注入。

由于Selenium 1.0已经基本不再使用,在这里就不做过多介绍。

Selenium 2.0 的工作原理

Selenium 2.0,又称 Selenium WebDriver,它利用的原理是:使用浏览器原生的 WebDriver 实现页面操作。其实现方式与Selenium 1.0已经是完全不同了。 Selenium 2.0 的核心是,运用了浏览器原生支持的 WebDriver。

Selenium 2.0 工作原理如图:

Selenium 2.0 执行测试的步骤:

1、当使用 Selenium2.0 启动浏览器 Web Browser 时,后台会同时启动基于 WebDriver Wire 协议的 Web Service 作为 Selenium 的 Remote Server,并将其与浏览器绑定。绑定完成后,Remote Server 就开始监听 Client 端的操作请求。

2、执行测试时,测试用例会作为 Client 端,将需要执行的页面操作请求以 Http Request 的方式发送给 Remote Server。该 HTTP Request 的 body,是以 WebDriver Wire 协议规定的 JSON 格式来描述需要浏览器执行的具体操作。

接口协议是:

POST /session/{session id}/element/{element id}/click

详情请参考www.w3.org/TR/webdriver/

3、Remote Server 接收到请求后,会对请求进行解析,并将解析结果发给 WebDriver,由 WebDriver 实际执行浏览器的操作。

4、WebDriver 可以看做是直接操作浏览器的原生组件(Native Component),所以搭建测试环境时,通常都需要先下载浏览器对应的 WebDriver。

Selenium 3.0

Selenium的架构图

Selenium 3.0是selenium最新发布版本,工作原理与Selenium 2.0大致相同。

Selenium2和Selenium3的区别在于:

1、去掉了对selenium rc的支持
2、全面拥抱java 8 。最低要求java 8 版本以上。
3、支持macOS (Sierra or later),支持官方的safaridriver。
4、通过ms官方的webdriver server支持Edge浏览器。只支持ie 9.0版本以上。
5、通过Mozilla官方的geckodriver来支持firefox。火狐从47版本开始使用Gecko引擎,该引擎支持多进程。

 

 

 

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。