springboot~沒(mei)有啟動類(lei)項目的單元(yuan)測試(shi)
一般對于(yu)公(gong)用包來(lai)說,是不需要(yao)springboot啟動類的(de),它只是一個工具,而對于(yu)包的(de)健壯(zhuang)性來(lai)說,單元(yuan)測試是必須的(de),而如果(guo)你使用下面代碼聲明類,將會出現,“無法找到啟動類”
@RunWith(SpringRunner.class)
@SpringBootTest()
public class RedisLockTest {}
對于(yu)(yu)@SpringBootTest這(zhe)個注解來說(shuo),它幫(bang)助我們將main程序中(zhong)的包都注冊到(dao)ioc容(rong)器里,方便我們在單元測(ce)試項目中(zhong),直接注入這(zhe)些(xie)對象,而(er)對于(yu)(yu)沒有啟動類的工具包來說(shuo),這(zhe)種(zhong)方便不適用(yong)。
- TestPropertySource 手動注冊配置文件
- ContextConfiguration 手動注冊bean
@RunWith(SpringRunner.class)//spring運行器
@TestPropertySource("classpath:application.properties") //配置文件注入
@ContextConfiguration(classes=AsposeWordToHtml.class)
public class PoiWordToHtmlTest {}
這(zhe)樣(yang),在@Test單元測(ce)試里,就可以通過@Value注入配置(zhi)文件 ,使用(yong)@Autowired注入bean對象了
如果還(huan)是無法注冊(ce)bean對象,可以通過@SpringBootTest(classes=AsposeWordToHtml.class)來(lai)進行注冊(ce)。