如何解决如何将@ClassRule 转换为扩展?
我目前正在将我的 WebFlux 应用程序转换为使用 v4 中的 junit 5,我的 gradle.properties 已
let videoNode = SKVideoNode(fileNamed: "video.mov")
let skScene = SKScene(size: CGSize(width: planeGeo.width * 1280,height: planeGeo.height * 720))
videoNode.position = CGPoint(x: skScene.size.width / 2,y: skScene.size.height / 2)
videoNode.size = skScene.size
skScene.addChild(videoNode)
以及独立的wiremock依赖
testImplementation ("org.springframework.boot:spring-boot-starter-test") {
exclude group : 'org.junit.vintage',module: 'junit-vintage-engine'
}
我正在尝试找出一种在 junit 5 中加载 classRule 或将其转换为扩展的方法,这似乎是代码最少的方法。
有没有人遇到过这些问题并解决了这个问题?我知道有 testImplementation "org.springframework.cloud:spring-cloud-contract-wiremock:${springCloudVersion}"
我可以扩展,但我找不到用于此的工件,谢谢!
解决方法
JUnit Jupiter 对 JUnit 4 Rules 的支持有限,但不包括对 @ClassRule
的支持。
因此,如果您有为 JUnit 4 编写的自定义类规则,最好的办法是使用 JUnit Jupiter 中的 BeforeAllCallback
和 AfterAllCallback
扩展 API 重写它。然后您可以通过 @ExtendWith
或 @RegisterExtension
register your extension。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。