《手把手教你》系列基础篇之(二)-java+ selenium自动化测试-环境搭建(下)基于Maven(详细教程)

简介: 【2月更文挑战第11天】《手把手教你》系列基础篇之(二)-java+ selenium自动化测试-环境搭建(下)基于Maven(详细教程)是一个软件项目管理和综合工具。基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件。由于现在企业和公司中Java的大部分项目都是基于Maven, 因此宏哥为了照顾到企业或者公司用的java项目中用到maven的童鞋或者小伙伴们,这里也简单的介绍和分享一下。在Maven项目中使用Selenium. 非常简单。

 1.简介

  Apache Maven是一个软件项目管理和综合工具。基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件。由于现在企业和公司中Java的大部分项目都是基于Maven,  因此宏哥为了照顾到企业或者公司用的java项目中用到maven的童鞋或者小伙伴们,这里也简单的介绍和分享一下。在Maven项目中使用Selenium. 非常简单。

2.在eclipse中搭建maven

2.1安装maven

1.下载maven的bin,在apache官方网站可以下载。在Files下面下载对应的maven版本(官网的是最新版本),如下图所示:

image.gif 编辑

2.查看maven对应的JDK版本,如下图所示:

image.gif 编辑

3.进入maven对应的JDK版本,网址:http://maven.apache.org/docs/history.html。如下图所示:

image.gif 编辑

4.下载的apache-maven-3.8.1.zip不需要安装,只需解压即可,将apache-maven-3.8.1解压到E盘根目录下,放在你本地电脑磁盘空间比较充足的磁盘,宏哥放在E盘,并解压,如下图所示:

image.gif 编辑

2.2配置maven环境变量

1.设置三个环境变量,我的电脑>选择“属性”->“高级系统设置”->“环境变量”->“系统变量”->“新建”

MAVEN_HOME : C:\apache-maven-3.3.9

MAVEN : %MAVEN_HOME%\bin

MAVEN_OPTS : -Xms256m -Xmx512m

如下图所示:

image.gif 编辑

2.在path最前面加上: %MAVEN%; 。要特别注意这里的分号,其实环境变量配置和JDK的差不多。

2.3验证maven是否安装成功

1.Cmd->mvn -version,成功则出现以下界面,如下图所示:

image.gif 编辑

3.maven配置仓库

maven的仓库可以分为三种,如下图所示:

image.gif 编辑

3.1配置本地仓库

1.建立手动仓库maven_repository,宏哥建立在F盘,如下图所示:

image.gif 编辑

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>  

image.gif 编辑

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>

image.gif 编辑

注: 千万注意, 只可配置一个(另一个要注释!) 不然两个可能发生冲突 ,导致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

如下图所示:

image.gif 编辑

2.点击“OK”后,等相关应用下载好以后,选中点击“next”,如下图所示:

image.gif 编辑

3.点击next直到安装完成。设置Maven插件所关联的Maven程序:选择Eclipse菜单栏的Window-->Preferences-->Maven--Installations菜单项, 点击add,如下图所示:

image.gif 编辑

4.点击add,选择Maven的具体安装目录,如下图所示:

image.gif 编辑

5.选择好目录,添加好maven的安装目录,如下图所示:

image.gif 编辑

6.选中maven的安装目录,点击“OK”,如下图所示:

image.gif 编辑

5.设置自定义的本地仓库

1.选择Eclipse菜单栏的Window-->Preferences-->Maven--UserSettings菜单项, 修改为我们自定义仓库位置下的settings.xml文件, 修改好后点击OK按钮。如下图所示:

image.gif 编辑

6.查看是否maven设置成功

查看是否maven设置成功:file - new - other - maven ,出现maven project表示配置成功,如下图所示:

image.gif 编辑

7.eclipse中新建maven项目

1.依次点击eclipse的file - new - other ,如下图所示:

image.gif 编辑

2.在搜索框输入关键字“maven”,然后选中“maven project”,如下图所示:

image.gif 编辑

3.选择创建后的工作区——项目存放的地址。如下图所示:

image.gif 编辑

4.选择Maven项目的模板也叫项目类型(quikstart或者webapp等等),,如果选择create a simple project,则跳过了下面的步骤,也就不存在这个问题了,但是如果需要选择项目类型,则不能勾选create a simple project)如下图所示:

image.gif 编辑

