Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web services Mule中集成测试的模拟服务_Web Services_Mocking_Mule - Fatal编程技术网

Web services Mule中集成测试的模拟服务

Web services Mule中集成测试的模拟服务,web-services,mocking,mule,Web Services,Mocking,Mule,在我们的mule项目中,我们目前有我们的集成测试用例称为实际的外部Web服务(内部)。这显然是我们想要摆脱的,并为外部服务提供模拟服务,因为我们几乎已经完成了为mule项目设置构建服务器的工作 我看到有很多选项可用于mule流中的模拟: MuleSoft的Munit-仍处于测试版;但被认为是最合适的候选人。但既然它是Beta版,我们是否可以继续使用它作为我们即将投入生产的代码 Confluex/Wiremock和许多其他模拟Web服务的框架 使用带有嵌入式jetty服务器的测试用例来处理请求和模

在我们的mule项目中,我们目前有我们的集成测试用例称为实际的外部Web服务(内部)。这显然是我们想要摆脱的,并为外部服务提供模拟服务,因为我们几乎已经完成了为mule项目设置构建服务器的工作

我看到有很多选项可用于mule流中的模拟:

  • MuleSoft的Munit-仍处于测试版;但被认为是最合适的候选人。但既然它是Beta版,我们是否可以继续使用它作为我们即将投入生产的代码
  • Confluex/Wiremock和许多其他模拟Web服务的框架
  • 使用带有嵌入式jetty服务器的测试用例来处理请求和模拟响应 请让我知道你的意见。 感谢和问候,
    Priya

    如果你问我我会选择Munit,我知道测试版可能有点吓人,但是:

    • 您的测试不需要像生产代码那样的稳定性
    • Munit的BETA版是稳定的,也就是说,它不是快照,所以不会突然改变并中断测试
    • 穆尼特将在未来几个月内成为GA
    这就是关于代码稳定性的问题。 这就是说,Munit除了模拟您的流之外,还提供了许多其他特性,在某个时候,我认为您可能不仅喜欢对mule应用程序进行单元测试,还喜欢使用Munit进行集成测试

    一般来说,您的其他选项虽然适用,但仍在一定程度上依赖于外部系统,而Munit是隔离Mule代码并避免其进行外部调用的本地方法


    HTH

    我觉得最好使用munit-xml配置方法来测试mule流


    你可以模仿服务,通过为web服务指定模拟组件所需的响应,这是一种简单而可取的方法。对于模拟组件,您可以设置诸如“http.status”等装入属性。下一个流消息处理器将需要相应的属性。

    我是confluex mock http的作者之一,我目前正在将项目迁移到。所以,我可能有偏见:)

    我更喜欢在过程中启动HTTP服务器,这就是为什么我帮助构建了一个这样做的项目。该库是专门制作的,因为我们使用选项3多次解决了此问题。:)

    我将花费一些精力发布sham http,并计划使其与Mule 3.6.0兼容。如果您使用的是其他版本,请确保添加一个问题以使其与您使用的任何版本兼容:)