这个时候就需要 Maven 登场了,利用 Maven 的Maven-Surefire-Plugin插件可以帮助我们完成上述的目标!它可以通过命令行的形式来管理我们要执行的用例。...二、环境 2.1 环境要求 Maven 3.x + JDK 1.7 +2.2 支持框架 对于我们测试来说,常接触的几个用例管理框架都支持(这里指 Java 技术栈) Using TestNG Using...>org.apache.maven.plugins maven-surefire-plugin... 执行 mvn test ,查看结果: [image.png] 从结果中可以看到仅仅执行了我们默认指定的 MavenPackageDemoTest...七、写在最后 这里介绍了 maven-surefire-plugin 插件在测试执行中的一些常见用法,还有很多其他的用法,例如: 使用很复杂的格式匹配 控制在不同级别上的多线程和多进程执行 后续将慢慢研究补充
所有的源代码放在/src/main/java/文件下。 所有的单元测试代码放在/src/test/java/文件下。...所有的源代码放在/src/main/java/文件下。 所有的单元测试代码放在/src/test/java/文件下。...Maven Surefire Plugin也能识别和执行符合一定命名约定的普通类中的测试方法(POJO测试:简单的Java对象测试)。...(12)process-test-resources 将资源复制并处理到测试目标目录中。 (13)test-compile 将测试源代码编译到测试目标目录。...(14)process-test-classes 从测试编译中处理生成的文件,例如对Java类进行字节码增强。对于Maven 2.0.5及以上版本。
Run Unit Test和Maven test的区别 差异1:在IDE中通过选中单元测试路径,点击右键选择run test和点击maven中的test是有区别的。...在Maven执行测试的过程中,是不允许测试cases访问其他项目的测试类和其他项目的resources下文件的。...也就是说,在a/src/test/java下的测试用例,是不能引用b/src/test/java中的类的,同时也不允许访问b/src/test/resources下的资源的。...差异2:Maven强制要求src/test/java下不能存在resource的文件,必须放到src/test/reources文件夹下,但是IDE却很少有对应的约束。...这些约束就是导致IDE下Run Unit Test是成功的,但是在Maven中失败的原因。 因此测者提醒,提交单元测试代码之前,一定要在本地mvn test一次脚本。
存放项目的java文件 src/main/resources 存放项目的资源文件,如spring,hibernate的配置文件 src/test/java 存放所有的测试的java文件 src.../test/resources 存放测试用的资源文件 target 项目输出位置 pom.xml 文件 3 maven项目 3.1 hello项目 3.1.1 在myeclipse...3.1.4 在src/test/java中创建一个包cn.itcast.maven,创建一个测试类HelloTest ? 3.1.5 编写测试类 ? 3.1.6 编辑pom.xml文件 ?...说明: target/classes 存放编译后的类 target/test-classes 存放编译后的测试类 target/surefire-reports...说明: target/classes 编译后的类的路径 target/test-classes 编译后的测试类的路径 target/surefire-reports
,源码的位置、资源文件的位置、测试代码的位置、测试用到的资源文件的位置、静态资源的位置、打包之后文件的位置等,这些都是maven约定好的,所以清理代码用一个命令mvn clean就可以完成,不需要我们去配置清理的目标目录...generate-resources 生成资源文件:生成将会包含在项目包中的资源文件。 process-resources 编译:复制和处理资源到目标目录,为打包阶段最好准备。...generate-test-resources 生成测试源文件:为测试创建资源文件。 process-test-resources 处理测试源文件:复制和处理测试资源到目标目录。...:compile 编译主代码至主输出目录 process-test-resources maven-resources-plugin:testResources 复制测试资源文件至测试输出目录 test-compile...D:\code\IdeaProjects\maven-chat06\src\test\java D:\code
例如,针对编译的插件有maven-compiler-plugin,针对测试的插件有maven-surefire-plugin等。...一般来说,是编译src/main/java目录下的Java文件至项目输出的主classpath目录中。...process-classes generate-test-sources process-test-sources处理项目测试资源文件。...一般来说,是对src/test/resources目录的内容进行变量替换等工作后,复制到项目输出的测试classpath目录中。...一般来说,是编译src/test/java目录下的Java文件至项目输出的测试classpath目录中。
这插件是 maven-surefire-plugin—测试运行器。...默认情况下, maven-surefire-plugin 的 test 目标会自动执行测试源码路径(默认 src/test/java/)下所有符合一组命名模式的测试类如: **/Test*.java...: 任何子目录下所有命名以Test开头的Java类**/*Test.java :任何子目录下所有命名以Test结尾的Java类**/*TestCase.java :任何子目录下所有命名以Test结尾的...java类 跳过测试 mvn package-DskipTests 第一种方式:POM中配置 maven-surefire-plugin 插件提供该属性(一般不推荐): <groupId...Random 开头,Test 结尾的测试类; mvn test-Dtest=test1,test2,test3 ——逗号指定多个测试用例,效用是告诉 maven 运行这些测试类; mvn test-Dtest
一般来说,是编译src/main/java目录下的Java文件至项目输出的主classpath目录中target process-classes generate-test-sources... process-test-sources: 处理项目测试资源文件。...一般来说,是对src/test/resources目录 的内容进行变量替换等工作后,复制到项目输出的测试classpath目录中 generate-test-resources process-test-resources...test-compile: 编译项目的测试代码,一般来说,是编译src/test/java目录下的Java文件至项目输出的测试classpath目录中 process-test-classes...maven –project –info -reports –plugin 生成项目信息报告 Apache maven –surefire –plugin 生成单元测试报告 Apache maven
maven系列目标:从入门开始开始掌握一个高级开发所需要的maven技能。 这是maven系列第9篇。.../main/java/ ${project.build.testSourceDirectory}:项目的测试源码目录,默认为src/test/java/ ${project.build.directory...-- 项目的测试源码目录,默认为src/test/java/ --> ${project.build.testSourceDirectory} <!...理解资源文件打包过程 我们将src/main/resouces/jdbc.properties复制一份到src/test/resources目录,2个文件如下: ?...[INFO] Copying 1 resource 从上面输出中可以看出,使用了插件maven-resources-plugin的resources目标,将src/main/resouces目录中的资源文件复制到了
第2步: 创建简单Java类 下面是一个简单的java类,里面只有一个方法。此类的方法将被用来作单元测试。...关键点: 源文件创建在src/main/java文件夹 然而测试类创建在src/test/java文件夹。 测试类和原类类名应该相同只是前面(或者后面)加上了Test。...测试类的名字:如果你想通过maven来执行此测试,必须有Test作为前缀或者后缀。 测试方法的名字:这个是任意的,不是一定要加上test,但是最好和原类中方法名类似。...maven将通过maven-surefire-plugin 来执行测试。...] --- maven-surefire-plugin:2.12.4:test (default-test) @ TestNGHelloWorldExample --- [INFO] Surefire
,testCompile目标用来编译位于src/test/java/目录下的测试源码。...maven-dependency-plugin还有很多目标帮助你操作依赖文件,例如dependency:copy-dependencies能将项目依赖从本地Maven仓库复制到某个特定的文件夹下面。...默认的主资源文件目录是src/main/resources,很多用户会需要添加额外的资源文件目录,这个时候就可以通过配置maven-resources-plugin来实现。...maven-test-plugin,而是maven-surefire-plugin。...例如 mvn test -Dtest=FooTest 这样一条命令的效果是仅运行FooTest测试类,这是通过控制maven-surefire-plugin的test参数实现的。
这插件是 maven-surefire-plugin—测试运行器 默认情况下,maven-surefire-plugin 的 test 目标会自动执行测试源码路径(默认 src/test/java/)下所有符合一组命名模式的测试类如...:任何子目录下所有命名以Test结尾的java类 跳过测试 mvn package-DskipTests 第一种方式:POM中配置 maven-surefire-plugin 插件提供该属性(一般不推荐...>true 动态执行运行的测试用例 maven-surefire-plugin 提供一个 test 参数让用户能够在命令行指定要运行的测试用例...Random 开头,Test 结尾的测试类 mvn test -Dtest = test1,test2,test3 ——逗号指定多个测试用例,效用是告诉 maven 运行这些测试类 mvn test...即使没有任何测试也不要报错,否侧maven-surefire-plugin找不到任何匹配的测试类,就会报错并导致构建失败。
maven目录结构 artifactId(maven项目) --src --main --java(存放java代码) --resources(...存放配置文件) --test --java(存放测试代码,打包时不会进行包装) --target(存放编译之后的代码) --pom.xml(存放依赖的地方...mvn test 运行test目录下的测试代码 E:\mvn_test\mavendemo02>mvn test [INFO] Scanning for projects......- all classes are up to date [INFO] [INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ mavendemo02...--当前项目的maven资源左坐标--> com.jmy maven_01 <version
---- 1.maven-surefire-plugin是个什么鬼? 如果你执行过mvn test或者执行其他maven命令时跑了测试用例,你就已经用过maven-surefire-plugin了。...maven-surefire-plugin是maven里执行测试用例的插件,不显示配置就会用默认配置。这个插件的surefire:test命令会默认绑定maven执行的test阶段。...[INFO] skip non existing resourceDirectory /Users/qyfmac/git/learn-maven/src/test/resources [INFO] [...比如我们现在再加一个测试用例App2Test.java....[INFO] skip non existing resourceDirectory /Users/qyfmac/git/learn-maven/src/test/resources [INFO] [
-- resources(资源文件目录) |-- test `-- java(单元测试代码目录) |-- target(输出目录,所有的输出物都存放在这个目录下) |--classes...maven默认的文件存放结构如下: 每一个阶段的任务都知道怎么正确完成自己的工作,比如compile任务就知道从src/main/java下编译所有的java文件,并把它的输出class文件存放到target...maven-dependency-plugin还有很多目标帮助你操作依赖文件,例如dependency:copy-dependencies能将项目依赖从本地Maven仓库复制到某个特定的文件夹下面。...例如 mvn test -Dtest=FooTest 这样一条命令的效果是仅运行FooTest测试类,这是通过控制maven-surefire-plugin的test参数实现的。...生成测试需要的资源文件 mvn process-test-resources 复制并处理测试资源文件至测试目标目录 mvn test-compile 编译测试源码至测试目标目录
:maven-surefire-plugin:2.12.4:test (default-test) on project base-util: Execution default-test of goal...org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test failed: Plugin org.apache.maven.plugins:maven-surefire-plugin...: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test (default-test) on...:maven-surefire-plugin:2.12.4:test failed: Plugin org.apache.maven.plugins:maven-surefire-plugin:2.12.4...src/main/java和src/test/java配置, 然后点右侧的add folder重新添加 3.
Implementation: org.apache.maven.plugin.surefire.SurefirePlugin Language: java Bound to phase: test...生命周期阶段 插件:目标 执行任务 process-resources maven-resources-plugin:resources 复制主资源文件至主输出目录 compile maven-compiler-plugin...:compile 编译主代码至主输出目录 process-test-resources maven-resources-plugin:testResources 复制测试资源文件至测试输出目录 test-compile...>D:\code\IdeaProjects\maven-chat06\src\main\java D:\...D:\code\IdeaProjects\maven-chat06\src\test\java D:\code
Maven实战之旅第六篇——maven常用指令 前面在maven实战之旅第一篇(连接)我们说过,maven能够帮助我们更好的构建项目,能够帮我们自动化构建过程,从清理,编译,测试到生成报告,再到打包和部署...项目完成之后,我们建立一个测试类进行测试,在src/test/java下建立一个名为com.company.usermange.dao的package,并在其中建立一个UserDaoTest类对UserDao...至此,我们的项目以及测试类均已完成,大家可以直接把源码导入项目中(file->import->maven->existing maven project),也可以按照上面的步骤一步步来,代码复制粘贴即可...我们在console中看到的测试结果,在surefire-reports文件夹下的com.company.usermange.dao.UserDaoTest.txt文件可以看到。...这里有一点要说明一下,maven在执行test指令时,是根据类名来查找测试类的,所以测试类的类名也有命名规则。这里我就不赘叙了,一般以以test开头,或者是test结尾均可以。 ?
src: 源代码和资源文件的根目录。 main: 主目录,包含了项目的主要源代码和资源文件。 java: Java源代码文件。 resources: 配置文件等资源。...test: 测试目录,包含了项目的测试代码和资源文件。 java: 测试用的Java源代码文件。 resources: 测试用的配置文件等资源。...; } } 编写单元测试 在 src/test/java/com/example 目录下创建一个名为 AppTest.java 的Java文件: package com.example; import...maven-surefire-plugin: 用于执行单元测试。 maven-jar-plugin: 用于打包JAR文件。 maven-failsafe-plugin: 用于执行集成测试。...和 maven-surefire-plugin 插件配置了一些参数,比如Java版本和测试配置。
领取专属 10元无门槛券
手把手带您无忧上云