JUnit 使用 2 个模块测试 gwt Web 应用程序

发布于 2024-12-11 00:19:33 字数 954 浏览 0 评论 0原文

我目前正在使用 gwt 2.3 和 smartgwtpower 2.5 nightly,并在 Linux 上使用 Eclipse。我的 Web 应用程序使用内部开发的通用代码,并将其打包到名为 commonsmartgwt.jar 的 jar 中。此 jar 中是入口点类并具有其自己的 gwt.xml 文件。在我的 Web 应用程序的 gwt.xml 文件中,我从入口点类继承

    <inherits
    name="common.code.Common"/>

,并使用入口点 common.code.client.Common 作为我的 Web 应用程序的入口点。我的网络应用程序中的所有类都扩展了公共代码中的类。编译及运行作品 很好,但是当我尝试使用 eclipse 方法 Run As > 运行测试时GWT Junit 测试,出现以下错误。 无法在类路径中找到 common/code/Common.gwt.xml;可能是一个错字, 或者您可能忘记包含源的类路径条目。 如果我在类下创建文件夹 common/code/ 并从 commonsmartgwt.jar 中提取 .gwt.xml 文件并将其放入该目录中,则会收到不同的错误。

    'my.package.client.MyFirstTest' was not found in module
    'common.client.Common'; no compilation unit for that type was seen

有没有办法对该应用程序进行单元测试。如果我的情况不清楚,请告诉我。如果我将入口点从通用代码移至我的 Web 应用程序会怎样?我尝试按照此处的说明进行操作:[错误解决][1]

  [1]: http://raibledesigns.com/rd/entry/testing_gwt_applications "Link"

,但这不起作用。

I am currently using gwt 2.3 and smartgwtpower 2.5 nightly and using Eclipse on Linux. My web app is using common code, developed in house, and packaged to a jar called commonsmartgwt.jar. In this jar is the entry point class and has its own gwt.xml file. In my web app's gwt.xml file I inherit from the entry point class

    <inherits
    name="common.code.Common"/>

and I use the entry point common.code.client.Common as my web app's entry point. All my classes in my web app extend classes in the common code. Compilation and running works
fine but when I try to run a test using eclipse method Run As > GWT Junit Test, I get the following error.
Unable to find common/code/Common.gwt.xml on your classpath; could be a typo,
or maybe you forgot to include a classpath entry for source.
If I create the folder common/code/ under classes and extract the .gwt.xml file from the commonsmartgwt.jar and put it in that directory, I get a different error.

    'my.package.client.MyFirstTest' was not found in module
    'common.client.Common'; no compilation unit for that type was seen

Is there a way to Unit test this application. Please let me know if my situation is not clear. What if I moved the entry point from the common code to my web app? I tried following the instructions here: [Error resolution][1]

  [1]: http://raibledesigns.com/rd/entry/testing_gwt_applications "Link"

but this did not work.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

少钕鈤記 2024-12-18 00:19:33

我在 getModuleName 测试方法中返回了不正确的模块名称。

I had the incorrect module name returning in the getModuleName test method.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文