我正在成功使用SOAP Web服务。现在,我正在尝试编写一些单元测试,但是当测试访问使用WSDL生成的类(EmployeeInfo)时,它将给出以下错误。

java.lang.ExceptionInInitializerError
    at org.apache.axis.description.TypeDesc.<clinit>(TypeDesc.java:61)
    at com.www.soapservice.schema.EmployeeInfo.<clinit>(EmployeeInfo.java:106)


我写的单元测试如下

@RunWith(SpringRunner.class)
@SpringBootTest
public class RecordsManagerTests {

    @Mock
    private SoapClient soapClient;

    @Test
    public void sampletest() {
        Mockito.when(soapClient.getFullEmployeeInfoById(Mockito.anyLong())).thenReturn(new EmployeeInfo());

        RecordsManagerImpl sut = new RecordsManagerImpl(soapClient);

        sut.getEmployeeInformation(999);
    }

}


我搜索了此问题,但只能找到该服务的嘲笑。

最佳答案

我不确定为什么它起作用,但是我在测试方法及其起作用的开头添加了以下内容

System.setProperty("org.apache.commons.logging.LogFactory", "org.apache.commons.logging.impl.LogFactoryImpl");

10-01 00:23