1、问题引入
通过maven引入junit包:
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> <scope>test</scope> </dependency>
代码中使用@Test单元测试:
@Test public void demo1(){ ... }
尽管导入junit包(import org.junit.Test;) @Test还是报错。
2、问题分析
发现去掉dependency中的<scope>test</scope>就好了,于是查看<scope>的作用:
scope为test指的是测试范围有效,在编译和打包时都不会使用这个依赖,意思就是src/main/java/里面的类都不可使用scope为test的依赖包,这就解释了第一步我遇到的问题。
3、问题解决
在src下新建文件夹src/test/java/,设置该文件夹为Test Source Root(测试代码根目录),就可以在该文件夹下的类中使用scope为test的依赖包了。
目录结构如下:
如上图,SpringDemo1中的方法就可以使用@Test测试。