Openrewrite 将静态导入的assertThrows 迁移到assertJ 不起作用

问题描述 投票:0回答:1

我想将单元测试从junit和harmcrest迁移到assertJ。

大多数事情都符合食谱

activeRecipe("org.openrewrite.java.testing.assertj.JUnitToAssertj")
但有些则不然,例如
assertThrows
未从junit 迁移到assertj。

这可能是什么原因?

我使用来自assertj(版本6.11.2)的gradle插件和

   rewrite("org.openrewrite.recipe:rewrite-testing-frameworks:2.6.0")
作为依赖项

我运行 ./gradlew rewriteRun 并期望它将所有 junit 方法调用迁移到assertJ,但它不适用于多个断言和所有

assertThrows
assertDoesNotThrow

java gradle junit assertj openrewrite
1个回答
0
投票

很抱歉听到您的问题!您是否在日志中看到任何有关缺少类型信息的参考,或解析可能影响 OpenRewrite 转换测试类的能力的异常?

我们确实有一个

org.openrewrite.java.testing.assertj.JUnitAssertThrowsToAssertExceptionType
应该执行该迁移:

如果您可以分享一个非迁移的示例,可能会有所帮助;理想情况下采用单元测试的形式,如下所示:

这有助于我们复制您的使用模式,然后将其编码为迁移的配方步骤。

© www.soinside.com 2019 - 2024. All rights reserved.