java - 如何在集成测试中结合仅客户端和仅服务器代码?

标签 java gwt integration-testing

我正在使用一种机制来传递嵌入的引导信息 将主机页面(servlet/jsp 组合)从服务器发送到 客户端。引导信息包含重要信息 在客户端启动期间需要,这样可以节省一个客户端/服务器 往返,从而加快应用程序的启动速度。

我正在使用 Gson 序列化引导信息并注入(inject) 它直接进入主页中的标签。信息是 使用 JS Overlay Types 在客户端上访问。因为路过 GWT 不支持从 JS 到 Java 的长值我正在使用自定义 JsonSerializer 将所有 long/Long 转换为字符串。

所有这些都工作正常,但有点脆弱。因此我愿意 验证集成测试中的正确行为,其中包括 服务器和客户端组件。这就是我跑的地方 遇到麻烦:Gson(在服务器端组件中使用)不是 GWT 兼容和 JS Overlay Types 显然不兼容 Java。

我的问题是:是否可以编写一个运行某些命令的 GWTTestCase 部分代码是纯 Java 的(即在集成服务器上)?如果不, 关于如何测试这个,您还有其他建议吗?

非常感谢! 迈克尔

最佳答案

使用 Gson 编写一个 servlet 进行测试,并使用 <servlet path="…" class="…" /> 进行映射。 gwt.xml 中的标记(专门为您的测试创建一个继承自应用程序/生产模块的标记);然后为客户端编写一个 GWTTestCase。

看看 GWT 如何测试自身(RequestBuilder、GWT-RPC、FormPanel),例如http://code.google.com/p/google-web-toolkit/source/browse/trunk/user/test/com/google/gwt/http/

关于java - 如何在集成测试中结合仅客户端和仅服务器代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7389079/

相关文章:

java - 复制数组并使用 printall() 方法将其大小加 1 以返回新数组中的所有 int

java - 为什么我们需要在二叉树子类中进行前序、中序和后序遍历的字段?

gwt - 如何获取 smartgwt 小部件的 html 元素 ID?

java - SmartGWT - 编辑 ListGrid 和 EditingNew 时的不同行为?

asp.net-mvc - 如何从 jake 运行和停止 IISExpress

java - Java中儒略日期的解释

c# - Java 与 C# : Are there any studies that compare their execution speed?

java - GWT 相对宽度

c# - 使用 MSTest 仅运行所有测试集的一部分

java - jacoco agent on wildfly - 0% 覆盖类(class)