《手把手教你》系列基础篇之(二)-java+ selenium自动化测试-环境搭建(下)基于Maven(详细教程)
1.简介
Apache Maven是一个软件项目管理和综合工具。基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件。由于现在企业和公司中Java的大部分项目都是基于Maven, 因此宏哥为了照顾到企业或者公司用的java项目中用到maven的童鞋或者小伙伴们,这里也简单的介绍和分享一下。在Maven项目中使用Selenium. 非常简单。
2.在eclipse中搭建maven
2.1安装maven
1.下载maven的bin,在apache官方网站可以下载。在Files下面下载对应的maven版本(官网的是最新版本),如下图所示:
2.查看maven对应的JDK版本,如下图所示:
3.进入maven对应的JDK版本,网址:http://maven.apache.org/docs/history.html。如下图所示:
4.下载的apache-maven-3.8.1.zip不需要安装,只需解压即可,将apache-maven-3.8.1解压到E盘根目录下,放在你本地电脑磁盘空间比较充足的磁盘,宏哥放在E盘,并解压,如下图所示:
2.2配置maven环境变量
1.设置三个环境变量,我的电脑>选择“属性”->“高级系统设置”->“环境变量”->“系统变量”->“新建”
MAVEN_HOME : C:\apache-maven-3.3.9
MAVEN : %MAVEN_HOME%\bin
MAVEN_OPTS : -Xms256m -Xmx512m
如下图所示:
2.在path最前面加上: %MAVEN%; 。要特别注意这里的分号,其实环境变量配置和JDK的差不多。
2.3验证maven是否安装成功
1.Cmd->mvn -version,成功则出现以下界面,如下图所示:
3.maven配置仓库
maven的仓库可以分为三种,如下图所示:
3.1配置本地仓库
1.建立手动仓库maven_repository,宏哥建立在F盘,如下图所示:
2.给Maven添加本地仓库:
作用:构建Maven项目时,首先会从本地库查找资源,如果本地库没有,Maven就会从远程库下载资源到本地库,下次使用的时候就不用再去远程库下载了。
localRepository节点用于配置本地仓库,本地仓库其实起到了一个缓存的作用,它的默认地址是 C:\Users\用户名.m2。
当我们从maven中获取jar包的时候,maven首先会在本地仓库中查找,如果本地仓库有则返回;如果没有则从远程仓库中获取包,并在本地库中保存。此外,我们在maven项目中运行mvn install,项目将会自动打包并安装到本地仓库中。
在Maven的安装路径中的conf文件夹中配置settings.xml:
在文中找到localRepository注释行,localRepository节点默认是被注释掉的,需要把它移到注释之外,然后将localRepository节点的值改为我们在上边创建的仓库的目录并添加如下:
<localRepository>F:\maven_repository</localRepository>
3.2配置私服
给Maven配置mirror:mirror就是镜像, 主要提供一个方便地切换远程仓库地址的途径。在Maven的安装路径中的conf文件夹中配置settings.xml:在文中找到<mirrors>行并在其中添加如下:
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
注: 千万注意, 只可配置一个(另一个要注释!) 不然两个可能发生冲突 ,导致jar包下不下来 !!!
mirror相当于拦截器,将对远程仓库的请求重定向到mirror指定的地址,如上面的代码将对central的请求重定向到http://maven.aliyun.com/nexus/content/groups/public/。
4.在eclipse中安装maven插件
1.打开Eclipse,进入help -- >Install New Software...点Add按钮输入:
Name:m2e
location:http://download.eclipse.org/technology/m2e/releases
如下图所示:
2.点击“OK”后,等相关应用下载好以后,选中点击“next”,如下图所示:
3.点击next直到安装完成。设置Maven插件所关联的Maven程序:选择Eclipse菜单栏的Window-->Preferences-->Maven--Installations菜单项, 点击add,如下图所示:
4.点击add,选择Maven的具体安装目录,如下图所示:
5.选择好目录,添加好maven的安装目录,如下图所示:
6.选中maven的安装目录,点击“OK”,如下图所示:
5.设置自定义的本地仓库
1.选择Eclipse菜单栏的Window-->Preferences-->Maven--UserSettings菜单项, 修改为我们自定义仓库位置下的settings.xml文件, 修改好后点击OK按钮。如下图所示:
6.查看是否maven设置成功
查看是否maven设置成功:file - new - other - maven ,出现maven project表示配置成功,如下图所示:
7.eclipse中新建maven项目
1.依次点击eclipse的file - new - other ,如下图所示:
2.在搜索框输入关键字“maven”,然后选中“maven project”,如下图所示:
3.选择创建后的工作区——项目存放的地址。如下图所示:
4.选择Maven项目的模板也叫项目类型(quikstart或者webapp等等),,如果选择create a simple project,则跳过了下面的步骤,也就不存在这个问题了,但是如果需要选择项目类型,则不能勾选create a simple project)如下图所示:
5.宏哥为了省事,直接选中create a simple project,点击next,输入Group Id和Artifact Id。如下图所示:
6.点击“Finish”,查看新建的maven项目,如下图所示:
到此,创建maven项目成功!!!
8.maven项目加载selenium依赖
8.1加载selenium依赖
maven项目加载selenium依赖就不想上一篇java项目加载selenium那么费事需要把jar包复制到项目下,maven项目只需要将相关的jar包依赖配置到pom.xml文件中就会自动加载了。因此要给上面创建的maven项目中加载selenium依赖,只需在pom.xml中引入selenium的jar包即可;具体步骤如下:
1.查看maven仓库:http://mvnrepository.com/ 如下图所示:
2.搜索selenium, 输入selenium,点击“Search”,如下图所示:
3.点击selenium java,查看自己需要的selenium版本,selenium我们都会选择最新的(宏哥这里用3.141.59举例一下),方便兼容最新的浏览器以及网络攻略……。如下图所示:
4.下载selenium-3.141.59版本,点3.141.59进入页面后,只需要单击下边的编码就自动全选复制了。如下图所示:
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
5.copy到maven项目中的pom.xml中, selenium的jar包maven会自动加载,从右边路径可以看到jar的路径在本地仓库。如下图所示:
需要其他的jar包只需配置到pom.xml中即可!
8.2修改jdk版本
1.右键JRE System Library[JavaSe-1.5] ->properties。如下图所示:
2.选择javaSE-1.8,如下图所示:
好了,至此,基于maven的java+ selenium自动化测试环境搭建就搭建成功了,后续会写一篇实战的文章来看看环境是否搭建成功了。
9.小结
1.必须先下载并安装JDK,配置JDK的环境变量JAVA_HOME,否则maven将无法使用。
2.eclipse安装maven插件后必须重新定位maven到本地maven目录。
3.宏哥带你看一下,是否将相关selenium的依赖下载到本地仓库(宏哥已经创建项目并运行了),如下图所示:
这一篇绝大多数主要就是关于maven的,后边关于selenium的很简单,如果熟悉maven的小伙伴或者童鞋们应该就能快速的将环境搭建好了。
好了,今天又要和大家说再见了,感谢你耐心的听宏哥絮叨!!!
《手把手教你》系列基础篇之(二)-java+ selenium自动化测试-环境搭建(下)基于Maven(详细教程)的更多相关文章
- 《手把手教你》系列技巧篇(五十四)-java+ selenium自动化测试-上传文件-中篇(详细教程)
1.简介 在实际工作中,我们进行web自动化的时候,文件上传是很常见的操作,例如上传用户头像,上传身份证信息等.所以宏哥打算按上传文件的分类对其进行一下讲解和分享. 2.为什么selenium没有提供 ...
- 《手把手教你》系列技巧篇(五十五)-java+ selenium自动化测试-上传文件-下篇(详细教程)
1.简介 在实际工作中,我们进行web自动化的时候,文件上传是很常见的操作,例如上传用户头像,上传身份证信息等.所以宏哥打算按上传文件的分类对其进行一下讲解和分享. 2.为什么selenium没有提供 ...
- 《手把手教你》系列技巧篇(六十七)-java+ selenium自动化测试 - 读写excel文件 - 中篇(详细教程)
1.简介 前面介绍了POI可以操作excel,也简单的提到另一个操作excle的工具,本篇介绍一个其他的可以操作excel的工具,但是这个工具有一个前提,excel文件版本只能是97-2003版本,如 ...
- 《手把手教你》系列技巧篇(六十八)-java+ selenium自动化测试 - 读写excel文件 - 下篇(详细教程)
1.简介 今天继续操作Excle,小伙伴或者童鞋们是不是觉得宏哥会介绍第三种工具操作Excle,今天不介绍了,有两种就够用了,其实一种就够用了,今天主要是来介绍如何使用不同的数据类型读取Excel文件 ...
- 《手把手教你》系列基础篇之(一)-java+ selenium自动化测试-环境搭建(上)(详细教程)
1.简介 jmeter系列的文章结束,本来想趁热打铁顺别将Jmeter和接口测试介绍一下,但是感觉Jmeter时间太长了怕大家吃腻了,还有一个原因就是许多小伙伴们或者童鞋们私信问宏哥什么时候可以有ja ...
- 《手把手教你》系列技巧篇(五十三)-java+ selenium自动化测试-上传文件-上篇(详细教程)
1.简介 在实际工作中,我们进行web自动化的时候,文件上传是很常见的操作,例如上传用户头像,上传身份证信息等.所以宏哥打算按上传文件的分类对其进行一下讲解和分享. 2.为什么selenium没有提供 ...
- 《手把手教你》系列技巧篇(六十六)-java+ selenium自动化测试 - 读写excel文件 - 上篇(详细教程)
1.简介 在自动化测试,有些我们的测试数据是放到excel文件中,尤其是在做数据驱动测试的时候,所以需要懂得如何操作获取excel内的内容.由于java不像python那样有直接操作Excle文件的类 ...
- 《手把手教你》系列技巧篇(二十一)-java+ selenium自动化测试-浏览器窗口的句柄(详细教程)
1.简介 今天本来就要分享和讲解三大延时等待的,但是在写作过程中发了问题,会用到这一个知识点,于是就提前介绍一下,以便后边用到了可以更好的理解和掌握.本文就是要介绍如何获得浏览器窗体的句柄或者叫编号, ...
- 《手把手教你》系列技巧篇(五十)-java+ selenium自动化测试-字符串操作-上篇(详解教程)
1.简介 自动化测试中进行断言的时候,我们可能经常遇到的场景.从一个字符串中找出一组数字或者其中的某些关键字,而不是将这一串字符串作为结果进行断言.这个时候就需要我们对字符串进行操作,宏哥这里介绍两种 ...
随机推荐
- HDU - 2091 空心三角形 水题,但是有点坑...
空心三角形 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- 敏捷史话(十七):维基(Wiki)背后的灵感来源—— Ward Cunningham
在软件开发领域, Ward Cunningham 有许多独到的见解与成就. 1949年,Ward Cunningham 出生于印第安纳州的密歇根市,并在莱克县的一个小镇中长大.怀揣着对计算机浓厚的兴趣 ...
- Dart 2.13 版现已发布
作者 / Kevin Moore & Michael Thomsen Dart 2.13 版现已发布,其中新增了类型别名功能,这是目前用户呼声第二高的语言功能.Dart 2.13 还改进了 D ...
- 如何借助CRM销售管理系统提升业绩?
与传统企业销售模式不同,现代企业在网络背书下,销售活动与网络密切相关.销售数据需要网络保存,销售渠道需要网络挖掘.在线的销售软件让销售活动起到了事半功倍的效果.CRM销售管理系统是企业必不可少的在线软 ...
- [MySQL数据库之事务、读现象、数据库锁机制、多版本控制MVCC、事务隔离机制]
[MySQL数据库之事务.读现象.数据库锁机制.多版本控制MVCC.事务隔离机制] 事务 1.什么是事务: 事务(Transaction),顾名思义就是要做的或所做的事情,数据库事务指的则是作为单个逻 ...
- MSSQL·查询T-SQL语句执行时间的三种方法
阅文时长 | 0.23分钟 字数统计 | 420.8字符 主要内容 | 1.引言&背景 2.自定义时间变量求差法 3.MSSQL内置方法 4.MSSQL选项开启时间统计 5.声明与参考资料 『 ...
- java基础——初识面向对象
面向对象 面向过程&面向对象 面向过程思想 步骤请简单:第一步做什么,第一步做什么 面向过程适合处理一些较为简单的东西 面向对象思想 物以类聚,分类的思维模式,思考的问题首先会解决问题需要哪些 ...
- [算法] O(nlogn)和O(n^2)算法性能比较
选择排序.插入排序.归并排序 main.cpp 1 #include <iostream> 2 #include "Student.h" 3 #include &quo ...
- 10.6 ip:网络配置工具
ip命令是iproute软件包中的一个强大的网络配置工具,用于显示或管理Linux系统的路由.网络设备.策略路由和隧道. ip [option] [object] [command] ip [选项 ...
- Jaxb的优点与用法(bean转xml的插件,简化webservice接口的开发工作量)
一.jaxb是什么 JAXB是Java Architecture for XML Binding的缩写.可以将一个Java对象转变成为XML格式,反之亦然. 我们把对象与关系数据库之间的映射称 ...