单元测试 – Mocking FacesContext
发布时间:2020-12-14 16:33:57 所属栏目:大数据 来源:网络整理
导读:我正在尝试向JSF应用程序添加一些单元测试.这个应用程序没有严格依赖于任何最佳实践,所以许多服务方法使用FacesContext从托管会话bean中提取数据,如下所示: (这是在一个util类中) public static Object getPageBean(String beanReference) { FacesContext f
我正在尝试向JSF应用程序添加一些单元测试.这个应用程序没有严格依赖于任何最佳实践,所以许多服务方法使用FacesContext从托管会话bean中提取数据,如下所示:
(这是在一个util类中) public static Object getPageBean(String beanReference) { FacesContext fc = FacesContext.getCurrentInstance(); VariableResolver vr = fc.getApplication().getVariableResolver(); return vr.resolveVariable(fc,beanReference); } 什么是最好的方式来模拟这个?我正在使用groovy,所以我有更多的选择创建类,我不能正常创建. 解决方法
您可以在运行测试之前调用
setCurrentInstance(FacesContext) ,通过FacesContext.getCurrentInstance返回模拟上下文.该方法受到保护,但您可以通过反射或扩展FacesContext来访问它.有一个使用Mockito
here的示例实现.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |