1

我有一个类,我使用 getRequestParameterMap 来检索一些数据,如下所示:

FacesContext fc = FacesContext.getCurrentInstance();
String oidValue = fc.getExternalContext.getRequestParameterMap().get("oidValue");

而且我需要创建一些 Junit 测试,因为涉及一些条件,所以我正在寻找的是一些模拟值的方法:

getRequestParameterMap()
4

1 回答 1

0

通常,您会为 FacesContext 使用一个模拟对象,并在调用 getExternalContext() 时为 ExternalContext 返回另一个模拟对象,以便您最终可以返回一个包含此测试所需值的映射。然而

这里的问题是 FacesContext 和 ExternalContext 都是抽象类而不是接口,这导致 easymock 无法模拟这些。

但是有PowerMock,它可以做一些增强的事情,其中​​包括调整现有类的字节码,它应该能够做你想做的事情。

于 2012-01-10T16:18:24.310 回答