个性化阅读
专注于IT技术分析

GWT测试

本文概述

JUnit提供了经过时间检验的框架来测试GWT应用程序。它包含许多工具, 可以根据用户需要直接创建测试用例。

现在, 基于Web项目STOCK EXCHANGE(在上一章中创建), 我们执行JUnit测试。

  1. 像所有GWT JUnit测试用例一样, StockExchangeTest类在com.google.gwt.junit.client包中扩展了GWT测试用例类。你可以通过扩展此类来创建其他测试用例。
  2. StockExchangeTest类具有抽象方法(getModuleName), 该方法必须返回GWT模块的名称。对于StockExchange, 即com.google.gwt.sample.stockexchange.StockExchange。
  3. StockExchangeTest类是使用一个示例测试用例重言式测试testSimple生成的。此testSimple方法使用从JUnit Assert类继承的许多断言函数之一。
  4. assertTrue(boolean)函数断言传入的布尔参数的值为true。如果不是, 则在JUnit中运行时, testSimple测试将失败。

StockExchangeTest.java

package com.google.gwt.sample.stockexchange.client;
    import com.google.gwt.junit.client.GWTTestCase;
    /**
     * GWT JUnit tests must extend GWTTestCase.
 */
public class StockExchangeTest extends GWTTestCase {                       
      /**
       * Must refer to a valid module that sources this class.
   */
  public String getModuleName() {    
  return "com.google.gwt.sample.stockexchange.StockExchange";
  }
      /**
       * Add as many tests as you like.
   */
  public void testSimple() {                                              
assertTrue(true);
  }
    }

运行单元测试

你可以通过四种方式运行JUnit测试:

  1. 在命令行中, 使用junitCreator生成的脚本
  2. 在Eclipse中, 使用Google Eclipse插件
  3. 在Eclipse中, 使用由webAppCreator生成的Eclipse启动配置文件
  4. 在手动测试模式下

我们正在使用Eclipse和Google插件:

Google Eclipse插件可轻松在Eclipse中运行测试。

  • 在开发模式下运行JUnit测试。
  • 在Package Explorer中, 右键单击要运行的测试用例, 选择Run As> GWT Junit Test
  • simpleTest执行无错误。
GWT测试1
  • 在生产模式下运行JUnit测试。
  • 在Package Explorer中, 右键单击要运行的测试用例, 然后选择Run As> GWT Junit Test(生产模式)
  • simpleTest执行无错误。

写作单元测试

  • 编写一个JUnit测试, 以验证StockPrice类的构造函数是否正确设置了新对象的实例字段。
  • 向StockExchangeTest类添加testStockPriceCtor方法, 如下所示。
/**
     * Verify that the instance fields in the StockPrice class are set correctly.
 */
public void testStockPriceCtor() {
  String symbol = "XYZ";
  double price = 70.0;
  double change = 2.0;
  double changePercent = 100.0 * change / price;
  StockPrice sp = new StockPrice(symbol, price, change);
  assertNotNull(sp);
  assertEquals(symbol, sp.getSymbol());
  assertEquals(price, sp.getPrice(), 0.001);
  assertEquals(change, sp.getChange(), 0.001);
  assertEquals(changePercent, sp.getChangePercent(), 0.001);
}

在开发模式下重新运行StockExchangeTest。

两项测试均应通过:

[junit] Running com.google.gwt.sample.stockexchange.client.StockExchangeTest
[junit] Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 12.451 sec
赞(0)
未经允许不得转载:srcmini » GWT测试

评论 抢沙发

评论前必须登录!