FitNesse-FitNesse User Guide_2

2011-03-24  徐磊 

上一篇 User Guide_1 后一篇 EditingFitNessePages

上回书说到
UserGuide的上部分,Now我们书接上文,继续!过程是痛苦的,哥们也确实没那么多的时间天天翻译,见谅见谅。

由于有人说我写的东西可读性不强,鄙人决定来个中英文对照版,呵呵。


建测试表

Ok,现在我们了解了FitNesse它到底能做到些什么。接着文档作者用过去式的语气说,你运行了一个有输入值,然后还能核查输出是否是预期的case,再然后感觉到了“真容易哈”,就这么可以看出应用程序是对的还是错的。现在作者让你自己真正去试试。我也想你能去试试,“啊,真容易哈- -”。

如果你点了Example page页的链接,你将会看到wiki内容是这样子的:

        |eg.Division| 
       
|numerator|denominator|quotient?|
     
       
|10             |2                 |5             |
   
       
|12.6          |3                 |4.2          |
     
       
|100           |4                 |33           | 
  
 
它在你心里就是个表格。有木有?!竖条决定了表格单元,对测试表格来说,你其实没必要把竖条对的那么齐,只要易读就可以。但我们还是会这么做对不对,因为我们是处女座,我们追求完美,oyeah!我们对这个wiki做些修改,大胆的尝试。增加一些新的行,加点数据来测试,或者改变表格里原有的数据,保存之后,我们来点击Test按钮跑一下。你可以看到FitNesse系统是如何启动起来运行我们新的测试的。反正作者认为这么改wiki,然后马上运行看结果,不仅酷还很方便,然后它就强大了!!!       如果你是你项目组里最可怜的人,要不停的写测试用例,那你应该会对下面的内容感兴趣:


 

Editing FitNesse Pages FitNesse特有的标记语言来编辑FitNesse的页面
Working with Wiki Pages 更多的FitNessewiki页面特征的介绍
Markup Language Reference 标记语言介绍,和HTML神似
Sub Wikis 如何去构建FitNesse页面的层次,按下电脑的Ctrl+E,然后你就“o
Special Wiki Functions Swiki支持的特别功能,啊,我觉得本来就该支持
Wiki Import 从其他的FitNesse服务器上导入过来的,我觉得备份有用
Symbolic Links 动态的改变页面结构,葛莱芬多宿舍的楼梯,其实有点goto的意思
Special Pages 特别奉献的某些页面,就像单元测试里面的setupteardown
Quick Reference Guide 快速查找?通常书的最后都有,索引供你查找

 


创建环境(夹具,怎经在xUnit测试模式书里见到,当时蒙了,看英文觉得是说case存在的内容上下文)

测试的case写对了,但能不能跑成绿色的,就要开发人员(一个实现应用程序的人)来搞定了。结合上面的除法来讲,我们设想实际的应用程序是一个网页,它有2个输入框和个提交按钮。当我们点提交按钮,应用程序就把2个输入框里的数据进行相除操作,然后把结果展示在页面上。

我们实际上对界面是什么样子的不感兴趣(我是做界面MFC测试的,对界面异常敏感,寂寞悲伤冷哈,叫我如果不想你)。我们不关心是否输入框只允许输入数字,我们关心的是逻辑,业务业务才是王道。我们关心的是我们的代码能将2个数字相除返回结果。

所以我们的目标是写出来的代码能被页面调用,也能被FitNesse的测试表界面调用。(如果我们实现了这个,我们很快就可以扩张我们的产品线多个iPhone的界面或者控制台应用程序,一切都是这么简单!)

但是怎么从一个HTML的页面到我们的代码呢?FitNesse提供一个类库叫做夹具。依托于输入与输出单元的组织,夹具能够把单元值传到类属性里。应用程序开发者能获取到夹具里的一个类,然后调用类里的一个方法进入应用程序的逻辑里面,Here’s 是个更清楚的描述。我猜测哈,大概就是从FitNesse的界面传入到夹具的一个方法里,然后应用程序直接调用FitNesse的夹具类来运行。

当然这里还有好多东西需要知道。你要告诉FitNesse到哪去找到你的应用程序,如果你觉得HTML的表格不是很符合你的应用程序,你可能对Test Table Style感兴趣,人家说得很委婉让你去点这个链接- -。如果你真打算改变表格的风格,你就去查Fixture Gallery,看看哪种比较适合你,我们不会去改是不是,是不是,因为麻烦哈,耽误时间。开发者需要知道如何去调试,看How to debug the fixtures.

我们继续看下面来多知道点。

指南:创建和组织需求的测试

Project Death by Requirements 作者开始威胁我们了。为什么我们要用自动的FitNesse?我们不用的时候就会出什么错?
Test Systems FitNesse2大测试系统SlimFit
Acceptance Tests FitNesse的自动需求测试的优点,反正我们谬缺点,对的,没缺点!!!
Delivering the Right System 一个简短的介绍告诉软件团队怎么去构建更好的系统
Creating Test Tables FitNesse的页面上创建测试表并让它运行起来
Graceful Names 管理上下文、包和变量的名字,这和编程规范的命名是不是一样呢?
Test Table Styles 不同测试表和对应的夹具的不同风格和使用方法
Test Suites 怎么去组织测试页成为一个测试套件,如何标记,查找和执行它们
Acceptance Test Patterns FitNesse的需求测试中已经出现的测试模式
Test History 所有的测试运行结果被记录下来了,你可以存取并随时把它们拿出来展示。

 

指南:FitNesse的夹具

Fixture Code 一个对夹具代码的简介,从而能让你运行Fitnesse的测试表
Class Path 告诉FitNesse在哪可以找到你的夹具代码,就是你的应用程序代码
Test Table Styles 测试表格的风格和它们相对应的夹具代码
Fixture Gallery 看下各种Fit系统的夹具
Debuging Fixture Code 如果去调试测试代码

FitNesse里的积分器???(我不知道如何翻译)

Source Code Control 如何去创建一个插件从而能把你的FitNesse放到你的SCM系统中去
Customizing Test Execution 修改测试执行的方式
Multi-Language Fitnesse java以外其他的程序语言的FitNesse
Executing Tests from Outside The UI 如何在IDE,命令行、和构建脚本上去运行测试
Plugin Usage 怎么样去创建和使用插件


其他

Design Notes 各种关于FitNesse设计的文章和讨论
FitNesse Tests FitNesse自身的需求测试套件,自己测自己


上一篇 User Guide_1 后一篇 EditingFitNessePages

720°/7187 人阅读/2 条评论 发表评论

张林  2011-03-25

精神可嘉,希望多交流一下使用心得!
Fit, Fitnesse,Concordion, 想法是写出spec like test cases就能自动运行起来!而robotframework,Selenium, promine在写test cases更简单化!


徐磊  2011-03-25

张林: 精神可嘉,希望多交流一下使用心得!
Fit, Fitnesse,Concordion, 想法是写出spec like test cases就能自动运行起来!而robotframework,Selenium, promine在写test cases
确切的说我还没使用过,我是想自己每天翻译一点学习一点~~然后能给大家带来方便总是好的。
对世界上那些为开源做共享的人很是佩服。所以想也做点什么。


登录 后发表评论