引入了junit包,但是@Test不可用

  • Post author:
  • Post category:其他


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测试。



版权声明:本文为pengyulong1285原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。