【问题标题】:How to handle integration tests for MTA packaging?如何处理 MTA 打包的集成测试?
【发布时间】:2020-05-22 20:40:34
【问题描述】:

我们正在开发 MTA 项目并使用 SAP Cloud SDK 管道 (Piper) 为 Cloud Foundry 集成 CI/CD。

该项目有多个基于 SAP Cloud SDK for Java 的微服务,每个微服务都有单独的集成测试集(基于 SAP Cloud SDK 的 Java 项目模板)。

我们想要对微服务进行 MTA 打包,但是当我们使用 SAP Cloud SDK 管道运行 mta 构建时出现了问题。

管道错误,因为它现在(即新结构)需要项目根级别的集成测试模块,但在我们的案例中,集成测试是在单个微服务级别。

我们知道所有微服务的集成测试都需要在项目根级别进行 mta 构建,但是是否有任何其他推荐的方法来处理单个微服务本身的集成测试?

如果有人可以在此处指导我们了解新结构和应遵循的最佳做法,我们不胜感激。

只是作为信息添加 - 我们使用 s4sdk 管道为上述每个微服务运行 maven 构建。我们希望将这些微服务整合到 MTA 包中以进行发布部署。

【问题讨论】:

  • 如果答案让您满意,最好将其标记为“已接受”以向其他用户表明已提供答案。

标签: sap-cloud-platform sap-cloud-sdk


【解决方案1】:

让我再说几句:

适合使用 SAP Cloud SDK Pipeline 的 MTA 项目结构记录在 here

基于 SAP Cloud Platform 业务应用程序 SAP Web IDE 模板启动此类项目比从 SAP Cloud SDK 原型之一开始更容易。

我认为微服务的想法和一个 mta 项目有一点点矛盾,因为微服务应该是可以独立部署的。也就是说,使用 mta 来构建您的应用程序非常好,但在这种情况下,在项目根目录中进行集成测试,正如您已经发现的那样,这是唯一的方法。您可以使用包来分隔集成测试的逻辑实体。

如果您的代码应该被更严格地分开,另一种选择是拥有多个存储库(可能使用或不使用 mta)并为每个存储库设置管道。

我希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-25
    • 1970-01-01
    • 2017-10-28
    • 2012-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多