使用 Spring
進行單元測試,可以分為兩種:
- 1、使用注解的方式加載配置檔案
- 2、手動加載配置檔案
既然是做單元測試,那麼最基本的單元測試
maven
依賴需要引入。
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
然後引入
spring
的測試依賴。
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.16.RELEASE</version>
</dependency>
另外引入
spring
的
context
與
bean
依賴。
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.2.16.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.16.RELEASE</version>
</dependency>
注意:這裡使用的spring:5.2.16版本,是以單元測試版本必須是4.12或者更高的。
在測試類上使用
@RunWith
@ContextConfiguration
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"classpath:application.xml"})
public class AppTest
使用的時候在屬性上面增加
@Autowired
,也可以通過
setXXX
來進行注入。
@Autowired
private IUserService userService;
ClassPathXmlApplicationContext
的方式加載配置檔案。
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("application.xml");
然後使用
getBean
擷取配置檔案中的執行個體。
IUserDAO userDAO = applicationContext.getBean("userDAO");
實際使用時,可以根據具體情況選擇不同的方式。