写在最前面:最近在看茹老师的软件测试52讲,看到了第一个GUI例子,看着简单,但是对于小白,实践起来,难度还是有的,坑也是有的,以下记录过程。
1、什么是Maven
Apache Maven是一个项目管理和整合工具。基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven能够管理项目的构建、报告和文档。
Maven工程结构和内容被定义在一个xml文件中---pom.xml,是Project Object Model(POM)的简称,此文件是整个Maven系统的基础组件。
2、为什么要用Maven
当我们创建一个Maven项目后,就不需要在自己去导入各种jar包了,将要导入的jar包依赖信息配置在pom.xml中,Maven项目会根据具体的配置自动地在编译、测试和运行的时候,从本地仓库中导入相应的各种依赖。
这样做有两大好处,一个是项目的依赖被统一管理,不容易出现依赖冲突(比如说jar包引入的版本冲突);另一个就是项目的体积变小了,毕竟一个稍微大些的项目光是引入的jar包就站了相当多的体积,而Maven项目只需要一个pom.xml文件就搞定了。
约定优于配置
Maven使用约定而不是配置,开发者不需要关心每一个配置细节。当创建Maven工程时,Maven会创建默认的工程结构。开发者只需要合理的放置文件,并在pom.xml中添加相关的依赖。
Maven项目规定了源码文件、资源文件、测试文件输出文件等的默认配置,简单的说就是把这些文件规定放在对应的路径下方便管理,如下表所示,假设${basedir}表示工程根目录:
3、Maven的安装与设置环境变量
1)Maven下载路径:http://maven.apache.org/download.cgi
2)配置环境变量:
MAVEN_HOME = D:\maven\apache-maven-3.6.0
MAVEN_OPTS = -Xms128m -Xmx512m(可选)
3)在path变量末尾加入 “%MAVEN_HOME%\bin;”。
4)最后验证,是否安装成功:
打开cmd,输入:mvn -v
则表示安装成功。
5)配置Maven文件:
Maven会将下载的类库(jar包)放置在本地的一个目录下,如果想想重新定义这个目录的位置就需要修改Maven本地仓库的配置:
修改文件:D:\maven\apache-maven-3.6.0\conf\setting.xml
依据配置,Maven就会将下载的类库保存在D:\maven\repository中。
实验一下我们刚才做的事情有木有产生作用,控制台输入:mvn help:system
则会看到:
若没有任何问题,执行完该命令后,在D:\maven\repository下会多出很多文件,这些文件就是maven从中央仓库下载到本地仓库的文件,maven已经开始为我们工作了。
4、eclipse配置maven
则表示maven安装在eclipse中。
1)安装maven插件: 点击Installations –> add 选择maven安装目录,这里我的Maven安装目录为D:\maven\apache-maven-3.6.0,选择你的Maven安装目录,并点击确定, 之后可以点击Apply,点击OK,即可完成
2) 设置Maven选项User Settings界面:
Global Settings选择maven 安装目录下conf文件夹下的settings.xml,这里我的Maven安装目录为D:\maven\apache-maven-3.6.0,选择你的Maven安装目录,检查Local Repository 项,如果为D:/maven/repository则配置成功,否则重新配置上一步。
5、创建maven项目
1)我们在Eclipse菜单栏中点击File->New->Other->Maven,在弹出的对话框中会看到,如下图所示:
2) 选择Maven Project,请选中Create a simple project(skip archetype selection),之后点击Next
3) 填写Group id和Artifact id, Version默认,Packaging默认为jar,Name,Description选填,其他的不填
4) 之后点击Finish即可,如图所示(简单的maven项目):
5) 前三步就可以创建一个简单的maven项目,如果我们想创建一个Maven的web项目,把第三步的Packaging的类型改为war,之后点击Finish即可,如图所示:
6、下载chromedriver并在Maven的项目中pom.xml加入selenium的依赖:
1)首先查看本机安装的谷歌浏览器版本:
2)查看浏览器对应的chromedriver版本:下载对应的2.46
https://blog.csdn.net/BinGISer/article/details/88559532
3)下载chromedriver:http://chromedriver.chromium.org/system/app/pages/search?scope=search-site&q=2.46
4)把下载的chromedriver放在Google->Chrome->Application下面。
5)path系统环境配置chromedriver:C:\Program Files (x86)\Google\Chrome\Application;
6)下载selenium:https://docs.seleniumhq.org/download/,我下载的selenium-java-3.5.2放在在D:\软件下
7)查找selenium版本对应配置依赖:https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java/3.5.2
8)放在maven项目下pom.xml中的依赖配置:
9)运行的demo文件:百度访问“极客时间”
package mavenTest;
import org.junit.Assert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class seleniumBaiduExample {
public static void main(String[] args) throws InterruptedException {
//创建Chrome driver的实例
WebDriver driver=new ChromeDriver();
//打开百度首页“[www.baidu.com](http://www.baidu.com/)”
driver.navigate().to("[http://www.baidu.com");](http://www.baidu.com/)
//通过name属性找到搜索输入框
WebElement search_input=driver.findElement(By.name("wd"));
//在搜索输入框中输入搜索关键字“极客时间”
search_input.sendKeys("极客时间");
//递交搜索请求
search_input.submit();
//验证搜索结果页面的标题
Assert.assertEquals("极客时间_百度搜索", driver.getTitle());
//关闭浏览器窗口
driver.quit();
}
}
10)运行seleniumBaiduExample.java程序,结果如下: