0

我正面临 JUnit 测试的问题。我编写了一个 JUnitRunner,用于执行 WrapperTest。

WrapperTest 生成一个普通的 JUnit-Test 和一个需要的文件。如果我想执行生成的测试的方法,我的 Runner 在开发工作区中搜索“NeededClass”。

我正在 JUnit-Workspace 中生成所需的类,我希望测试使用这个生成的类文件,所以我可以在我的 Develop-Workspace 中删除这个文件。

那么,如何在 JUnit-Workspace 中执行生成的测试呢?(他将在 JUnit-Workspace 中查找所需的文件)在此处输入图像描述

编辑:好的,我发现,这是一个 ClassLoader 问题...... Develop Workspace 有另一个 ClassLoader 而不是 JUnit-Workspace,这会导致奇怪的错误,例如“类不是相同的类异常”(java.lang .ClassCastException: org.junit.runner.JUnitCore 不能强制转换为 org.junit.runner.JUnitCore)。看起来我必须通过反射来解决这个问题,这是非常肮脏的。

4

1 回答 1

-1

查看 Maven 及其构建生命周期。您可以将正在执行的代码生成连接到 generate-test-sources 阶段,然后让它正常参与测试阶段。

有关示例,请参见此问题。

于 2015-01-15T14:03:23.450 回答