Java Getting org.eclipse.core.runtime.AssertionFailedException:使用StatusManager.getManager()时JUnit testcase中的异常

Java Getting org.eclipse.core.runtime.AssertionFailedException:使用StatusManager.getManager()时JUnit testcase中的异常,java,eclipse,junit,Java,Eclipse,Junit,我正在编写一个测试用例,用于测试使用StatusManager.getManager()方法的自定义类。 但是我的测试用例未能获取StatusManager.getManager()并引发异常 少了什么吗。我还尝试使用mock it来模拟我的自定义类实例,并填充这个StatusManager.getManager()实例 org.eclipse.core.runtime.AssertionFailedException: assertion failed: The application has

我正在编写一个测试用例,用于测试使用
StatusManager.getManager()
方法的自定义类。 但是我的测试用例未能获取StatusManager.getManager()并引发异常

少了什么吗。我还尝试使用mock it来模拟我的自定义类实例,并填充这个StatusManager.getManager()实例

org.eclipse.core.runtime.AssertionFailedException: assertion failed: The application has not been initialized.
    at org.eclipse.core.runtime.Assert.isTrue(Assert.java:110)
    at org.eclipse.core.internal.runtime.InternalPlatform.assertInitialized(InternalPlatform.java:139)
    at org.eclipse.core.internal.runtime.InternalPlatform.addLogListener(InternalPlatform.java:132)
    at org.eclipse.core.runtime.Platform.addLogListener(Platform.java:498)
    at org.eclipse.ui.statushandlers.StatusManager.<init>(StatusManager.java:131)
    at org.eclipse.ui.statushandlers.StatusManager.getManager(StatusManager.java:125)
    at vwg.connect.rac.api.logger.internal.logging.test.DemoTest.test(DemoTest.java:13)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
org.eclipse.core.runtime.AssertionFailedException:断言失败:应用程序尚未初始化。
位于org.eclipse.core.runtime.Assert.isTrue(Assert.java:110)
位于org.eclipse.core.internal.runtime.InternalPlatform.assertInitialized(InternalPlatform.java:139)
位于org.eclipse.core.internal.runtime.InternalPlatform.addLogListener(InternalPlatform.java:132)
位于org.eclipse.core.runtime.Platform.addLogListener(Platform.java:498)
位于org.eclipse.ui.statushandlers.StatusManager。(StatusManager.java:131)
位于org.eclipse.ui.statushandlers.StatusManager.getManager(StatusManager.java:125)
在vwg.connect.rac.api.logger.internal.logging.test.demost.test(demost.java:13)中
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(未知源)
在sun.reflect.DelegatingMethodAccessorImpl.invoke处(未知源)
位于java.lang.reflect.Method.invoke(未知源)
位于org.junit.runners.model.FrameworkMethod$1.runReflectVeCall(FrameworkMethod.java:50)
位于org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
位于org.junit.runners.model.FrameworkMethod.invokeeexplosive(FrameworkMethod.java:47)
位于org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
位于org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
位于org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
位于org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
位于org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
位于org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
位于org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
访问org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
位于org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
位于org.junit.runners.ParentRunner.run(ParentRunner.java:363)
位于org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
位于org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

添加测试用例+下的类test@MaciejKowalski:不理解。首先添加失败的测试方法。如果不正确初始化Eclipse工作区,您不能仅使用Eclipse核心代码位。看看使用