1

我正在使用 JUnit 4,

我想模拟FacesContext实例,在为包含实例的方法编写测试用例时遇到空指针错误FacesContext,类似地 DataBinding 和BindignContainer.. 等。

我在 Util 类中的方法:

public static String resolveUserPrincipal() {
    FacesContext facesContext = FacesContext.getCurrentInstance(); // here I am null
    ExternalContext ectx = facesContext.getExternalContext();
    HttpServletRequest request = (HttpServletRequest)ectx.getRequest();
    return request.getUserPrincipal().getName();
}

我的 TestCase 方法:

@Test
public void testResolveExpression() {
    JSFUtils utils = new JSFUtils();
    //utils.resolveExpression(null);
    System.out.println(utils.resolveUserPrincipal());
    System.out.println("============== "+FacesContext.getCurrentInstance());
}

谢谢!

4

0 回答 0