在開發(fā)過程中我們有時會遇到狠多的問題和bug,對于在編譯和運(yùn)行過程中出現(xiàn)的問題很好解決,因?yàn)榭梢栽阱e誤日志中得到一定的錯誤提示信息,從而可以找到一些對應(yīng)的解決辦法。但是有時也會遇到一些比較詭異的問題和bug,沒有任何的跡象,沒有任何的提示它過去了,但是我們的項(xiàng)目受到影響運(yùn)行不起來。別的我們先不說了,說我在開發(fā)中使用的Junit的遇到的一個比較糾結(jié)的bug問題吧,這個問題的比較的詭異,困擾了我將近的時間,終經(jīng)過同事和網(wǎng)上資料的幫助將這個問題解決了,特在這里分享給需要的人。
一、問題描述:
在很多時候我們在項(xiàng)目中使用到SSH框架的時候,我們都會用到單元測試Junit,通過它可以監(jiān)控數(shù)據(jù)庫的交互信息,從而反饋給開發(fā)者。有時我們在使用hibernate的時候加入的hibernate.cfg.xml配置文件,有時由于自己的不小心把一些地方寫錯了,例如說mapping的標(biāo)簽內(nèi)容,如下圖:
然后你在運(yùn)行啟動Junit測試,這時它會給報錯,有錯誤提示,如下圖:
但是出現(xiàn)以上的情況還是比較好的,我們可以很快的解決。重點(diǎn)是有時它根本不給出現(xiàn)錯誤,好像直接把這個錯誤吞了一樣,直接結(jié)束了,你的項(xiàng)目是運(yùn)行不起來。碰到這種情況是糾結(jié)的,但是這個問題只是出現(xiàn)額偶然的,不是必然的。因此也需要引起我們的注意。
二、解決問題的辦法:
對于這個問題的解決我們有具體的2種辦法來處理:
1、可以首先對 sf=new AnnotationConfiguration().configure().buildSessionFactory(); 這個初始化行try catch ,當(dāng)它運(yùn)行時出現(xiàn)錯誤時會拋出異常信息,具體見圖:
2、我們也可以自己寫個main方法,在里面調(diào)用初始化的方法,從而讓它給你提示錯誤的信息,具體見圖:
至此到這里Junit這個詭異的bug的說明和解決辦法給大家分享結(jié)束了,需要轉(zhuǎn)載的朋友請注明出處,保留此處的位置。