Maven项目中,test目录是干嘛的,因为在实际开发的时候,都是在main目录下创建包、类,如果要测试,就是要Junit测试代码就可以了,构建项目的时候也是将main/java下的源文件和main/resources目录下的资源文件构建到classes目录下,构建artifact时(即部署包)也是将main/webapp下的内容以及classes复制到指定的artifact输出目录下。
上述可以得知,maven项目的开发、测试、部署运行和src/test没有任何关系。那么请问,test这个目录是干嘛的呢?
了解下TDD, 测试驱动开发(Test-Driven Development).
这个地方一般放测试代码的。
我正常开发的情况下,难道还要自己手动copy一份源文件和资源文件到test目录下吗?
@liaowenxiong: 不需要。你写页面的话,测试就是项目启动之后,浏览器自动跑自动化测试的,test目录就会有Selenium Java自动化测试代码(各种模拟鼠标点击等)。如果你写的有业务逻辑代码,test目录就会放一些单元测试代码。你写api接口的话,test就是mock http请求的代码。 一般程序员要写单元测试,比如你有个计算价格的函数, public double calPirice() { } 你肯定要在对应的test目录写个 testCalPirice()函数测试逻辑。其他的类型测试,会有测试工程师来往这里写代码。
test:该目录用来存放项目的测试文件。
java:该目录主要存放该项目的测试所用的Java源代码。
resources:该目录存放测试使用的资源文件。
我正常开发的情况下,难道还要自己手动copy一份源文件和资源文件到test目录下吗?
@liaowenxiong: 不需要
通俗来讲 就是单元测试
我正常开发的情况下,难道还要自己手动copy一份源文件和资源文件到test目录下吗?
@liaowenxiong:
不需要哈。
比如,你在service层写好代码,就可以直接在test想写测试用例,去调用就行了。
当然你的springboot的项目最好做一下架构分层,这样便于代码公用,也方便测试。
推荐学习:
写单元测试的,写一个服务,都会写单元测试代码,打版出库时会自动测试执行,确保新增代码对原有代码没影响。还有一个是统计测试覆盖率