本人QQ:381834158 欢迎加入计算机翻译,交流群:32474154。 本人邮箱:axxiao@sohu.com

测试函数的测试用例

上一篇 / 下一篇  2008-09-05 12:10:13 / 个人分类:测试心得

   一天,主管要俺测试函数,倒是被吓了一跳。鄙人孤陋寡闻,没见过这方面的测试和用例。于是发明了一套,拿出来给各位长老点评。以下是设计的用例:


 

       测试用例002
函数原型:static string InterceptString(string stringToSub, int length)                                      函数功能:截取字符串
输入数据输出数据
American,length为3 Ame…
为空,length为3空行
123456,length为3123…
本人在北京一所民办高校,length为6本人在…
ccccccc,length为3ccc
<注释>,length为3<注...
<注释>,length为3<注...
测试表明,该函数实现了转换功能。可以正常使用。在特殊情况下会失效,如输入日文字符(函数使用的是匹配中文字符正则表达式)

 

 

 

 

 

 由于测试的是网站(asp.net),于是创建了一个网站工程。以下是驱动部分的代码(其实俺并不知驱动是啥):

protected void Page_Load(object sender, EventArgs e)
    {
        string str1 = test.InterceptString("American",3);
        Response.Write(str1);
        Response.Write("<br/>");

        string str2 = test.InterceptString("", 3);
        Response.Write(str2);
        Response.Write("<br/>");

        string str3 = test.InterceptString("12345", 3);
        Response.Write(str3);
        Response.Write("<br/>");

        string str4 = test.InterceptString("本人在北京一所民办高校(哪个学校不说了)里面做程序开发,主要做的是招生系统。因为就我一个程序员,也算是技术总监了!", 6);
        Response.Write(str4);
        Response.Write("<br/>");

        string str5 = test.InterceptString("cccccc", 3);
        Response.Write(str5);
        Response.Write("<br/>");

        string str6 = test.InterceptString("<注释>", 3);
        Response.Write(str6);
        Response.Write("<br/>");

        string str7 = test.InterceptString("<注释>", 3);
        Response.Write(str7);
        Response.Write("<br/>");
    }

在App_code下兴建了一个类,是被调用的函数:

    public static string InterceptString(string stringToSub, int length)
        {
            Regex regex = new Regex("[\u4e00-\u9fa5]+", RegexOptions.Compiled);
            char[] stringChar = stringToSub.ToCharArray();
            StringBuilder sb = new StringBuilder();
            int nLength = 0;
            for (int i = 0; i < stringChar.Length; i++)
            {
                if (regex.IsMatch((stringChar[i]).ToString()))
                {
                    nLength += 2;
                }
                else
                {
                    nLength = nLength + 1;
                }

                if (nLength <= length)
                {
                    sb.Append(stringChar[i]);
                }
                else
                {
                    break;
                }
            }
            if (sb.ToString() != stringToSub)
            {
                sb.Append("...");
            }

            return sb.ToString();
        }


TAG: 测试心得

zw860503的个人空间 引用 删除 zw860503   /   2009-03-09 14:54:35
白盒测试
 

评分:0

我来说两句

日历

« 2024-04-23  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 7808
  • 日志数: 12
  • 建立时间: 2008-08-27
  • 更新时间: 2008-12-15

RSS订阅

Open Toolbar