我对Google (GWT)的概念非常陌生,据我所知,它是一个Java和工具集,它允许您用Java编写客户端代码,并且在某个时候(作为构建的一部分,或者在HttpRequests进来时动态地),它从您的生成客户端JS (如果我在这方面有任何错误,请纠正我!)。
假设我或多或少是正确的,我想知道你是如何对它进行单元测试的!您是为JUnit代码编写JSUnit测试,还是为结果/生成的JavaScript编写JSUnit测试?如果您使用JSUnit,您如何知道生成函数的名称和内部工作方式,因为GWT优化并缩小了它输出的所有内容?提前感谢!
发布于 2012-06-29 13:34:01
首先,您是正确的: GWT从客户端Java代码生成Javascript代码。然而,为了速度起见,我们在Java中测试我们所能做的一切。
您可以编写标准的JUnit测试,并从JUnit的TestCase或GWTTestCase扩展。
这两者的主要区别是:对于使用任何类型的原生javascript代码的每个类都使用GWTTestCase (小部件和图形元素如下所示)。编译器将使用“无头”浏览器将这些测试作为javascript代码进行测试,因为与标准的JUnit TestCase相比,这些测试非常慢。
这就是为什么其他所有东西都使用标准的TestCase (因为它作为字节码运行得更快),这也是为什么使用MVP模式将视图(代码可以用GWTTestCase测试)与程序的其余部分(可以用TestCase测试的代码)分开是一个好主意。
发布于 2012-06-28 16:50:10
看看这里:https://developers.google.com/web-toolkit/doc/latest/DevGuideTesting
基本上,您一直在使用JUnit :纯Java (如果可能的话),GWTTestCase (在Java单元中的模拟浏览器中运行,或者在DevMode或编译成JS -aka prod模式的真正浏览器中运行),最后使用Selenium/WebDriver进行集成/验收测试。
https://stackoverflow.com/questions/11249294
复制相似问题