文档章节

Selenium 学习笔记(Java版)(一)永远的HelloWorld

Iceberg_XTY
 Iceberg_XTY
发布于 2017/06/03 18:02
字数 427
阅读 23
收藏 0

在pom文件中添加selenium依赖

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>3.4.0</version>
</dependency>

本文使用Firefox和Chrome两种最常用的浏览器

代码执行的效果是打开浏览器,进入百度,自动输入hello Selenium然后搜索

(1)使用Firefox

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class HelloTest1 {
    public static void main(String[] args) {
        System.setProperty("webdriver.gecko.driver", "D:\\1Program\\Selenium_Driver\\geckodriver.exe");
        System.setProperty("webdriver.firefox.bin", "E:\\Mozilla Firefox\\firefox.exe");
        WebDriver dr =  new FirefoxDriver();
        dr.get("http://www.baidu.com");
        dr.findElement(By.id("kw")).sendKeys("hello Selenium");
        dr.findElement(By.id("su")).click();
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

本文只介绍前几行,剩余部分在后续文章介绍

System.setProperty("webdriver.gecko.driver", "D:\\1Program\\Selenium_Driver\\geckodriver.exe");
System.setProperty("webdriver.firefox.bin", "E:\\Mozilla Firefox\\firefox.exe");
WebDriver dr = new FirefoxDriver();

使用FirefoxDriver时,程序会去默认路径寻找firefox浏览器,大部分人可能都不是默认的,所以需要通过webdriver.firefox.bin设置系统变量,这时候直接运行会报如下错误

Exception in thread "main" java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information, see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases
	at com.google.common.base.Preconditions.checkState(Preconditions.java:738)
	at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:124)
	at org.openqa.selenium.firefox.GeckoDriverService.access$100(GeckoDriverService.java:41)
	at org.openqa.selenium.firefox.GeckoDriverService$Builder.findDefaultExecutable(GeckoDriverService.java:115)
	at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:330)
	at org.openqa.selenium.firefox.FirefoxDriver.toExecutor(FirefoxDriver.java:207)
	at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:108)
	at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:104)
	at com.mysite.selenium.HelloTest1.main(HelloTest1.java:11)

于是去下载geckodriver,然后设置路径到webdriver.gecko.driver即可(PS:看网上的说法,似乎设置到环境变量也可以,各位可以试一下)

(2)使用Chrome

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class HelloTest {
    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "D:\\1Program\\Chrome_Driver\\chromedriver.exe");

        WebDriver driver = new ChromeDriver();
        driver.get("http://www.baidu.com");
        driver.findElement(By.id("kw")).sendKeys("hello Selenium");
        driver.findElement(By.id("su")).click();
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        //driver.quit();
    }
}

Chrome浏览器需要单独下载driver,地址在这里(需要梯子),然后设置系统变量webdriver.chrome.driver即可

 

© 著作权归作者所有

共有 人打赏支持
Iceberg_XTY
粉丝 6
博文 44
码字总数 38944
作品 0
杭州
程序员
java基础学习_概述_day01总结

============================================================================= ============================================================================= 涉及到的知识点有:  ......

黑泽明军
02/02
0
0
测试框架Automation Center(java、QTP、selenium-java 版、...

支持selenium java语言的一个框架,留以后学习~~ 相关链接:http://www.cesoo.info/acdocs/zh_cn/index.html#Menu=ChildMenu1 框架介绍 AC是一个集成各种测试工具的java自动化测试管理与运行平...

Rebecca.Hu
2012/02/17
0
4
一.selenium webdriver

准备:jdk、eclipse、firefox selenium webdriver-java版,解压后导入到eclipse中 工程->右键->properties->java build path->libraries->add external jars eclipse新建工程seleniumtest 导......

木子木
2014/03/18
0
1
Android学习笔记之(一)开发环境搭建

至于说Android是什么之类的俺就不啰嗦了,因为它离我们太近了。直接上手配置环境。对于程序开发员来说,面对一个新的东西,上手莫过于几个东西了:开发包(提供了哪些API)、编程语言(用什么...

carlos
2014/10/17
0
2
selenium webdriver 环境搭建–java

selenium java环境的安装可以分为三个部分:jdk、eclipse和selenium. Jdk jdk(java development kit)是sun公司针对java开发人员的产品,是整个java的核心,包含了java的运行环境、工具和基础...

测试-雨
2015/01/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

arts-week5

Algorithm 824. Goat Latin - LeetCode 152. Maximum Product Subarray - LeetCode 110. Balanced Binary Tree - LeetCode 67. Two Sum II - Input array is sorted - LeetCode 665. Non-dec......

yysue
22分钟前
0
0
iOS开发之AddressBook框架详解

iOS开发之AddressBook框架详解 一、写在前面 首先,AddressBook框架是一个已经过时的框架,iOS9之后官方提供了Contacts框架来进行用户通讯录相关操作。尽管如此,AddressBook框架依然是一个非...

珲少
52分钟前
1
0
两年摸爬滚打 Spring Boot,总结了这 16 条最佳实践

Spring Boot是最流行的用于开发微服务的Java框架。在本文中,我将与你分享自2016年以来我在专业开发中使用Spring Boot所采用的最佳实践。这些内容是基于我的个人经验和一些熟知的Spring Boot...

Java填坑之路
今天
4
0
《Spring5学习》04 - 面向切面编程

一、Spring面向切面编程的基本概念 面向切面编程(即AOP):把项目中需要再多处使用的功能比如日志、安全和事务等集中到一个类中处理,而不用在每个需要用到该功能的地方显式调用。 横切关注...

老韭菜
今天
2
0
day61-20180819-流利阅读笔记

跑道没了,它们还在跑:澳门赛狗业的遗孤 Daniel 2018-08-19 1.今日导读 相信你早就知道香港有个赛马会,可是你听说过香港的邻居澳门原本有个赛狗会吗?其实,对于澳门人来说,赛狗这项活动历...

aibinxiao
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部