gpt4 book ai didi

unit-testing - Mocking FacesContext

转载 作者:行者123 更新时间:2023-12-03 13:23:45 25 4
gpt4 key购买 nike

我正在尝试向 JSF 应用程序添加一些单元测试。此应用程序没有严重依赖任何最佳实践,因此许多服务方法使用 FacesContext从托管 session bean 中提取数据,如下所示:

(这是在一个 util 类中)

  public static Object getPageBean(String beanReference) {
FacesContext fc = FacesContext.getCurrentInstance();
VariableResolver vr = fc.getApplication().getVariableResolver();
return vr.resolveVariable(fc, beanReference);
}

模拟这个的最好方法是什么?我正在使用 groovy,所以我有更多选项来创建我通常无法创建的类。

最佳答案

您可以通过 FacesContext.getCurrentInstance 返回模拟上下文通过调用 setCurrentInstance(FacesContext) 在运行测试之前。该方法 protected ,但您可以通过反射或扩展FacesContext 来访问它.有一个使用 Mockito here 的示例实现.

关于unit-testing - Mocking FacesContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4252353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com