51Testing软件测试论坛

标题: Selenium使用及原理 [打印本页]

作者: 测试积点老人    时间: 2019-1-4 15:47
标题: Selenium使用及原理
1、Selenium介绍

Selenium是一个Web测试工具,通过直接控制浏览器来实现Web测试,与真实用户操作完全一致。Selenium目前支持IE、Firefox、Chrome、Safari、Opera等浏览器,Selenium支持主流的操作系统平台-Windows、Linux、Mac等,Selenium支持Java、Ruby、Python、Perl、PHP、C#等编程语言进行制定测试。 Selenium IDE还可以录制用户的基本操作,用于方便生产测试案例,可以在随后的测试过程中回放。


2、基于Python的简单使用

下面是一个简单的例子,用于打开百度并进行搜索

  1. from selenium import Webdriver
  2. from selenium.webdriver.common.keys import Keys

  3. #启动web driver server,打开IE浏览器
  4. ie = Webdriver.Ie()
  5. #打开百度首页
  6. ie.get('http://www.baidu.com')
  7. #获取搜索输入框
  8. kw = ie.get_element_by_id('kw')
  9. #在输入框输入selenium,并回车
  10. kw.send_keys('selenium'+Keys.RETURN)
  11. #ie.close()
复制代码

3、远程调用浏览器

selenium实际上是由服务端和客户端两部分组成的,服务端必须与被调用浏览器在同一主机,服务端通过webdriver控制浏览器的行为,客户端可以与服务端位于不同主机,只要网络能够访问到即可。客户端通过http协议(restful)与服务端通信,将控制命令发送给服务端。 正因为客户端通过http协议与服务端交互,所以客户端可以使用任意支持tcp/ip的编程语言实现。

  1. from selenium.webdriver.remote.webdriver import Webdriver as RemoteWebDriver
  2. from selenium.webdriver.common.keys import Keys

  3. #启动web driver server,打开IE浏览器
  4. browser = RemoteWebdriver('http://remoteHost:remotePort')
  5. #打开百度首页
  6. browser .get('http://www.baidu.com')
  7. #获取搜索输入框
  8. kw = browser .get_element_by_id('kw')
  9. #在输入框输入selenium,并回车
  10. kw.send_keys('selenium'+Keys.RETURN)
  11. #browser.close()
复制代码







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2