1. 程式人生 > 其它 >【Tokio】非同步休眠任務

【Tokio】非同步休眠任務

引言

我們雖然可以通過以下方法解決Junit的整合,但那是因為我們作為開發工程師,懂得如何使用Spring。測試工程師並不一定懂得Spring的使用。

分析

一、應用程式的入口:main方法

二、Junit單元測試中,沒有main方法也能執行

junit集成了一個main方法,該方法就會判斷當前測試類中哪些方法有 @Test 註解,junit就讓有Test註解的方法執行。

三、junit不會管我們是否採用Spring框架

在執行測試方法時,junit根本不知道我們是不是使用了Spring框架,所以也就不會為我們讀取配置檔案/配置類建立Spring核心容器

總結:由以上三點可知,當測試方法執行時,沒有IOC容器,就算寫了AutoWired註解,也無法實現注入


這樣是不行的

Spring整合junit配置

當我們使用spring 5.x版本時,要求junit的jar包必須是4.12及以上

1、匯入Spring整合junit的jar(座標)

       <dependency>
           <groupId>org.springframework</groupId>
           <artifactId>spring-test</artifactId>
           <version>5.1.5.RELEASE</version>
       </dependency>

2、使用junit提供的註解把原有的main方法替換,替換成spring提供的(加在類上)

@RunWith(SpringJUnit4ClassRunner.class)

3、告知spring的執行器,spring和ioc建立時基於xml還是註解的,並且說明位置

@ContextConfiguration
location:指定xml檔案的位置,加上classpath關鍵字,表示在類路徑下

@ContextConfiguration(locations = "classpath:bean.xml")
  classes:指定註解類所在的位置
@ContextConfiguration(classes = SpringConfiguration.class)

配置成功