Java 为SOAP客户端编写单元测试

Java 为SOAP客户端编写单元测试,java,spring-boot,soap,junit,Java,Spring Boot,Soap,Junit,我在下面提供了一个SOAP客户端: @Component public class Sales2Client extends XWebserviceClient { private static final Logger LOG = LoggerFactory.getLogger(Sales2Client.class); @Autowired @Qualifier("sales2Template") private WebS

我在下面提供了一个SOAP客户端:

@Component
public class Sales2Client extends XWebserviceClient {
    
    private static final Logger LOG = LoggerFactory.getLogger(Sales2Client.class);
    
    @Autowired
    @Qualifier("sales2Template")
    private WebServiceTemplate webServiceTemplate;
    
    public Sales2ObjectFactory factory;
    private DateTimeConverter dateTimeConverter;
    
}

谢谢。

由于您有两个相同类型的组件,因此必须限定名称:

@MockBean(name = "sales2Client")
private Sales2Client sales2Client;

NPE发生在哪里?@SimonMartinelli抱歉,我出现了以下错误
java.lang.IllegalStateException:未能加载ApplicationContext
,这意味着您有两个sam接口sales2Client的实现。为什么BrinkWebserviceClient是SpringBean?@SimonMartinell我不确定我是否理解它。我为这个问题添加了相关代码,没有2个实现。为什么BrinkWebserviceClient是一个Springbean>好问题。我将看看是否可以删除此组件。你是对的,我们不需要BrinkWebserviceClient的组件并将其删除。不过我还是有同样的错误。