gpt4 book ai didi

java - 在 xtext 环境中将 JUnit4 升级到 JUnit5

转载 作者:太空宇宙 更新时间:2023-11-04 09:26:22 27 4
gpt4 key购买 nike

我正在开发一个使用 xtext 的复杂项目。我的工作是将测试从 JUnit4 升级到 JUnit5。问题是,对于 JUnit 测试,*.mwe2 文件生成了 2 个“InjectorProvider”类,我无法弄清楚如何将这些文件的生成升级到 JUnit5。

*.mwe2 文件当前包含在其工作流程部分中org.eclipse.xtext.generator.Generator 其中包含:fragment = junit.Junit4Fragment 自动注入(inject){}

Generator 已弃用,我不明白如何将完整的 Generator 迁移到新的/建议的 XtextGenerator。同时我找不到 JUnit4 片段的替代品。

工作流程:

Workflow {
bean = //...
component = //...
component = //...
component = Generator {
pathRtProject = runtimeProject
pathUiProject = "${runtimeProject}.ui"
pathTestProject = "${runtimeProject}.tests"
projectNameRt = projectName
projectNameUi = "${projectName}.ui"
encoding = encoding
language = auto-inject {
uri = grammarURI
fileExtensions = fileExtensions
fragment = //... many of these fragments
fragment = junit.Junit4Fragment auto-inject {}
}
}

如果您能提供有关如何将其迁移到新的 org.eclipse.xtext.xtext.generator.XtextGenerator 或如何使 JUnit5 片段发挥作用或我必须阅读哪些主题才能完成此操作的任何提示或帮助,我将不胜感激。

如果这太模糊或证明了我的无能,我很抱歉,但我只是一个自己的实习生,试图解决这个问题。请保持简单,我的经验有限。

最佳答案

看起来我的项目已经很老了,我正在从 xtext 跳过几个大版本。万一有人登陆这里,我设法通过使用新的 XtextGenerator (下面的代码)并重组项目来取得进一步的进展。特别是新的 Generator 需要 .ide 包。因此,我创建了一个新项目,使用向导创建了一个 JUnit 5 项目,并复制/重命名了所需的目录。现在我必须修复发生的错误并将我的项目重新组合在一起。这是新的生成器模板:

component = XtextGenerator {
configuration = {
project = model.project.StandardProjectConfig {

baseName = "com.xxx.xxx.dsl.xxx"
rootPath = ".."
runtimeTest = {
enabled = true
}
eclipsePlugin = {
enabled = true
}
eclipsePluginTest = {
enabled = false
}
createEclipseMetaData = true
}
code = {
encoding = "UTF-8"
lineDelimiter = "\r\n"
fileHeader = "/*\n * generated by Xtext \${version}\n */"
}
}
language = StandardLanguage {
name = "com.xxx.xxx.xxx.xxx.xxxDSL"
fileExtensions = "xxx"

serializer = {
generateStub = true
}
validator = {
// composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
// Generates checks for @Deprecated grammar annotations, an IssueProvider and a corresponding PropertyPage
generateDeprecationValidation = true
}
junitSupport = {
junitVersion = "5"
}
}

关于java - 在 xtext 环境中将 JUnit4 升级到 JUnit5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57658130/

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