《手把手教你》系列基础篇之(一)-java+ selenium自动化测试-环境搭建(上)(详细教程)
1.简介
jmeter系列的文章结束,本来想趁热打铁顺别将Jmeter和接口测试介绍一下,但是感觉Jmeter时间太长了怕大家吃腻了,还有一个原因就是许多小伙伴们或者童鞋们私信问宏哥什么时候可以有java版的selenium,因为不会Python,或者现在大多数企业和公司还是把java奉在神坛上,所以宏哥打算就换个口味,介绍一下java+ selenium自动化测试。大致和前边的python+selenium自动化测试差不多。基于java和selenium做自动化测试,俗话说:工欲善其事必先利其器;没有金刚钻就不揽那瓷器活,磨刀不误砍柴工,因此你必须会搭建基本的开发环境,掌握python基本的语法和一个IDE来进行开发,这里通过详细的讲解,介绍怎么搭建java和selenium开发环境,并提供一个基本入门的代码,后续逐步提供系列实践文章。
2.环境准备
2.1所需要安装的组件或者工具
1、宏哥的环境是Windows 10版本 64位系统(32位的同学自己想办法哦)

2、1.8.0_181 (64位)

3、Eclipse

4、Selenium for Java

5、Selenium 在不同浏览器上的driver插件,根据你的浏览器版本自行下载好。
2.2JDK安装与配置
1、下载jdk包,小编的是64位1.8版本,其它高级版本应该也是可以的。根据自己的系统选择对应版本
2、一路傻瓜式安装,注意安装路径不要有空格,不要有中文。jdk和jre不要放在一个文件夹下
3、设置三个环境变量,我的电脑>选择“属性”->“高级”->“环境变量”->“系统变量”->“新建”
(1)JAVA_HOME----D:\software\Java\jdk1.8.0_181” (根据自己安装路径填写)

(2)CLASSPATH--- .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;
(3)PATH-----;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
在path路径下加上面那两个,这里就不多说了
4、打开cmd验证是否安装成功,输入java -version,然后输入javac
能显示版本号和下面的帮助信息说明安装成功


2.3Eclipse的安装与设置
关于Eclipse的下载和设置,请参考宏哥的一篇文章:传送门。
2.4下载Selenium相关包和工具
Selenium下载的官网是http://www.seleniumhq.org/download/,点击下图中的3.4.0链接触发下载selenium-server-standalone-3.4.0.jar

3.5下载不同浏览器driver插件
浏览器对应的独立的官方驱动文件。如下表:
|
Browser |
Component |
|
Chrome |
|
|
Internet Explorer |
|
|
Edge |
|
|
Firefox 47+ |
|
|
PhantomJS |
|
|
Opera |
|
|
Safari |
以上准备工作都做好后,到此,准备工作就做好了,下边宏哥就开始搭建环境。
3.搭建环境
java+ selenium自动化测试的搭建环境有两种方法下边听宏哥给你慢慢道来。
3.1方法一(宏哥不推荐)
添加多个jar包。这个方法比较繁琐,宏哥不推荐这种方法。
1、官方下载地址: http://www.seleniumhq.org/download/ 如果官方地址无法访问自己可以网上搜一下应该可以 轻松的下载到,如果实在找不到可以微信搜索“北京宏哥”公众号,关注宏哥以后进入公众号发送“jar包”来获取下载方法。进入官网找到页面和java语言,点击后边的download,如下图所示:

2、解压上边下载的压缩包,解压后有六个文件,如下图所示:

3、 新建一 个Java Project把上面解压出来的文件, 都复制到新建的Project 目录下, 目录结构,如下图所示:

4、 添加build path, 项目目录右键 Build Path -> Config build path -> java build Path -> Libraries -> Add JARs
5、 把libs 文件夹下的jar包,全部添加上,再添加 client-combined-3.141.59.jar和client-combined-3.141.59-sources.jar。如下图所示:

6、添加成功后,目录结构,如下图所示:

3.2方法二(宏哥推荐)
添加一个jar包即可。这个方法比较简单是首选也是宏哥推荐的方法。
1、下载selenium-server-standalone.jar 。下载地址也在:官方下载地址: http://www.seleniumhq.org/download/ 如果官方地址无法访问自己可以网上搜一下应该可以 轻松的下载到,如果实在找不到可以微信搜索“北京宏哥”公众号,关注宏哥以后进入公众号发送“jar包”来获取下载方法。

2、将selenium-server-standalone.jar 按照方法一添加jar的方法直接添加到java项目中就可以了,如下图所示:

