当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 单元测试辅助类

ASP.NET
为T-SQL添加intellisense功能
SQL Server 2005安装过程中出现错误的解决办法
SQL Server 2005 RTM 安装错误 :The SQL Server System Configuration Checker cannot be executed due to
有关于JSON的一些资料
不能忽略c#中的using和as操作符的用处
JavaScript系列之―同步还是异步?
获取远程网页的内容之一(downmoon原创)
获取远程网页的内容之二(downmoon原创)
ASP.Net中防止刷新自动触发事件的解决方案
asp.net下用js实现鼠标移至小图,自动显示相应大图
Asp.Net 和 AJAX.Net 的区别
提交页面的定位--scrollIntoView的用法
利用AJAX与数据岛实现无刷新绑定
asp.net下判断用户什么时候离开,以什么方式离开
DataSet 添加数据集、行、列、主键和外键等操作示例
读写xml所有节点个人小结 和 读取xml节点的数据总结
收藏的asp.net文件上传类源码
asp.net下GDI+的一些常用应用(水印,文字,圆角处理)技巧
一个可以让.net程序在非WIN平台上运行的软件Mono
使用ASP.NET 2.0 CSS 控件适配器生成CSS友好的HTML输出

ASP.NET 中的 单元测试辅助类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 198 ::
收藏到网摘: n/a

  下面是数据文本文件的格式

“#”号是注释

“T:”是加入

“D:”是删除表里面的数据

“C:”是检查数据

数据与数据之间用TAB隔开(可以从企业管理器直接把数据拷贝出来作为数据源)

加入数据的事列如下:

#插入用户表
# null为插入空
T:Users
John <TAB>John chan
Cake<TAB>Cake.lu
jeff<TAB>jeff.hu

# CheckTable's Data
#null为检查是否为空,skip掉过不检查,notnull检查他是否不为空
C:Users
John <TAB>John chan
Cake<TAB>Cake.lu
jeff<TAB>jeff.hu

#Delete All Data
D:TAbleName

调用代码:
参数1:文本文件的路径
参数2:是Helper里面的两个常量(其实可以是个Enum,不过写的时候没有注意)
Helper.ExecuteAction("Data.txt",Helper.INSERT);

参数3:是指定对那个对象操作(T:D:C:后面的名称,如T:Users,那么就填Users)
Helper.ExecuteACtion("Data.txt",Helper.Insert,"Users")

代码如下:

using System;
using System.Data;
using System.IO;
using System.Data.SqlClient;
using Microsoft.ApplicationBlocks.Data;
using NUnit.Framework;

namespace TestCore
{
 
 public class Helper
 {
  public const string DELETE="D";
  public const string INSERT="T";
  public const string CHECK="C";
  public const string ANNOTATE="#";
  
  public static string ConnectionString
  {
   //这里要写返回的连接字符串
   get{return null;}
  }
  public static void ExecuteAction(string path,string action)
  {
   ExecuteAction(path,action,null);
  }
   
  public static void ExecuteAction(string path,string action,string inputTable)
  {
   Console.WriteLine("----------------"+action+" action is Start--------------------");
   
   StreamReader reader=new StreamReader(path);
   string line;
   string table=null;
   try
   {
    while(true)
    {
     line =reader.ReadLine();
     if(line==null)
      break;
     
     if(line.Length==0)
      continue;
     string Key=line.Substring(0,1);
     if(Key==action)
     {
      table=line.Substring(2);
      if(action==DELETE)
      {
       if(CheckTable(inputTable,table))
       {
        Delete(table);
       }
       table=null;
      }
      else
      {
       continue;
      }
     }
     else if(table!=null)
     {
      switch(action)
      {
       case INSERT:
        if(CheckTable(inputTable,table))
        {
         string[] datas=line.Split('\t');
         AddData(datas,table);
        }
        break;
   &