Selenium 24:Use of Maven Build Automation Tool and Maven Project Setup for Selen

2023-12-11 01:59

本文主要是介绍Selenium 24:Use of Maven Build Automation Tool and Maven Project Setup for Selen,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://www.softwaretestinghelp.com/maven-project-setup-for-selenium-selenium-tutorial-24/

 

In our last Selenium tutorial we learned a build tool named as “Apache Ant”. We also broadly discussed its applicability and importance besides the practical approach.

In this Selenium Testing tutorial we will learn Maven – a build automation tool which is distributed under Apache Software Foundation. It is mainly used for java projects. It makes build consistent with other project.

Maven is also used to manage the dependencies. For example if you are using selenium version 2.35 and any later point of time you have to use some other version, then same can be managed easily by Maven. You will find more examples of this later in this chapter. It works very effectively when there is huge number of Jar files with different versions.

What is a build tool?

Build tool is used to setup everything which is required to run your java code independently. This can be applied to your entire java project. It generates source code, compiling code, packaging code to a jar etc. Maven provides a common platform to perform these activities which makes programmer’s life easier while handling huge project.

Maven provides pom.xml which is the core to any project. This is the configuration file where all required information’s are kept. Many of the IDEs (Integrated Development Environments) are available which makes it easy to use. IDEs are available for tools like Eclipse , NetBeans, IntelliJ etc.

Maven stores all project jars. Library jar are in place called repository which could be central, local or remote repository. Maven downloads the dependency jar from central repository. Most of the commonly used libraries are available in http://repo1.maven.org/maven2/.

Downloaded libraries are stored in local repository called m2. Maven uses the libraries available in m2 folder and if any new dependency added then maven downloads from central repository to local repository. If libraries are not available in central repository then maven looks for remote repository. User has to configure the remote repository in pom.xml to download from remote repository.

Below is the example of configuring a remote repository topom.xml file. Provide id and url of the repository where libraries are stored.

1 <repositories>
2      <repository>
3          <id>libraryId</id>
4          <url>http://comanyrepositryId</url>
5      </repository>
6 </repositories>

General Phrases used in Maven:

  • groupId: Generally groupId refers to domain id. For best practices company name is used as groupId. It identifies the project uniquely.
  • artifactId: It is basically the name of the Jar without version.
  • version: This tag is used to create a version of the project.
  • Local repository: Maven downloads all the required dependencies and stores in local repository called m2. More details regarding the same would be shared in the next topic.

Build Life Cycle:

Basic maven phases are used as below.

  • clean: deletes all artifacts and targets which are created already.
  • compile: used to compile the source code of the project.
  • test: test the compiled code and these tests do not require to be packaged or deployed.
  • package: package is used to convert your project into a jar or war etc.
  • install: install the package into local repository for use of other project.

Maven Setup:

Step 1: To setup Maven, download the maven’s latest version form Apache depending upon different OS.

Step 2: Unzip the folder and save it on the local disk.

Step 3: Create environment variable for MAVEN_HOME. Follow the below step:

Navigate to System Properties ->Advanced System Setting->Environment Variable ->System Variable ->New ->Add path of Maven folder

Maven Tutorial 1

Maven Tutorial 2

Step 4: Edit path variable and provide the bin folder path.

Maven Tutorial 3

Step 5: Now verify the maven installation using command prompt and don’t forget to setup JAVA_HOME

Use mvn –version to verify maven version and output comes like below.

Maven Tutorial 4

Install maven IDE in Eclipse:

Maven provides IDE to integrate with eclipse. I am using eclipse Juno here.

Navigate to Help->Eclipse Marketplace-> Search maven ->Maven Integration for Eclipse ->INSTALL

Maven Tutorial 5

After installation you have to restart eclipse.

Then right click on pom.xml and verify all the options are available like below.  

Maven Tutorial 6

Create Maven project:

Step 1: Navigate to File- new-others-Maven-Maven Project-Click Next

Maven Tutorial 7

Step 2: Check the Create a simple project and click Next

Maven Tutorial 8

Step 3: Provide Group Id and Artifact Id .You can change the version of Jar as per your wish. Here I am using default name. Click Finish.

Maven Tutorial 9

Step 4: After finish you will find the project structure is created like below. pom.xml is created which is used to download all dependencies.

Maven Tutorial 10
pom.xml file looks like below:

------------

1 <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2 <modelVersion>4.0.0</modelVersion>
3 <groupId>com.softwaretestinghelp.test</groupId>
4 <artifactId>com.softwaretestinghelp.selenium</artifactId>
5 <version>0.0.1-SNAPSHOT</version>
6 </project>

Step 5: Add dependencies for Selenium.

All selenium Maven artifacts are available in below central repository

http://repo1.maven.org/maven2/org/seleniumhq/selenium/

Add following dependencies in pom.xml for selenium

1 <dependency>
2        <groupId>org.seleniumhq.selenium</groupId>
3        <artifactId>selenium-java</artifactId>
4        <version>2.41.0</version>
5  </dependency>

Similarly, following is the dependency for Junit :

1 <dependency>
2       <groupId>junit</groupId>
3       <artifactId>junit</artifactId>
4       <version>4.4</version>
5  </dependency>

If you want to add other third party jar then add those dependencies in pom.xml

Step 6: Final pom.xml will be like below:

