gpt4 book ai didi

sap-cloud-sdk - 如何在 SAP Cloud SDK 中为自己的 OData 服务执行集成测试

转载 作者:行者123 更新时间:2023-12-04 02:44:14 25 4
gpt4 key购买 nike

我们目前使用 SAP Cloud Platform Provisioning SDK 在我们的 Spring Boot 应用程序中提供自己的 OData 服务,它是 SAP Cloud SDK 的一部分。我们正在各自的 Maven 模块中创建集成测试,但是当通过 Maven 执行它时,它失败并显示以下堆栈跟踪:

[http-nio-auto-1-exec-1] ERROR com.sap.cloud.sdk.service.prov.v2.rt.cdx.CDXRuntimeDelegate - Error initializing the service <service-name>
java.lang.IllegalArgumentException: URI is not hierarchical
at java.io.File.<init>(File.java:418)
at com.sap.cloud.sdk.service.prov.v2.rt.cdx.CDXRuntimeDelegate.getFilefromFileName(CDXRuntimeDelegate.java:410)
at com.sap.cloud.sdk.service.prov.v2.rt.cdx.CDXRuntimeDelegate.getFileForService(CDXRuntimeDelegate.java:387)
at com.sap.cloud.sdk.service.prov.v2.rt.cdx.CDXRuntimeDelegate.initialize(CDXRuntimeDelegate.java:252)
at com.sap.cloud.sdk.service.prov.v2.rt.cdx.CDXRuntimeDelegate.getModelProvider(CDXRuntimeDelegate.java:204)
at com.sap.gateway.core.api.provider.delegate.ProviderFactory.createModelProvider(ProviderFactory.java:202)
at com.sap.gateway.core.api.provider.delegate.ProviderFactory.getEdmModelProvider(ProviderFactory.java:128)
at com.sap.gateway.core.odata4sap.ServiceFactory.createService(ServiceFactory.java:135)

查看代码,这似乎与以下帖子有关:

Why is my URI not hierarchical?

在 SDK 中,OData EDMX 文件被作为文件读取,但是由于在 Maven 执行期间它位于一个单独的 JAR 文件(应用程序模块的)中,因此无法以这种方式访问​​它。相反,它需要作为一个流来读取,这反过来似乎需要一些重构。

作为解决方法,我将 EDMX 文件复制到集成测试模块的 src/test/resources/edmx。

我现在想知道我是否遗漏了什么,或者通常根据 SAP Cloud SDK 执行的集成测试是否与配置框架不兼容?

最佳答案

虽然我不太熟悉您解释的用例,但我还是建议您查看 Maven documentation on additional resource folders .除了它自己的 /resources 之外,您还可以将 integration-tests 模块指向 application 模块各自的 /resources 文件夹 文件夹。我认为相对路径应该是可能的。

关于sap-cloud-sdk - 如何在 SAP Cloud SDK 中为自己的 OData 服务执行集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57901372/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com