-
随机生成字符,数字和空格组成的数据
2008-09-07 13:29:22
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
string[] rBase = new String[30] {"0", "1", "2", "3", "4", "5", "6", "7", "`",
"8", "9", "a", "b", "c", "d", "e", "f","!","@","#","$","%","^","&","(",")","-","=","?","'"};for (int i = 0; i < 10000; i++)
{
Random rm1 = new Random();
int randomNum = rm1.Next(100000);//生成100000以内的随机数
for (int j = 0; j < 3000; j++)//停留片刻,避免生成重复数据
{
Console.WriteLine("ok");
}
Random rm2 = new Random();
int ramStr = rm2.Next(0, 30);for (int j = 0; j < 3000; j++)//停留片刻,避免生成重复数据
{
Console.WriteLine("ok");
}
Random rm3 = new Random();
int strSchange = rm3.Next(1, 12);
switch (strSchange)
{
case 1:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "%" + randomNum + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 2:
{
string FileStr = "测试同行掘客内容test" + i + "%" + randomNum + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 3:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "%" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 4:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "%" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 5:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "%" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 6:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "%" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 7:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "%" + "同行掘客数据" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 8:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "%" + "同行掘客 数据" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 9:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "同行掘客 数据" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 10:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "同行掘客 数据" + rBase[ramStr] + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 11:
{
string FileStr = "测试同行掘客内容 test" + rBase[ramStr] + "同行掘客数据end" + "\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
case 12:
{
string FileStr = "测试同行掘客内容"+"\r\n";
string FilePath = "g:\\title1.txt";
StreamWriter file = new StreamWriter(FilePath, true, System.Text.Encoding.GetEncoding("GB2312"));
file.Write(FileStr);
file.Close();
break;
}
default:
break;
}
}
}
}
} -
测试函数的测试用例
2008-09-05 12:10:13
一天,主管要俺测试函数,倒是被吓了一跳。鄙人孤陋寡闻,没见过这方面的测试和用例。于是发明了一套,拿出来给各位长老点评。以下是设计的用例:
测试用例002 函数原型:static string InterceptString(string stringToSub, int length) 函数功能:截取字符串 输入数据 输出数据 American,length为3 Ame… 为空,length为3 空行 123456,length为3 123… 本人在北京一所民办高校,length为6 本人在… ccccccc,length为3 ccc <注释>,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();
}