1 <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2 <modelVersion>4.0.0</modelVersion>
3 <groupId>com.softwaretestinghelp.test</groupId> <artifactId>com.softwaretestinghelp.selenium</artifactId>
4 <version>0.0.1-SNAPSHOT</version>
5 <dependencies>
6 <dependency>
7        <groupId>org.seleniumhq.selenium</groupId>
8        <artifactId>selenium-java</artifactId>
9        <version>2.41.0</version>
10    </dependency>
11    </dependencies>
12 </project>

Step 7: Maven will download all the dependency jars in to local repository called .m2.

M2 folder is basically inside Users->username->m2

All the jars will be placed in a folder called repository which is inside .m2 folder. Maven will create separate folders for different version and different group id.

Maven Tutorial 11

Step 8: If m2 folder does not populate in Maven dependencies, then you can populate those jars manually.

– Eclipse Windows ->Preference
– Navigate Java->Build Path->Classpath Variables

Maven Tutorial 12

– Click New Button ->Define M2_REPO and provide the path of m2 folder.

Step 9: Upon successful setup you will find Maven Dependencies folder like below which will have the required dependency jar for the project

Maven Tutorial 13

Build the Project:

Project can be built by both using IDE and command prompt.

Using IDE you have to right click on POM-Run As-Maven Build

Maven Tutorial 14

Enter goals like clean install etc. and click Run.
Same can be done using command prompt. Navigate to project folder where pom.xml lies.
And use below commands to clean, compile and install

For clean: mvn clean
For compile: mvn compile
For Install: mvn install

Below is the info which is displayed when you clean any project and shows “BUILD SUCCESS”.

1[INFO] Scanning for projects...
2[INFO]
3[INFO] ------------------------------------------------------------------------
4[INFO] Building com.softwaretestinghelp.0.0.1-SNAPSHOT
5[INFO] ------------------------------------------------------------------------
6[INFO]
7  [INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ com.softwaretestinghelp ---[INFO] Deleting C:\Users\rshwus\WORKSPACE\com.softwaretestinghelp\target
8[INFO] ------------------------------------------------------------------------
9[INFO] BUILD SUCCESS
10[INFO] ------------------------------------------------------------------------
11[INFO] Total time: 0.702s
12[INFO] Finished at: Sat May 24 18:58:22 IST 2014
13[INFO] Final Memory: 2M/15M
14[INFO] ------------------------------------------------------------------------

Conclusion:

Maven simplifies the code handling and process of building the project. Most of the projects follow maven structure.

Download all dependencies provided the dependencies are available in maven central repository. If any of the dependency is not available in maven central repository then you have to add repository path in pom.xml explicitly.

There are many other build tools available in like ant. But it is better to use maven while dealing with different versions and different dependencies. Maven even can manage the dependencies of dependencies. Other tools may not provide such flexibility like maven. Please post your queries anything related to maven here.

Next Tutorial #25: In the upcoming tutorial, we would discuss aboutcontinuous integration tool known as Hudson. We would study about its importance, role and benefits into Test Automation Framework. We would look at the Hudson straight from the beginning, from its installation to its working

这篇关于Selenium 24:Use of Maven Build Automation Tool and Maven Project Setup for Selen的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/479065

相关文章

PyInstaller打包selenium-wire过程中常见问题和解决指南

《PyInstaller打包selenium-wire过程中常见问题和解决指南》常用的打包工具PyInstaller能将Python项目打包成单个可执行文件,但也会因为兼容性问题和路径管理而出现各种运... 目录前言1. 背景2. 可能遇到的问题概述3. PyInstaller 打包步骤及参数配置4. 依赖

idea maven编译报错Java heap space的解决方法

《ideamaven编译报错Javaheapspace的解决方法》这篇文章主要为大家详细介绍了ideamaven编译报错Javaheapspace的相关解决方法,文中的示例代码讲解详细,感兴趣的... 目录1.增加 Maven 编译的堆内存2. 增加 IntelliJ IDEA 的堆内存3. 优化 Mave

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

Maven pom.xml文件中build,plugin标签的使用小结

《Mavenpom.xml文件中build,plugin标签的使用小结》本文主要介绍了Mavenpom.xml文件中build,plugin标签的使用小结,文中通过示例代码介绍的非常详细,对大家的学... 目录<build> 标签Plugins插件<build> 标签<build> 标签是 pom.XML

IDEA与JDK、Maven安装配置完整步骤解析

《IDEA与JDK、Maven安装配置完整步骤解析》:本文主要介绍如何安装和配置IDE(IntelliJIDEA),包括IDE的安装步骤、JDK的下载与配置、Maven的安装与配置,以及如何在I... 目录1. IDE安装步骤2.配置操作步骤3. JDK配置下载JDK配置JDK环境变量4. Maven配置下

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

使用maven依赖详解

《使用maven依赖详解》本文主要介绍了Maven的基础知识,包括Maven的简介、仓库类型、常用命令、场景举例、指令总结、依赖范围、settings.xml说明等,同时,还详细讲解了Maven依赖的... 目录1. maven基础1.1 简介1.2 仓库类型1.3 常用命令1.4 场景举例1.5 指令总结

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

关于Maven生命周期相关命令演示

《关于Maven生命周期相关命令演示》Maven的生命周期分为Clean、Default和Site三个主要阶段,每个阶段包含多个关键步骤,如清理、编译、测试、打包等,通过执行相应的Maven命令,可以... 目录1. Maven 生命周期概述1.1 Clean Lifecycle1.2 Default Li