5.宏哥为了省事,直接选中create a simple project,点击next,输入Group Id和Artifact Id。如下图所示:

image.gif 编辑

6.点击“Finish”,查看新建的maven项目,如下图所示:

image.gif 编辑

到此,创建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/  如下图所示:

image.gif 编辑

2.搜索selenium, 输入selenium,点击“Search”,如下图所示:

image.gif 编辑

3.点击selenium java,查看自己需要的selenium版本,selenium我们都会选择最新的(宏哥这里用3.141.59举例一下),方便兼容最新的浏览器以及网络攻略……。如下图所示:

image.gif 编辑

4.下载selenium-3.141.59版本,点3.141.59进入页面后,只需要单击下边的编码就自动全选复制了。如下图所示:

image.gif 编辑

<!-- 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的路径在本地仓库。如下图所示:

image.gif 编辑

需要其他的jar包只需配置到pom.xml中即可!

8.2修改jdk版本

1.右键JRE System Library[JavaSe-1.5] ->properties。如下图所示:

image.gif 编辑

2.选择javaSE-1.8,如下图所示:

image.gif 编辑

好了,至此,基于maven的java+ selenium自动化测试环境搭建就搭建成功了,后续会写一篇实战的文章来看看环境是否搭建成功了。

9.小结

1.必须先下载并安装JDK,配置JDK的环境变量JAVA_HOME,否则maven将无法使用。

2.eclipse安装maven插件后必须重新定位maven到本地maven目录。

3.宏哥带你看一下,是否将相关selenium的依赖下载到本地仓库(宏哥已经创建项目并运行了),如下图所示:

image.gif 编辑

这一篇绝大多数主要就是关于maven的,后边关于selenium的很简单,如果熟悉maven的小伙伴或者童鞋们应该就能快速的将环境搭建好了。

好了,今天又要和大家说再见了,感谢你耐心的听宏哥絮叨!!!

  每天学习一点,今后必成大神-

往期推荐(由于跳转参数丢失了,所有建议选中要访问的右键,在新标签页中打开链接即可访问):

Appium自动化系列,耗时80天打造的从搭建环境到实际应用精品教程测试

Python接口自动化测试教程,熬夜87天整理出这一份上万字的超全学习指南

Python+Selenium自动化系列,通宵700天从无到有搭建一个自动化测试框架

Java+Selenium自动化系列,仿照Python趁热打铁呕心沥血317天搭建价值好几K的自动化测试框架

Jmeter工具从基础->进阶->高级,费时2年多整理出这一份全网超详细的入门到精通教程

Fiddler工具从基础->进阶->高级,费时100多天吐血整理出这一份全网超详细的入门到精通教程

Pycharm工具基础使用教程

