单元测试 的一些概念 l 几个相关的概念 白盒测试 —— 把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对 测试人员 是公开的。 回归测试 —— 软件或环境的修复或更正后的 “ 再测试 ” , 自动测试 工具对这类测试尤其有用。 单" name="description" />

J2ME采用单元测试是否可行?

发表于:2007-06-19来源:作者:点击数: 标签:单元测试j2me
MI LY: 宋体"> 单元测试 的一些概念 l 几个相关的概念 白盒测试 —— 把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对 测试人员 是公开的。 回归测试 —— 软件或环境的修复或更正后的 “ 再测试 ” , 自动测试 工具对这类测试尤其有用。 单

MILY: 宋体">单元测试的一些概念

l         几个相关的概念

白盒测试——把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人员是公开的。

回归测试——软件或环境的修复或更正后的再测试自动测试工具对这类测试尤其有用。

单元测试——是最小粒度的测试,以测试某个功能或代码块。一般由程序员来做,因为它需要知道内部程序设计和编码的细节。

JUnit ——是一个开发源代码的Java测试框架,用于编写和运行可重复的测试。他是用于单元测试框架体系xUnit的一个实例(用于java语言)。主要用于白盒测试,回归测试。

l         单元测试概述

单元测试的好处

A、提高开发速度——测试是以自动化方式执行的,提升了测试代码的执行效率。

B、提高软件代码质量——它使用小版本发布至集成,便于实现人员除错。同时引入重构概念,让代码更干净和富有弹性。

C、提升系统的可信赖度——它是回归测试的一种。支持修复或更正后的再测试,可确保代码的正确性。

l         单元测试的针对对象

A、面向过程的软件开发针对过程。

B面向对象的软件开发针对对象。

C、可以做类测试,功能测试,接口测试(最常用于测试类中的方法)。

移动平台单元测试工具和框架

目前的最流行的单元测试工具是xUnit系列框架,常用的根据语言不同分为JUnitjava),CppUnitC++),DUnit Delphi ),NUnit.net),PhpUnitPhp )等等。该测试框架的第一个和最杰出的应用就是由Erich Gamma (《设计模式》的作者)和Kent BeckXPExtreme Programming)的创始人 )提供的开放源代码的JUnit。在移动平台上,目前只有Jbuilder 2005MicroUnitTesting框架,这个框架就是JunitJ2ME平台上的扩展。

l         JUnit的特征

A、使用断言方法判断期望值和实际值差异,返回Boolean值。

B、测试驱动设备使用共同的初始化变量或者实例。

C、测试包结构便于组织和集成运行。

D、支持图型交互模式和文本交互模式。 (MicroUnitTesting可以将测试结果显示到手机屏幕上,个人认为是鸡肋功能

l         JUnit框架组成

A、对测试目标进行测试的方法与过程集合,可称为测试用例(TestCase)

B、测试用例的集合,可容纳多个测试用例(TestCase),将其称作测试包(TestSuite)

C、测试结果的描述与记录。(TestResult)

D测试过程中的事件监听者(TestListener)

E、每一个测试方法所发生的与预期不一致状况的描述,称其测试失败元素(TestFailure)

FJUnit Framework中的出错异常(AssertionFailedError)。

可行性分析

l         JUnit的应用来分析

A、 测试驱动开发的重要组成部分,应该在代码编写之前编写测试用例

B、 单元测试实际上是用穷举法列出所用可能性,针对每一种可能都有测试用例。(AI怎么测?能穷举吗?

C、 对于drawImage这样的方法,只靠断言(Assertion)不能得到我们期望的测试结果(断言图片画出来没有?不如直接用肉眼看来的快。那么如何断言图片是否显示正确?目前没有发现相应的框架,还是直接用肉眼看来的快。

l         从移动游戏应用的特殊性来分析

A、  面对对象特性不强(非常非常非常的差!!!),主要是游戏的性能和容量的限制。

B、  类方法功能不够明确,针对一个方法设计用例十分困难。比如AI的状态机,状态之间的切换牵涉到太多的变量,参数。各种变量参数之间的组合可能有上百种,无法设计用例。

C、  游戏应用的重要部分在显示部分,目前没有发现测试显示部分的框架。

原文转自:http://www.ltesting.net