FIT FOR DOT NET(4)

原创 2005年03月01日 18:19:00
 

 Fixture内幕

  你的fixture对表可以做任何他们想做的,包括增加行和单元格(参看TechnicalReference ,查找如何进行),但是大多数fixture仅仅标志单元格为对和错.这里由一些标记的规则:

  • 绿色 Fixture比较单元格和软件,他们匹配
  •  (包括 "expected" 和 "actual" 部分): Fixture比较单元格和软件,他们不匹配
  • 黄色: fixture有错误
  • 灰色文本 在白底: 单元格是空,因此fixture显示自己的答案
  • 黑色文本 灰底: fixture忽略单元格

这里有Fixture在表中查找的一些关键词:

  • 一个完全的空格(Blank cell):Fixture试着在里面填充答案(它将给单元格着上面描述的灰白颜色)
  •  单词"Blank":Fixture把它翻译为一个空字符串.(它这样做是因为一个实际是空的单元格意味者"给我一个答案",如前面提到一样)
  • 单词"error": Fixture期望一个错误.如果错误发生,单元格将标着绿色,不是正常的黄色.

这些跟随你可以达到你自己目的的fixture.他们描述如下.简单的说,他们是:

ColumnFixture

ColumnFixture 是最简单的一种编程fixture,也是最有用的一种,你应该经常使用ColumnFixture

一个ColumnFixture 是为表格里的单行所表达的例子的.一个表可以包含多个实例,一行一个,见下面:

 

为什么称之为"column"fixture呢?因为表中的每列映射你的fixture里的一个对象或者方法.FIT使用第二行列头实现映射.

当一个列头以括号结尾,fixture调用一个方法,而不是设置一个变量.fixture看看从方法返回的值,然后把它和表里面的值比较,然后根据情况着红色获绿色.

结果,所有这些使你写自己的ColumnFixture几乎是微不足道的.下图描述了上面用C#编写的Fixture:

 

ColumnFixtures从左到右,从上到下处理.根据上面的2个图,它好像是你和客户已经写了类似如下的代码:

 // Row 1
 StandardHours = 40;			     // the StandardHours column
 HolidayHours = 0;			     // the HolidayHours column
 Wage = new Currency("20");		     // the Wage column
 CompareResults(new Currency($800), Pay());  // the Pay() column

// Row 2 StandardHours = 45; HolidayHours = 0; Wage = new Currency("20"); CompareResults(new Currency($950), Pay());

// etc...

注意变量在行之间没有清除.


(work still in progress)


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Node.js for dot net

  • 2016-02-08 14:35
  • 12.63MB
  • 下载

Office编程在dot Net环境中总结(Excel篇)

文章的使用范围    运行环境 .net Framework 1.1 ,Excel 2003    开发语言:C#   目录 1.0简要说明     2.0 Excel 编程模型的说明。 ...

dot net npoi

前言 最近项目中,需要使用到 Excel 导出,找了一圈发现没有适用于 .NET Core的,不依赖Office和操作系统限制的 Office 组件,于是萌生了把 NPOI 适配并移植到 .NET C...

Dot NET设计模式—反射工厂

Dot NET设计模式—反射工厂  1.概述         如果采用传统方式实现了简单工厂、工厂方法和抽象工厂在有些场合下如此处理,代码会变得冗余并且难以维护。         假设我们需要创...

dot Net 线程相关问题

把遇到过的对.Net线程的一些问题和误解集中起来和大家分享,也希望大家能一起补充,热烈欢迎讨论 目录 基础篇怎样创建一个线程受托管的线程与 Windows线程前台线程与后台线程名为BeginXXX和...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)