Python-自动化测试-selenium 简介

版权声明:本文为博主原创文章,遵循CC BY-NC-ND 4.0 版权协议,转载请附上原文出处链接和本声明。

selenium 简介

selenium 官网
https://www.seleniumhq.org/

Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) be automated as well.
Selenium has the support of some of the largest browser vendors who have taken (or are taking) steps to make Selenium a native part of their browser. It is also the core technology in countless other browser automation tools, APIs and frameworks.

Selenium是最广泛使用的开源Web UI(用户界面)自动化测试套件之一。它最初由Jason Huggins于2004年开发,作为Thought Works的内部工具。 Selenium支持跨不同浏览器,平台和编程语言的自动化。

Selenium可以轻松部署在Windows,Linux,Solaris和Macintosh等平台上。 此外,它支持iOS(iOS,Windows Mobile和Android)等移动应用程序的OS(操作系统)。

web driver 介绍

selenium 中包含了直接操作WebDriver API, 通过selenium web driver API 可以通过代码实现在浏览器中的所有操作.

IE

selenium 官方只提供了IE 的webDriver, 对应的下载地址是:
64 位版本:https://goo.gl/AtHQuv
32 位版本:https://goo.gl/9Cqa4q

其它浏览器的WebDriver, 不是WebDriver 官方提供的, 但是都可以在网络上找到很多的资源。

Chrome WebDriver:

https://sites.google.com/a/chromium.org/chromedriver/downloads

Firefox WebDriver:

https://github.com/mozilla/geckodriver/releases

将对应浏览器的WebDriver 下载后, 保存到固定位置, 然后将存放位置添加到系统环境变量中。

注意存放路径中,最好不要出现空格,如果出现了空格,请使用 " " 进行包裹。

Selenium web driver 功能

  • 多浏览器支持 :Selenium WebDriver支持各种Web浏览器,如Firefox,Chrome,Internet Explorer,Opera等等。它还支持一些非传统或罕见的浏览器,如HTMLUnit。

  • 多编程语言支持:WebDriver还支持大多数常用的编程语言,如Java,C#,JavaScript,PHP,Ruby,Pearl和Python。 因此,用户可以基于自己的能力选择任何一种受支持的编程语言并开始构建测试脚本。

  • 速度:与Selenium Suite的其他工具相比,WebDriver的执行速度更快。与RC不同,它不需要任何中间服务器与浏览器通信; 此工具直接与浏览器通信。

  • 简单命令:Selenium WebDriver中使用的大多数命令都易于实现。

  • WebDriver方法和类 :WebDriver提供多种解决方案来应对自动化测试中的一些潜在挑战。WebDriver还允许测试人员通过动态查找器处理复杂类型的Web元素,如复选框,下拉列表和警报。

搭建Selenium-WebDriver 开发环境

Setting Up a Selenium-WebDriver Project 取决于自己希望使用的开发语言, 目前官方对下面的语言提供了对应的接口.

完整的Setting Up a Selenium-WebDriver Project 过程请参见:
https://www.seleniumhq.org/docs/03_webdriver.jsp#setting-up-a-selenium-webdriver-project

下面简单的以Python 语言为例进行介绍

Python 语言的设置其实非常的简单,只需要在命令行中执行

就可以了.

pip 命令的使用请参见python 官方的文档
https://pip.pypa.io/en/stable/

Selenium安装完成后,就可以进行selenium 的开发了.

简单sample

下面的代码来自于官方的介绍文档,只做了简单的修改.
https://www.seleniumhq.org/docs/03_webdriver.jsp#Introducing-the-Selenium-WebDriver-API-by-Example

top Created with Sketch.