我给自己写了一个SortingBean
,它类似于这里的CarsSortingBean
。我想为这个类写一个单元测试,但我不知道如何做到这一点。我在sort
方法的第一行遇到了问题。我如何才能成功地嘲笑这一点?
我已经发现,有一种叫做MockFacesContext
:的东西
@Test
public void testSort() throws Exception {
facesContextMock = MockFacesContext.getMockContext(true);
replay(facesContextMock);
classUnderTest.sort();
}
通过这个测试,我得到了一个NullPointerException
,因为RequestParameterMap
没有填充。
你能告诉我如何解决这个问题吗?
我想把排序逻辑转移到其他不知道JSF上下文的类。然后,例如,创建方法setSortParameter(String)
,并将其填充到单元测试和这个bean中。
几年来,我一直很难处理模拟JSF上下文(使用Shale框架+JSF1.1),我不会再这样做了。