3

我正在使用 GWT 2.4。我无法运行我最近在新包中创建的一些 GWTTestCase 文件。我的文件在现有包中正确运行,但我无法弄清楚为什么像下面这样的测试会失败。我正在使用 Maven 3.0.3 来启动这些。这是我配置插件的方式...

        <!-- GWT Maven Plugin -->
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>gwt-maven-plugin</artifactId>
            <version>${gwtVersion}</version>
            <executions>
                <execution>
                    <id>clean-compile</id>
                    <goals>
                        <goal>clean</goal>
                        <goal>compile</goal>
                    </goals>
                </execution>
                <execution>
                    <id>run-gwt-tests</id>
                    <phase>test</phase>
                    <goals>
                        <goal>test</goal>
                    </goals>
                </execution>
            </executions>
            <!-- Plugin configuration. There are many available options, see gwt-maven-plugin 
                documentation at codehaus.org -->
            <configuration>
                <runTarget>index.html</runTarget>
                <hostedWebapp>${webappDirectory}</hostedWebapp>
                <i18nMessagesBundle>com.myco.clearing.product.client.Messages</i18nMessagesBundle>
            </configuration>
        </plugin>

这是测试文件的测试主要部分...

package com.myco.product.client.view;
...
public class GwtTestAppView extends GWTTestCase {

private AppView appView;

@Override
public String getModuleName() {
    return "com.myco.clearing.product.ProductPlusJUnit";
}   // getModuleName

public void gwtSetUp() {
    appView = new AppView();
    RootPanel.get().add(appView);
} // gwtSetup

public void testShowLoading() { 
    testShowLoading(true);
}   // testShowLoading

这是我运行“mvn clean test”时遇到的错误

[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running junit.framework.TestSuite@c40c80
[INFO] Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 2.656 sec <<< FAILURE!
[INFO] testShowLoading(com.myco.product.client.view.GwtTestAppView)  Time elapsed: 2.656 sec  <<< ERROR!
[INFO] com.google.gwt.junit.JUnitFatalLaunchException: The test class 'com.myco.product.client.view.GwtTestAppView' was not found in module 'com.myco.clearing.product.ProductPlusJUnit'; no compilation unit for that type was seen
[INFO]  at com.google.gwt.junit.JUnitShell.checkTestClassInCurrentModule(JUnitShell.java:743)
[INFO]  at com.google.gwt.junit.JUnitShell.runTestImpl(JUnitShell.java:1346)
[INFO]  at com.google.gwt.junit.JUnitShell.runTestImpl(JUnitShell.java:1309)
[INFO]  at com.google.gwt.junit.JUnitShell.runTest(JUnitShell.java:653)
[INFO]  at com.google.gwt.junit.client.GWTTestCase.runTest(GWTTestCase.java:441)

[INFO]  at junit.framework.TestCase.runBare(TestCase.java:134)
[INFO]  at junit.framework.TestResult$1.protect(TestResult.java:110)
[INFO]  at junit.framework.TestResult.runProtected(TestResult.java:128)
[INFO]  at junit.framework.TestResult.run(TestResult.java:113)
[INFO]  at junit.framework.TestCase.run(TestCase.java:124)
[INFO]  at com.google.gwt.junit.client.GWTTestCase.run(GWTTestCase.java:296)
[INFO]  at junit.framework.TestSuite.runTest(TestSuite.java:232)
[INFO]  at junit.framework.TestSuite.run(TestSuite.java:227)
[INFO]  at junit.framework.TestSuite.runTest(TestSuite.java:232)
[INFO]  at junit.framework.TestSuite.run(TestSuite.java:227)
[INFO]  at org.codehaus.mojo.gwt.test.MavenTestRunner.doRun(MavenTestRunner.java:105)
[INFO]  at junit.textui.TestRunner.start(TestRunner.java:180)
[INFO]  at org.codehaus.mojo.gwt.test.MavenTestRunner.main(MavenTestRunner.java:63)
[INFO]
[INFO] testHideLoading(com.myco.product.client.view.GwtTestAppView)  Time elapsed: 0 sec  <<< ERROR!

正如我所说,我能够很好地运行位于不同包(名为 com.myco.product.client.xmltohtml)中的 gwt 测试,所以我不知道有什么不同。问题是什么?

4

1 回答 1

2

糟糕,我的测试类不在我正在加载的模块识别的包中。包应该是“com.myco.clearing.product.client.view”。更改包修复了一切。

于 2012-01-24T20:03:37.217 回答