2016-03-08 23 views
0

所以我的應用程序運行在JSF 1.2,並使用春豆IOC注入類爲基於Spring上下文XML配置輔助bean。如何獲得使用JSFUnit和Spring IoC豆在JSF 1.2

我正在使用JSFUnit進行測試,我可以瀏覽頁面並在我的Backing Bean值上聲明,但是我無法訪問任何注入的bean。

我知道JSFUnit已經被廣告做白盒測試,但到目前爲止,我只能做類似於Arquilian的容器內測試的東西。

任何人都可以幫助我訪問業務對象,我有(一旦我打開了有關備份Bean的頁面,由Spring注入)?謝謝 !

回答

0

我找到了答案,一旦你導航到你的頁面,你可以簡單地通過bean名字返回豆你的測試用例調用這個方法,它是如此整潔:

@SuppressWarnings("unchecked") 
public static <T> T findBean(String beanName) { 
    FacesContext context = FacesContext.getCurrentInstance(); 
    return (T) context.getApplication().evaluateExpressionGet(context, "#{"+beanName+"}", Object.class); 
} 

現在JSFUnit成爲更有用!