做个记号,用gwt-test-utils.jar写gwt单元测试
1. source code
public class SimpleComposite extends Composite {
private Button button = new Button();
private Label label = new Label();
public SimpleComposite() {
button.setHTML("display something");
// The wrapper panel
VerticalPanel vPanel = new VerticalPanel();
vPanel.setWidth("100%");
vPanel.setHorizontalAlignment(VerticalPanel.ALIGN_CENTER);
vPanel.add(button);
vPanel.add(label);
// All composites must call initWidget() in their constructors.
initWidget(vPanel);
VerticalPanel dialogVPanel = new VerticalPanel();
dialogVPanel.setWidth("100%");
dialogVPanel.setHorizontalAlignment(VerticalPanel.ALIGN_CENTER);
// Add click handlers to the button
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent arg0) {
label.setText("The button was clicked !");
}
});
}
}
2. Test code
public class SimpleCompositeTest extends AbstractGwtTest {
// the tested composite
private SimpleComposite composite;
@Before
public void init() throws Exception {
// instanciate the composite
composite = new SimpleComposite();
}
@Test
public void checkClick() {
// With this helper method, we can get private Widget in the composite
Button button = GwtTestReflectionUtils.getPrivateFieldValue(composite, "button");
Label label = GwtTestReflectionUtils.getPrivateFieldValue(composite, "label");
// ensure label is empty
Assert.assertEquals(null, label.getText());
// simule the click event with AbstractGwtTest method
Browser.click(button);
// assert the label has been filled
Assert.assertEquals("The button was clicked !", label.getText());
}
}
分享到:
相关推荐
通常,GWT单元测试涉及到模拟(mocking)服务和处理异步行为,因为GWT应用程序经常需要与服务器进行交互,并且很多操作是非同步的。 标签 "源码" 和 "工具" 提示我们,这篇内容可能包括了实际的代码示例以及可能...
使用GWTTestCase测试GWT应用程序可能会很痛苦-比使用纯Java测试要慢,并且您不能使用基于反射的工具(例如模拟框架)。 但是,如果您尝试使用正常的测试用例来测试窗口小部件,则可能会遇到以下错误: ERROR: GWT....
6. **GWT测试**:提供对JUnit测试的支持,可以在Eclipse环境中直接运行和管理GWT单元测试。 然而,描述中提到的“Software Updates有时候慢的叫人无法接受”可能是指使用Eclipse内置的更新机制来下载和安装插件时...
9. **单元测试**:GWT提供JUnit支持,允许在浏览器环境中进行客户端代码的单元测试。 10. **CSS和主题**:GWT应用可以通过自定义皮肤和CSS样式来改变外观,提供一致的用户体验。 在学习GWT的过程中,练习...
9. **单元测试**:GWT提供了JUnit支持,使得开发者可以在服务器端进行客户端代码的单元测试。 10. **社区支持**:GWT拥有活跃的开发者社区,提供了丰富的教程、示例和第三方库,有助于开发者快速解决问题和提升开发...
gwt-maven-plugin是用于Maven的GWT插件,它简化了GWT项目的构建流程,包括编译GWT模块、执行GWT单元测试以及生成部署包等。使用这个插件,开发者可以集成GWT项目到Maven的构建生命周期中,享受到Maven带来的自动化...
6. **单元测试**:集成GWT的JUnit测试框架,支持编写和运行客户端和服务器端的单元测试。 7. **部署**:支持将GWT应用打包成WAR文件,方便部署到Web服务器。 8. **性能优化**:提供优化向导,帮助开发者进行代码...
8. **单元测试**:GWT提供了JUnit支持,用于编写和运行客户端代码的单元测试,了解如何编写和运行这些测试。 9. **模块化开发**:GWT支持模块化开发,通过.gwt.xml文件定义模块,理解如何组织和管理项目模块。 10....
- 测试和调试可以通过GWT提供的Hosted Mode进行。 3. **用户界面组件**: - GWT提供了一套丰富的UI组件库,如Button、TextBox、ListBox等,这些组件可以轻松地构建复杂的用户界面。 - 支持事件处理机制,如点击...
GWT提供了模拟浏览器环境的测试工具,如`GwtTestCase`,可以在编译时执行单元测试。 ### GWT进阶 **1. GWT Compile优化** GWT编译器可以进行多种优化,如死代码删除、类型推断、按需加载等,以减小生成的...
4. **单元测试**:GWT提供了JUnit支持,允许在客户端代码上进行单元测试。 5. **国际化的支持**:GWT提供了多语言支持,方便应用的全球化。 6. **优化的性能**:GWT的编译器通过各种优化技术,如Dead Code ...
9. **单元测试**:GWT提供JUnit支持,可以在本地运行JavaScript单元测试,确保代码质量。 10. **GWT Studio**:GWT 2.1.0可能包含GWT Studio,这是一个可视化的设计工具,帮助开发者快速构建UI布局。 11. **移动...
9. **单元测试**: GWT 提供了JUnit支持,可以在浏览器环境中进行客户端代码的单元测试。 10. **GWT 编译器**: GWT的编译器将Java代码转换为优化过的JavaScript,包括对代码的压缩、混淆和优化,以提高加载速度和...
GWT还提供了丰富的功能,例如异步通信(RPC)、本地存储、事件处理、国际化支持、CSS样式和主题,以及强大的单元测试框架。此外,GWT社区还提供了许多第三方库,如GWT-Bootstrap和GWT-Platform,这些可以帮助开发者...
5. **单元测试**:GWT的JUnit测试框架允许开发者在服务器端运行客户端代码的单元测试,确保代码质量。 五、Windows下的调试与优化 在Windows环境下,GWT的开发服务器提供了强大的调试工具,如Super Dev Mode,允许...
此外,书中可能还涵盖了自定义Widget、国际化、CSS样式控制、单元测试等方面的内容。 对于“new一个新的web application project后copy代码”,这可能是建议读者先建立一个基础的GWT项目结构,然后将书中提供的源...
这个项目是一个循序渐进的 Spring...GWT 单元测试 下一步: GXT的使用 运行应用程序 在命令行中 通过执行mvn clean install命令构建项目。 现在我们有了应用程序战争文件。 如果 Tomcat 正在运行,请停止/终止它。 ~/
6. **GWT测试与调试**:GWT提供了一个强大的本地开发服务器和模拟器,资料会教导如何利用这些工具进行单元测试、集成测试,以及如何使用GWT DevMode进行高效调试。 7. **性能优化**:讲解如何通过代码分割、优化...
8. **单元测试**:GWT提供了JUnit支持,可以编写单元测试来验证代码的功能。在登录示例中,可能会有针对验证逻辑和RPC调用的测试。 通过深入研究这个GwtDemo helloworld项目,开发者不仅可以了解GWT的基本用法,还...