如何使用JUnit测试JavaWeb服务?
我需要用JUnit测试一个服务 这是我的密码:如何使用JUnit测试JavaWeb服务?,java,web-services,junit,logic,Java,Web Services,Junit,Logic,我需要用JUnit测试一个服务 这是我的密码: public class AdviesBoxTestDaoImpl { private SearchDaoImpl searchDaoImpl; private SearchParametersDto searchParametersDto; JSONObject jsonObject; @Before public void loadJsonFile(){ try{ Obj
public class AdviesBoxTestDaoImpl {
private SearchDaoImpl searchDaoImpl;
private SearchParametersDto searchParametersDto;
JSONObject jsonObject;
@Before
public void loadJsonFile(){
try{
ObjectMapper mapper = new ObjectMapper();
searchParametersDto = mapper.readValue(new File("D:\\productsData.json"), SearchParametersDto.class);
}
catch(Exception e){
}
}
@Test
public void testsDemoMethod() throws SQLException {
System.out.println(searchParametersDto.toString());
assertEquals( "Products saved successfully",
searchDaoImpl.inTable(searchParametersDto));
}
}
我的服务结果是字符串中的消息“Products saved successfully”,我在这里比较它。每次运行测试用例时,都会出现NullPointerException错误
我应该在代码中做哪些更改,以便正确测试服务?您不应该在
loadJsonFile()
方法中捕获异常。它隐藏了任何异常,您看不到测试失败的真正原因。下面是一个改进的loadJsonFile()
你能在不知道哪一行的情况下发布输出吗?这很难确定,尽管从你的代码中我可以看出你没有实例化searchDaoImpl对象,它会抛出一个空指针。
@Before
public void loadJsonFile() throws Exception {
ObjectMapper mapper = new ObjectMapper();
searchParametersDto = mapper.readValue(
new File("D:\\productsData.json"),
SearchParametersDto.class
);
}