GWTTestCase - 没有测试发现
问题描述:
我在eclipse juno中运行得到1.7.5试图设置junit测试。我从juno插件文件夹中添加了junit jar。我为junit 4设置了选项。GWTTestCase - 没有测试发现
我创建了一个新的get项目'MyJunitProject',并在客户端'MyFirstGWTTestCase'下创建了一个类。这是代码。
package com.client;
import org.junit.Test;
import com.google.gwt.junit.client.GWTTestCase;
public class MyFirstGWTTestCase extends GWTTestCase {
@Override
public String getModuleName() {
return "com.MyJunitProject";
}
@Test
public void myFirstTest() {
assertTrue(true);
}
}
我得到以下错误:
junit.framework.AssertionFailedError: No tests found in com.client.MyFirstGWTTestCase
at junit.framework.Assert.fail(Assert.java:50)
at junit.framework.TestSuite$1.runTest(TestSuite.java:97)
at junit.framework.TestCase.runBare(TestCase.java:134)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
答
不幸的是,GWT测试用例都是使用JUnit 3模型运行的,而不是JUnit 4.这意味着@Test
注释并不意味着什么,并且您的方法必须以test这个词开头。因此,而不是
//wrong! at least as of GWT 2.5 in a GWTTestCase
@Test
public void myFirstTest() {
assertTrue(true);
}
你应该写
public void testMyFirstTestCase() {
assertTrue(true);
}
不要紧,什么方法名的其余部分,只要它开始“测试”。
答
如果您正在使用的log4j/SLF4J,检查是否有在的log4j测试/资源文件夹
我曾试图JUnit 3中,得到了与org.mortbay.thread.Timeout异常的错误性。我发现这篇文章http://blog.elitecoderz.net/org-mortbay-thread-timeout-exception-on-new-gwt-webapplication-with-instantiations-gwt-designer-or-windowbuilder-pro/2010/05/当我将GWT库移到appengine的上方时,问题就消失了。现在我在做生意了。谢谢。 – 2013-03-01 00:36:02