4.小结
4.1报错分析
细心认真的小伙伴或者童鞋们会发现,使用宏哥的方法一会报错如下:
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/collect/ImmutableMap
selenium + java + Windows + Eclipse 报错分析:
网上绝大多数的教程,按照方法一配置selenium 自动化测试环境,都是只让导入client-combined-3.141.59.jar和client-combined-3.141.59-sources.jar,没有说让导入lib 目录下的jar 包,宏哥也没仔细看,明明jar包都导入了啊,后实在看不出来原因,去看这个jar 包的时候,发现libs文件夹中这里面还有几个jar 包。好吧,导入就OK了。
好了,今天有关java+selenium自动化测试的环境搭建就分享到这里吧。灰常感谢你耐心的阅读!!!
《手把手教你》系列基础篇之(一)-java+ selenium自动化测试-环境搭建(上)(详细教程)的更多相关文章
- 《手把手教你》系列基础篇之(二)-java+ selenium自动化测试-环境搭建(下)基于Maven(详细教程)
1.简介 Apache Maven是一个软件项目管理和综合工具.基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件.由于现在企业和公司中Java的大部分项目都是基 ...
- 《手把手教你》系列技巧篇(五十八)-java+ selenium自动化测试-分页测试(详细教程)
1.简介 前几天,有人私信里留言问宏哥,分页怎么自动化测试了,完了给他说了说思路,不知道最后搞定没有,索性宏哥就写一篇文章来讲解和介绍如何处理分页. 2.测试场景 对分页来说,我们最感兴趣的和测试的无 ...
- 《手把手教你》系列技巧篇(六十四)-java+ selenium自动化测试 - cookie -中篇(详细教程)
1.简介 今天按照原计划宏哥要用实例来给小伙伴或童鞋们来演示一下,如何利用cookie实现跳过验证码进行登录.这个场景是自动登陆.有很多系统的登陆信息都是保存在cookie里的,因此只要往cookie ...
- 《手把手教你》系列技巧篇(六十五)-java+ selenium自动化测试 - cookie -下篇(详细教程)
1.简介 今天这一篇,宏哥主要讲解:利用WebDriver 提供可以读取.添加和删除cookie 信息的相关操作方法.验证浏览器中是否存在某个cookie.原因是:因为基于真实的cookie 的测试是 ...
- 🔥《手把手教你》系列基础篇之4-python+ selenium自动化测试-xpath使用(详细教程)
1. 简介 俗话说:磨刀不误砍柴工,因此在我们要开始写自动化脚本之前,我们先来学习和了解几个基本概念,在完全掌握了这几个概念之后,有助于我们快速上手,如何去编写自动化测试脚本. 元素,在这个教程系列, ...
- UI自动化测试篇 :Selenium2(Webdriver)&TestNG自动化测试环境搭建
最开始学习UI自动化,用的工具是QTP10,用起来确实比较容易上手,自学了没多久,大家都说QTP过时了.这么好用的的工具怎么一下子就过时了呢?因为它的“笨重”,因为它作为商业软件带来的巨大使用成本,还 ...
- 《手把手教你》系列基础篇(七十五)-java+ selenium自动化测试-框架设计基础-TestNG实现DDT - 中篇(详解教程)
1.简介 上一篇中介绍了DataProvider如何传递参数,以及和一些其他方法结合传递参数,今天宏哥接着把剩下的一些常用的也做一下简单的介绍和分享. 2.项目实战1 @DataProvider + ...
- 《手把手教你》系列基础篇(七十六)-java+ selenium自动化测试-框架设计基础-TestNG实现DDT - 下篇(详解教程)
1.简介 今天这一篇宏哥主要是结合实际工作中将遇到的测试场景和前边两篇学习的知识结合起来给大家讲解和分享一下,希望以后大家在以后遇到其他的测试场景也可以将自己的所学的知识应用到测试场景中. 2.测试场 ...
- 《手把手教你》系列基础篇(七十七)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试- 上篇(详解教程)
1.简介 今天主要是讲解和分享:TestNG中一个类中有多个测试方法的时候,多个测试方法的执行顺序或者依赖关系的问题.如果不用dependsOnMethods,testNG会自动根据@Test方法名称 ...
随机推荐
- java使用户EasyExcel导入导出excel
使用alibab的EasyExce完成导入导出excel 一.准备工作 1.导包 <!-- poi 相关--> <dependency> <groupId>org. ...
- C++ primer plus读书笔记——第15章 友元、异常和其他
第15章 友元.异常和其他 1. 友元类的所有方法都可以访问原有类的私有成员和保护成员.另外,也可以做更严格的限制,只将特定的成员函数指定为另一个类的友元.哪些函数.成员函数.或类为友元是由类定义的, ...
- 【技术博客】忘记密码界面的Vue前端实现
一.基本流程 [登录界面] --> [点击忘记密码] --> [输入个人邮箱和验证码] --> [系统发送邮箱验证] --> [用户在限定时间内登录邮箱,查收验证码] --&g ...
- 使用PuTTY连接Azure VM
使用PuTTY连接Azure VMhtml { -webkit-print-color-adjust: exact } * { box-sizing: border-box; -webkit-prin ...
- 屌炸天的3D引擎OpenCASCADE的用法及案例(转载之处:)
What CASCADE? Open CASCADE(简称OCC)平台是由法国Matra Datavision公司开发的CAD/CAE/CAM软件平台,可以说是世界上最重要的几何造型基础软件平台之一. ...
- docker中运行envoy 报错 cannot bind '0.0.0.0:80': Permission denied
docker-compose文件 version: '3' services: envoy: image: envoyproxy/envoy-alpine:v1.15-latest volumes: ...
- 安装 Centos 7.x
学习 python 至今,一直是在 linux 上操作,感觉还是 linux 对 python 的支持更加友好,默认安装了 python 的版本 2 和 3 .为了打造更好的 python 开发环境, ...
- 攻防世界(十三)unserialize3
攻防世界系列 :unserialize3 1.打开题目,反序列化 2.代码审计 类xctf被调用时_weakeup()函数会被自动执行,但当序列化字符串中属性值个数大于属性个数,就会导致反序列化异常, ...
- 手机APP远程空气质量监测应用
http://club.gizwits.com/thread-3876-1-1.html
- HEX与ASCII之间装换
static const char bcd_ascll[20]={0x30,0x31,0x32,0x33,0x34, 0x35,0x36,0x37,0x38,0x39, ...