java - 如何在测试类中获取 InitialContext 值
问题描述
我正在尝试将InitialContext
值模拟到我的测试类,但得到了以下异常。
引起:javax.naming.NoInitialContextException:需要在环境或系统属性中指定类名,或作为小程序参数,或在应用程序资源文件中:java.naming.factory.initial。
- 我尝试使用
@Mock
和@Injectmocks
我在测试类中使用了以下代码
when((DataSource) ctx.lookup("Database name")).thenReturn(dataSource);
但仍然得到同样的结果。
完整的测试方法:
public void getdetails() {
MainclassObj mainclassObj=new MainclassObj();
InitialContext ctx = Mockito.mock(InitialContext.class);
when((DataSource) ctx.lookup("Database name")).thenReturn(dataSource);
//This is the manin class where DB call is made.
mainclassObj.getRequiredData(String value);
when(response.getStaus).thenReturn(200);
}
谁能帮我解决这个问题?
解决方案
推荐阅读
- flutter - Flutter 关闭应用时如何保存数据
- php - 在 Codeigniter 的 Rest API 中使用 JWT 令牌的最佳方式。登录和注册的表架构应该是什么?如果我将令牌存储在表中
- ansible - Ansible:使用 with_items 模块时如何跳过一些空项目?
- javascript - 在调用 router.push() 之前加载 Vue 组件
- mongodb - mongodb函数返回格式
- javascript - 如何在本机反应中使用后退按钮重新渲染组件?
- react-native - ios13是强制登录的吗?
- image-segmentation - 医学图像分割:python 中 3D 图像的最大表面距离?
- angular - 使用什么符号技术来描述 Angular 语法?
- vb.net - 如何使checkboxlist多列