对使用Azure Service Bus进行消息传递的Java应用程序进行集成测试的方法是什么?
我不想在每个CI构建中都使用云服务。宁愿生成嵌入式版本的Azure Service Bus或以某种方式对其进行模拟。另外,我正在考虑对AMQP / JMS进行编码,并在CI构建期间使用嵌入式ActiveMQ来模拟Azure Service Bus。 谢谢。
答案 0 :(得分:1)
根据您的描述,听起来您想使用内部兼容的替代方案而不是Azure Service Bus来与Java CI应用程序集成在本地。
如我所知,About Windows Service Bus页面如下所示,以前还有一个名为Windows Service Bus的替代方案。
可以将Windows Service Bus(WSB)视为Azure Service Bus的本地版本。
但是,正如SO线程Is Service Bus for Windows Server dead所说,它已经死了。并且没有像SO线程Azure Service Bus Emulator和Test Azure Service Bus locally without any subscription or login(由MSFT回答)所说的Service Bus仿真器。
考虑到Azure Service Bus limits,根据我的经验,我不确定是否有替代软件可以代替它而不会出现兼容性问题,因此,如果有以下条件,则将云服务用于CI构建是唯一的选择
如果您不必使用Azure Server Bus进行消息传递,则Azure Storage Queue是与Java App集成的不错选择,您可以参考官方文档Use the Azure storage emulator for development and testing来下载仿真器并使用它。