相关文章
|
21小时前
|
Web App开发 Java 测试技术
《手把手教你》系列技巧篇(五十六)-java+ selenium自动化测试-下载文件-上篇(详细教程)
【5月更文挑战第20天】本文介绍了自动化测试中如何实现无弹窗下载文件,主要针对Firefox浏览器。作者指出,通常的下载操作包括点击下载按钮,但这里讨论的是避免下载弹窗直接保存文件的方法。文章详细讲解了通过设置Firefox参数(如`browser.download.dir`、`browser.helperApps.neverAsk.saveToDisk`等)来实现这一功能,并给出了Java Selenium的示例代码,展示了如何创建FirefoxProfile并进行相关设置,以及如何启动浏览器和执行下载操作。
8 0
《手把手教你》系列技巧篇(五十六)-java+ selenium自动化测试-下载文件-上篇(详细教程)
|
1天前
|
Java 测试技术 API
《手把手教你》系列技巧篇(五十五)-java+ selenium自动化测试-上传文件-下篇(详细教程)
【5月更文挑战第19天】本文介绍了在Web自动化中处理文件上传的挑战,由于Selenium WebDriver不直接支持文件上传,因此需要借助外部工具。文章提到了两种主要的上传方式:基于input框的上传和非input控件的上传。对于非input控件的上传,推荐使用AutoIt,这是一个支持Windows GUI自动化的工具。
24 9
|
1天前
|
敏捷开发 监控 IDE
深入理解自动化测试工具Selenium的工作原理与实践应用
【5月更文挑战第26天】 随着敏捷开发和持续集成理念的普及,自动化测试在软件开发生命周期中扮演了至关重要的角色。Selenium作为最流行的自动化测试工具之一,以其开源、跨平台和支持多种编程语言的特性被广泛使用。本文将详细解析Selenium的核心组件,探讨其工作原理,并通过案例分析展示如何高效地实施Selenium进行Web应用的自动化测试。我们将从测试准备到结果分析的全过程,提供一系列实用的策略和最佳实践,帮助读者构建和维护一个健壮的自动化测试环境。
|
2天前
|
Web App开发 IDE 测试技术
深入理解自动化测试框架:以Selenium为例
【5月更文挑战第25天】 在软件开发的快速迭代中,自动化测试成为确保产品质量和缩短发布周期的重要环节。本文将深入剖析自动化测试框架Selenium,探讨其架构、运作机制以及在实际项目中的关键应用。通过对Selenium的系统梳理,旨在为软件测试工程师提供实战指导,帮助他们构建更高效、稳定的自动化测试环境。
15 8
|
2天前
|
Web App开发 机器人 Java
《手把手教你》系列技巧篇(五十四)-java+ selenium自动化测试-上传文件-中篇(详细教程)
【5月更文挑战第18天】本文介绍了在Web自动化测试中处理文件上传的几种方法,特别是针对非`input`控件上传的场景。由于Selenium WebDriver无法操作系统级窗口,因此不能直接支持文件上传。作者提到了四种解决策略:AutoIT、Python的pywin32库、SendKeys库和keybd_event。文章以Java为例,详细阐述了使用Robot类模拟键盘操作来实现非`input`控件的文件上传,包括代码示例和实际项目中的应用。最后,作者分享了一个使用Python和Robot类处理百度图片搜索上传图片的实战案例,并指出有时Chrome浏览器可能需要特定条件才能成功模拟上传。
10 2
|
12天前
|
网络协议 安全 测试技术
性能工具之emqtt-bench BenchMark 测试示例
【4月更文挑战第19天】在前面两篇文章中介绍了emqtt-bench工具和MQTT的入门压测,本文示例 emqtt_bench 对 MQTT Broker 做 Beachmark 测试,让大家对 MQTT消息中间 BenchMark 测试有个整体了解,方便平常在压测工作查阅。
160 7
性能工具之emqtt-bench BenchMark 测试示例
|
12天前
|
机器学习/深度学习 数据采集 人工智能
【专栏】AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计
【4月更文挑战第27天】本文探讨了AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计。AI辅助工具利用机器学习、自然语言处理和图像识别提高效率,但面临数据质量、模型解释性、维护更新及安全性挑战。未来,AI将更注重用户体验,提升透明度,并在保护隐私的同时,通过联邦学习等技术共享知识。AI在软件测试领域的前景广阔,但需解决现有挑战。
|
2天前
|
测试技术 持续交付 开发者
深入探索软件测试:策略、工具与最佳实践
【5月更文挑战第25天】 在软件开发的广阔天地中,软件测试是确保产品质量和用户满意度的关键步骤。本文将深入探讨软件测试的核心策略,评估各种测试工具的优势与局限,并分享行业最佳实践。我们的目标是为读者提供一个结构化的视角,以理解如何通过有效的测试流程提升软件性能和稳定性。
|
4天前
|
敏捷开发 IDE 测试技术
深入探索自动化测试工具Selenium的高效应用
【5月更文挑战第23天】 在快速演进的数字时代,软件开发周期不断缩短,而质量保证的需求却日益增加。自动化测试作为确保软件质量的关键手段之一,其重要性不言而喻。Selenium作为一种广泛使用的自动化测试工具,因其跨平台、多语言支持和开源等特性,在业界得到了广泛应用。本文将深入分析Selenium的核心功能,探讨其在真实项目中的应用策略,并通过案例分析展示如何通过Selenium提高测试效率和准确性。
|
12天前
|
测试技术
如何管理测试用例?测试用例有什么管理工具?YesDev
该文档介绍了测试用例和测试用例库的管理。测试用例是描述软件测试方案的详细步骤,包括测试目标、环境、输入、步骤和预期结果。测试用例库用于组织和管理这些用例,强调简洁性、完整性和可维护性。管理者可以创建、删除、重命名用例库,搜索和管理用例,以及通过层级目录结构来组织用例。此外,还支持通过Excel导入和导出测试用例,以及使用脑图查看用例关系。后台管理允许配置全局别名,如用例状态、优先级和执行结果。