selenium2 安装、简单使用及浏览器启动问题解决汇总
一、selenium2 安装
1.安装jdk并配置环境变量
jdk需要1.6版本及以上的,这个从网上下载就可以,环境变量的配置前边的随笔整理过就不多说了。
2.安装Firefox,Selenium IDE,Firebug和firepath
(1)安装FireFox
Firefox版本有一定限制,需要和selenium IDE相匹配。
下载地址: http://www.firefox.com.cn/download/
(2)安装Selenium IDE
Selenium IDE是基于FIREFOX浏览器的一个插件,提供GUI界面来运行Selenium测试。Selenium IDE提供脚本录制和回放功能,可以将用户在浏览器中执行的操作记录下来,生成各种形式的脚本,可以将这些脚本保存供selenium使用。Selenium IDE主要是用在Selenium 1.0中,在Selenium 2.0中基本不使用。
1)下载Selenim IDE 下载地址:http://seleniumhq.org/projects/ide/(官网封了!)从csdn上下载的
2)安装:直接把下载的Selenium IDE文件拖到FireFox浏览器窗口中,按提示操作即可安装成功。
(3)安装Firebug
1)打开Firefox浏览器
2)点击菜单“工具(T)”,下拉列表中选择“附加组件”。
3)“获取附加组件”
4)在搜索里输入“firebug”,稍等即可。
5)点击“添加至Firefox”
6)OK,重启浏览器即可。
(4)安装firepath
1)打开Firefox浏览器
2)点击菜单“工具(T)”,下拉列表中选择“附加组件”。
3)“获取附加组件”
4)在搜索里输入“firepath”,稍等即可。
5)点击“添加至Firefox”
6)重启浏览器即可。
3.安装eclipse
安装eclipse,安装在默认安装目录下
4。安装selenium webdriver
首先声明selenium webdriver=selenium2=selenium1+webdriver 这个基础留到下一篇详细说明。
(1)下载:官方UserGuide:http://seleniumhq.org/docs/(官网进不去,用下边地址)
CSDN: http://download.csdn.net/download/shingo0109/8183435
2)下载:selenium-server-standalone-2.25.0.jar和selenium-java-2.25.0.zip(使用java语言的下载该包)。
3)解压下载的selenium-java-2.25.0.zip文件
二、工具的简单使用
1、 Selenium-IDE使用
1)Firefox工具栏,打开Selenium-IDE插件,如下图:
2)在“Base URL”中输入需要录制脚本的网址地址,然后点击界面中右上角红色录制按钮(开始录制、停止录制都是此按钮),如下图。
3)录制完成后,点击回放按钮可以对刚刚录制的脚本进行回放,这里可以调整回放速度。 回放按钮就是上图中的绿色三角按钮。
4)还可以将录制的脚本转换成C#,Java,PHP,Ruby,Prel,Groovy,Python等语言,如下图所示。转换完以后可以直接复制到Eclipse中使用,在Selenium 1.0中稍加修改就可使用,在Selenium 2.0则不能直接使用,只能手动编制。
2、 Firebug的使用
打开Firebug有两种基本的方法:
1)当需要获取页面上元素的属性时,可以使用Firebug进行获取,例如下图所示输入框:
获取方法:右击输入框,在菜单中选择“查看元素”
此时将会在页面下方出现该元素的属性,如下图所示:
然后右击“编辑”后面的内容,在菜单中选择“复制xpath”,即可使用。
2)Firebug也可以通过点击Firefox浏览器上的“工具”菜单->“Firebug”->“打开Firebug”进行打开。
3、xpath checker的使用
元素的属性还可以通过xpath checker来查看。对于上面百度输入框的属性可以通过右击并选择菜单中的“view xpath“按钮
此时会打开如下窗口,“XPath”中的内容就是该输入框的属性,在下面会显示对应的元素。
4、Selenium 2.0的使用
1)在Eclipse里新建一个project,然后引用selenium-java-2.25.0.zip解压后的selenium-java-2.25.0.jar。
2)新建一个package"test"
3)在"test"包下新建一个class“Seleniumcn”把代码贴进去,如果代码没错误就可以运行了。
因为selenium2支持多浏览器,这里只总结常用的三种浏览器。
(1)用firefox浏览器执行测试,(如果firefox浏览器安装路径为默认路径,则代码如下)
package test;
import java.util.Set;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class Seleniumcn {
public static void main(String[] args) {
//如果不是默认路径安装,需要先将firefox.exe配置到系统变量中去,如下:
// System.setProperty("webdriver.firefox.bin", "D:\\Program Files\\Mozilla Firefox\\firefox.exe");
//解决url输不进去问题
System.setProperty("javax.xml.parsers.DocumentBuilderFactory","com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl");
WebDriver driver = new FirefoxDriver();
driver.get("http://www.baidu.com");
WebElement element = driver.findElement(By.name("kw"));
element.sendKeys("hello Selenium!");
element.submit();
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Page title is: " + driver.getTitle());
driver.close();
}
}
(2)用IE浏览器执行测试,由于ie,chrome浏览器的driverServer是由他们自己管理的,我们需要下载相应的驱动,ie的为IEDriverServer.exe,注意区分32位和64位,使用方法如下:
System.setProperty("webdriver.ie.driver", "src\\main\\resources\\IEDriver.exe");
同样,如果ie不是默认路径安装需要配置bin路径到系统属性中去
ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
WebDriver driver =
new InternetExplorerDriver(ieCapabilities);
package test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
public class Seleniumcn {
public static void main(String[] args) {
System.setProperty("webdriver.ie.driver", "C:\\Program Files\\IEDriverServer.exe");
//解决ie兼容模式设置导致无法启动问题
DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();
ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
WebDriver driver = new InternetExplorerDriver(ieCapabilities);
driver.get("http://www.baidu.com");
WebElement element = driver.findElement(By.id("kw"));
element.sendKeys("hello Selenium!");
element.submit();
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Page title is: " + driver.getTitle());
driver.close();
}
}
(3)用chrome浏览器执行测试,这里只说下启动chrome浏览器。(需要下载驱动chromedriver.exe)
System.setProperty("webdriver.chrome.driver", "C:\\Program Files\\chromedriver.exe");
selenium2 安装、简单使用及浏览器启动问题解决汇总的更多相关文章
- 安装JDK9之后eclipse无法启动问题解决办法
操作系统:MAC OS JDK:1.8.0_131 eclipse:官网最新版 安装jdk的过程很简单,从官网下载之后依次点击就可以了,在终端输入:java -version 可以看到安装后的版本信息 ...
- 在 Amazon AWS 搭建及部署网站:(二)安装、配置软件,启动网站
现在,我们已经有了一台EC2主机,具备了基本的硬件环境.下面,开始软件环境的配置. 第一步:连接服务器 后面所有的一切,都需要在SSH终端窗口操作.首先,我们需要一个SSH客户端.PuTTY是很常用的 ...
- mac 下mongo的启动和关闭以及启动问题解决
原文地址:https://www.cnblogs.com/leinov/p/7341139.html mac 下mongo的启动和关闭以及启动问题解决 mongo的安装在这:http://www.cn ...
- Mysql 安装,及其闪退的问题解决
1.下载 Mysql 64下载链接(华军软件) http://soft.onlinedown.net/soft/3573.htm 2.安装 2.1 傻瓜式安装 不再赘述,略过. 2.2安装完成打开闪退 ...
- Django web框架 下载安装 简单项目搭建
什么是web应用? Web应用程序是一种可以通过Web访问的应用程序,程序的最大好处是用户很容易访问应用程序,用户只需要有浏览器即可,不需要再安装其他软件 应用程序有两种模式C/S.B/S.C/S是客 ...
- SYSTEM32 下的几乎所有文件的简单说明(原由无忧启动论坛老毛桃出)
SYSTEM32 下的几乎所有文件的简单说明(原由无忧启动论坛http://bbs.wuyou.com老毛桃出): clui.dll .....Security Descriptor Editor,没 ...
- Chrome浏览器启动参数大全(命令行参数)
前言 在开发Web项目当中,浏览器必不可少,而浏览器的启动参数可以帮我们实现很多功能. 常用参数 常用参数请参考下表. 序号 参数 说明 1 --allow-outdated-plugins 不停用过 ...
- 漏洞扫描工具nessus、rapid7 insightvm、openvas安装&简单使用
Rapid7-insightvm 申请试用 申请地址 邮件地址不能用常用邮件,要使用自己域名的邮件,可以使用这个临时邮箱 手机号随便输入,10位以上 提交后会跳转下载页面 安装 安装:./Rapid7 ...
- Windows无法完成安装,若要在此计算机上安装Windows,请中心启动安装。
现在安装系统已经很简单了,我觉得U盘启动的话两步就差不多了, 壹:设置BIOS,将U盘启动作为系统默认启动选项 贰:直接进去大白菜之类的,一键安装... 今天终于看到第三部了, 报错:Windows无 ...
随机推荐
- win7 php5.5 apache 源码安装 imagick扩展
最近公司项目有用到php 的imagick,折腾了好长时间才把扩展装上,最主要的就是最新的不一定是最合适的,最开始一直找最新包安装,一直都不成功,经过google了好长时间,终于找到一个有用的,灵机一 ...
- .Net 将一个DataTable分解成多个DataTable
这两天遇到一个问题,我们所接触 的一个系统在导出数据到Excel的时候,产生了内存溢出的错误.原因在于数据过大,它导出是将所有数据存放在一个DataSet的一个表中,再将这个数 据集放入session ...
- Android SDK 更新失败
万恶的墙,调查兵团赶紧把墙拆了.大家一起跟巨人打一架. 解决方法是改hosts文件 添加 74.125.237.1 dl-ssl.google.com ok,good job 多亏了http://bl ...
- phpExcel导出excel的类,每步都有说明
require_once WEB_PATH . '/lib/PHPExcel/PHPExcel.php'; require_once WEB_PATH . '/lib/PHPExcel/PHPExce ...
- (转)Windows驱动编程基础教程
版权声明 本书是免费电子书. 作者保留一切权利.但在保证本书完整性(包括版权声明.前言.正文内容.后记.以及作者的信息),并不增删.改变其中任何文字内容的前提下,欢迎任何读者 以任何形式(包括 ...
- npm,grunt,less,sass,typescript
typescript http://www.typescriptlang.org sass http://sass-lang.com/ less http://lesscss.org/ bow ...
- 完整DataTable与IList互换(转)
public class CollectionHelper { private CollectionHelper() { } public static DataTable ConvertTo< ...
- nodejs mongodb
27017 nodejs指定vsisual studio版本 npm install mongodb --msvs_version=2013 npm install mongoose --msvs_v ...
- Oracle 存储过程实例2
--创建存储过程 CREATE OR REPLACE PROCEDURE xxxxxxxxxxx_p ( --参数IN表示输入参数,OUT表示输入参数,类型可以使用任意Oracle中的合法类型. is ...
- MVC与WebForm的一些区别
MVC与WebForm的一些区别 它们都是ASP.NET WEB开发的两种方式 .但是他们也是有一些不同.做个小结. 1.MVC是没有服务器端控件这么一说的,也就是没有viewstate,也就不会产生 ...