API测试(八)

发表于:2009-10-26 15:06

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:James D. McCaffrey    来源:51Testing软件测试网采编

  处理输入参数为空字符串的情况。

  问题

  如何测试传给待测API方法的参数为空字符串的情况。

  设计

  使用一个特殊的字符串标记来表示测试用例文件中的空字符串,并且在测试套件中加入相应的逻辑处理分支,把真正的空字符串作为参数传给待测API方法。

  方案

  创建如下测试用例数据:

0001:SubString:put:computer:true

0002:SubString:xyz:computer:false

0003:SubString:emptystring:computer:true

在测试套件中加入特殊的逻辑处理代码处理"emptystring"这个标记:

tokens = line.Split(':');

if (tokens[2] == "emptystring")//特殊输入

      arg1 = " ";

else

      arg1 = tokens[2];

bool actual = StringLib.Methods.SubString(arg1, tokens[3]);

if (actual == bool.Parse(tokens[4]))

      Console.WriteLine("Pass");

else

      Console.WriteLine("*FAIL*");

  注解

  当测试以字符串为参数的API方法时,应该总是测试字符串为空的情况。一种方法是,在测试用例文件里存储一个特殊的字符串标记,比如"emptystring",然后在程序读到这个标记的时候转入相应的处理分支。例如,设想正在测试一个名为StringLib的程序库,它包含一个 SubString()方法,这个方法接受两个字符串参数,如果第二个字符串包含第一个字符串,则返回true。在设计的时候,规定:如果传给它的第一个参数是空字符串,那么SubString()方法返回true。

  与输入值为null的情况不同,我们可以间接地在测试用例数据文件里存储空字符串。例如,如下测试用例数据:

0003:SubString::computer:true

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号