Selenium自动化测试之道
上QQ阅读APP看书,第一时间看更新

2.1 从一个测试脚本说起

万事开头难。在了解什么是Selenium之前,我们先看一个最简单的Selenium脚本究竟是什么样的。定一个小目标,编写脚本,实现访问Bing搜索页面,检查页面标题中是否包含了Bing这一内容。

以下是用Python实现的示例。

    1  from selenium import webdriver
    2  driver=webdriver.Firefox()
    3  driver.get("http://cn.bing.com/")
    4  assert‘Bing'in driver.title
    5  driver.quit()

让我们来逐一解读它们的作用:

第1行,引入了selenium webdriver模块。

第2行,初始化了Firefox webdriver对象,对象名为driver。这一行会启动你本地机器上的Firefox程序,打开一个Firefox窗口。

第3行,调用driver对象的get方法,Firefox浏览器会跳转到Bing搜索页面。

第4行,检查页面标题是否包含了Bing这一字符串内容。若是,则测试用例通过。

第5行,Firefox程序退出,浏览器窗口关闭。

读到这里,想必你的脑中有许多问号。Selenium就是一个类库吗?Selenium的工作原理是怎样的?为什么它打开的Firefox窗口跟我手动打开的不一样,那些浏览器插件都没有加载?Selenium有没有自动生成脚本的录制功能呢?支持分布式测试吗?

别着急,请带着这些问题阅读后面几个小节的内容,你将豁然开朗。

如果你迫不及待地想要运行这个Python脚本,可以按照以下步骤去执行。你也可以跳过这些内容,后续章节将有更为详细的说明。

(1)确保本地Python环境、Firefox浏览器已经准备好。

(2)下载Python selenium包,地址为https://pypi.python.org/pypi/selenium

(3)在Python命令窗口下逐行输入上述的示例代码,查看效果。

若你下载的selenium包的版本是3.0+,还需要在本地安装geckodriver。下载地址:https://github.com/mozilla/geckodriver/releases