目前我们在 SAP Commerce 1808 项目中使用 JUnit4 测试框架,单元测试运行良好。
但是,我们想开始使用 JUnit5 框架。导入各自的 JUnit5 库并编译单元测试后,我在控制台中运行了命令:
ant unittests -Dtestclasses.packages=<package_name> -Dtestclasses.suppress.junit.tenant=true
ant 无法找到测试类并在控制台中显示输出:
...
[echo] No tests found!
这令人惊讶,因为我在类名之前使用了注释@UnitTest:
@UnitTest
public class ClassName{
...
}
为了找到答案,我在 SAP Commerce 文档中搜索了单元测试的示例:https://help.sap.com/viewer/d0224eca81e249cb821f2cdf45a82ace/1808/en-US/aae25ecb74ab4bd69cc5270ffd455459.html并注意到所有单元测试示例仅使用 JUnit4 框架。
我还检查了 Hybris 开箱即用的代码,也发现那里只使用了 JUnit4 框架。
所以问题是:如何在 SAP Commerce 1808 中运行 JUnit5 测试?
更改 SAP commerce 附带的库是一项危险的操作,因为来自 SAP 的扩展可能会出现运行时错误。
如果该版本与 junit 4 捆绑在一起,您将必须使用该框架。