2

我想从主类执行测试。我努力了:

public static void main(String[] args) {
    JUnitCore runner = new JUnitCore();
    runner.run(TestClass.class);
}

public static void main(String[] args) {
    JUnitCore.main(TestClass.class.getName());
}

但是,此测试使用 Spring 框架,并且未加载 bean。我的测试类如下所示:

@NoDataSet
@ContextConfiguration(locations = { "/.../xxx-beans.xml", "/.../yyy-beans.xml",
                    "..." }, inheritLocations = false)
@RunWith(SpringJUnit4ClassRunner.class)
public class TestClass extends AbstractTransactionalJUnit4SpringContextTests {
    @BeforeClass
    public static void beforeClass() {
        // some config
    }

    @Test
    public void testSomething() {
        // testsomething
    }
}

我使用了很多 bean,因此我无法手动加载 bean。

还有其他方法可以开始这个测试吗?

4

3 回答 3

3

尝试

new JUnitCore().run(new SpringJUnit4ClassRunner(Test1.class));

或简单地添加

@RunWith(SpringJUnit4ClassRunner.class) to TestClass
于 2013-02-19T11:59:30.523 回答
0

该类缺少@RunWith(SpringJUnit4ClassRunner.class)注释。如果没有此注解,即使您的构建工具或 IDE 也无法正确执行它。

于 2013-02-19T12:19:39.623 回答
0

我发现了问题。显然,我的工作目录设置为不正确的位置。

我现在使用以下主要方法:

public static void main(String[] args) {
    JUnitCore runner = new JUnitCore();
    runner.run(TestClass.class);
}
于 2013-02-19T13:26:47.087 回答