全面介绍单元测试的经典之作[3]

发表于:2010-04-13来源:作者:点击数: 标签:单元经典之作
全面介绍 单元测试 的经典之作[3] 软件测试 三 测试用例 下面说说测试用例、输入数据及预期输出。输入数据是测试用例的核心,老纳对输入数据的定义是:被测试函数所读取的外部数据及这些数据的初始值。外部数据是对于被测试函数来说的,实际上就是除了局部变

  全面介绍单元测试的经典之作[3]  软件测试

  三 测试用例

  下面说说测试用例、输入数据及预期输出。输入数据是测试用例的核心,老纳对输入数据的定义是:被测试函数所读取的外部数据及这些数据的初始值。外部数据是对于被测试函数来说的,实际上就是除了局部变量以外的其他数据,老纳把这些数据分为几类:参数、成员变量、全局变量、IO媒体。IO媒体是指文件、数据库或其他储存或传输数据的媒体,例如,被测试函数要从文件或数据库读取数据,那么,文件或数据库中的原始数据也属于输入数据。一个函数无论多复杂,都无非是对这几类数据的读取、计算和写入。预期输出是指:返回值及被测试函数所写入的外部数据的结果值。返回值就不用说了,被测试函数进行了写操作的参数(输出参数)、成员变量、全局变量、IO媒体,它们的预期的结果值都是预期输出。一个测试用例,就是设定输入数据,运行被测试函数,然后判断实际输出是否符合预期。下面举一个与成员变量有关的例子:

  产品函数:

  void CMyClass::Grow(int years)

  {

  mAge += years;

  if(mAge < 10)

  mPhase = "儿童";

  else if(mAge <20)

  mPhase = "少年";

  else if(mAge <45)

  mPhase = "青年";

  else if(mAge <60)

  mPhase = "中年";

  else

  mPhase = "老年";

  }

  测试函数中的一个测试用例:

  

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