我正在使用 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());
}
谢谢!