IDEA Maven JUnit

607 阅读1分钟

1. JUnit配置

pom.xml 依赖引入 <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> 安装插件:JUnit JUnitGenerator

2. 约定代码目录

MAVEN 约定>配置>编码那么 MAVEN 约定的目录结构

图片.png

pom.xml中约定的相关配置为

<build> <sourceDirectory>src/main</sourceDirectory> <testSourceDirectory>src/test</testSourceDirectory> <build>

源代码目录为src/main测试代码目录为src/test 新项目一般按约定来建立,省下大量的学习和修改成本

1. 老项目建立test

非MAVEN项目一般只有src目录 并没有建立test目录,且默认src即为源代码目录

* 方案一:在src目录下建立test目录

`src

src/test `

由于源码目录包含了test测试目录,打包时必定导出src/test代码,而其依赖包JUnit 在pom.xml中被设定为<scope>test</scope> ,此时打包时,会发生 程序包org.junit不存在 的报错

图片.png

可以选择将<scope>test</scope>注释掉,以在发布时引入JUnit依赖 显然此方案将测试代码发布了,这并不我们想要的

* 方案二: 改成MAVEN约定目录 在src目录下建立main和test目录

<sourceDirectory>src/main</sourceDirectory> <testSourceDirectory>src/test</testSourceDirectory>

在src相当于将源代码目录改成了src/main,打包时不会含有测试代码了。但此时 整个项目的VCS记录都将打乱了,给追溯历史代码会带来一些困扰。

* 方案三:在项目目录下建立test目录

<sourceDirectory>src</sourceDirectory> <testSourceDirectory>test</testSourceDirectory>

打包不再含有测试代码,且 源代码目录为改变,不影响VCS记录追溯 由于test 是不约定的测试目录,需要修改Junit的设置

IDEA -> 文件 (File)-> 设置(setting)->其他设置(other settings)->JUnit Generaror -> OutputPath

${SOURCEPATH}/test/${PACKAGE}/${FILENAME} 修改为 ${SOURCEPATH}/../test/${PACKAGE}/${FILENAME}

总结:建议老项目采用方案三,终极方案