这节我们创建一个Gradle模块,用于以后测试代码。
![f869b79aaaa2b7615715380b2a890470.png](https://i-blog.csdnimg.cn/blog_migrate/1bffabc87e0cf66ff213bd00e13a9dc7.jpeg)
新建Gradle模块
我们在上一节的基础上创建一个测试模块
File–>New–>Module 新建一个模块
![8073c7996cd7471dd3454be94789a343.png](https://i-blog.csdnimg.cn/blog_migrate/28fa2c3f3159ac95c116a50f59ccfb7e.jpeg)
![b52bb3f4e0899e8e2f2c9f3ff39c71fb.png](https://i-blog.csdnimg.cn/blog_migrate/e6fcd1b6c9eecd6fe2d25195cf157561.jpeg)
添加模块引用
打开新建module下的build.gradle文件,导入以下依赖
plugins { id 'java'}group 'org.springframework'version '5.1.0.RC1'sourceCompatibility = 1.8repositories { mavenCentral()}dependencies { compile(project(":spring-beans")) compile(project(":spring-core")) optional(project(":spring-aop")) optional(project(":spring-context")) optional(project(":spring-oxm")) optional("javax.annotation:javax.annotation-api:1.3.2") optional("javax.ejb:javax.ejb-api:3.2") optional("javax.enterprise.concurrent:javax.enterprise.concurrent-api:1.0") optional("javax.inject:javax.inject:1") optional("javax.interceptor:javax.interceptor-api:1.2.2") optional("javax.money:money-api:1.0.3") optional("javax.validation:validation-api:1.1.0.Final") optional("javax.xml.ws:jaxws-api:2.3.0") optional("org.aspectj:aspectjweaver:${aspectjVersion}") optional("org.codehaus.groovy:groovy:${groovyVersion}") optional("org.beanshell:bsh:2.0b5") optional("joda-time:joda-time:2.10") optional("org.hibernate:hibernate-validator:5.4.2.Final") optional("org.jetbrains.kotlin:kotlin-reflect:${kotlinVersion}") optional("org.jetbrains.kotlin:kotlin-stdlib:${kotlinVersion}") testCompile("org.codehaus.groovy:groovy-xml:${groovyVersion}") testCompile("org.codehaus.groovy:groovy-jsr223:${groovyVersion}") testCompile("org.codehaus.groovy:groovy-test:${groovyVersion}") testCompile("org.apache.commons:commons-pool2:2.6.0") testCompile("javax.inject:javax.inject-tck:1") testRuntime("javax.xml.bind:jaxb-api:2.3.0") testRuntime("org.glassfish:javax.el:3.0.1-b08") testRuntime("org.javamoney:moneta:1.3") testCompile (group: 'junit', name: 'junit', version: '4.12')}
上面我们引入了项目需要的依赖jar包,基本完工,但是IDEA 还有个地方需要修改,否则无法进行单元测试。
IDEA Gradle配置
File–>Settings–>Gradle,修改配置如下:
![a31691b199616efa5f0e4b1220c98928.png](https://i-blog.csdnimg.cn/blog_migrate/532471f310ddcfa65097f2d3b2167d2f.jpeg)
测试
在test包下新建 Dog.java 和 DogController:
package com.sxdx.entity;/** * @program: spring * @description: dog * @author: garnett * @create: 2020-04-07 10:29 **/public class Dog {private String name;private int age;public Dog() {}public Dog(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public void sayHello() {System.out.println("大家好, 我叫" + getName() + ", 我今年" + getAge() + "岁了");}}
package com.sxdx.controller;import com.sxdx.entity.Dog;import org.junit.After;import org.junit.Before;import org.junit.Test;import org.springframework.beans.factory.xml.XmlBeanFactory;import org.springframework.core.io.ClassPathResource;/** * @program: spring * @description: dog * @author: garnett * @create: 2020-04-07 10:33 **/public class DogController {private XmlBeanFactory xmlBeanFactory;@Beforepublic void initXmlBeanFactory() {System.out.println("========测试方法开始=======");xmlBeanFactory = new XmlBeanFactory(new ClassPathResource("dog-bean.xml"));}@Afterpublic void after() {System.out.println("========测试方法结束=======");}@Testpublic void test1() {// 默认构造器System.out.println("默认构造器");Dog dog1 = xmlBeanFactory.getBean("dog1", Dog.class);dog1.sayHello();}}
在 resources 下新建 dog-bean.xml文件
<?xml version="1.0" encoding="UTF-8"?>
运行DogController.test1
![ebf262b231a85b7f30cc99fd39dfcdb5.png](https://i-blog.csdnimg.cn/blog_migrate/2cf665a68340ec91ba2475d5707ce786.jpeg)
OK,可以了。以后我们就在这个测试模块中做一些代码测试。