上回书说到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 | 更多的FitNesse的wiki页面特征的介绍 |
Markup Language Reference | 标记语言介绍,和HTML神似 |
Sub Wikis | 如何去构建FitNesse页面的层次,按下电脑的Ctrl+E,然后你就“o” |
Special Wiki Functions | Swiki支持的特别功能,啊,我觉得本来就该支持 |
Wiki Import | 从其他的FitNesse服务器上导入过来的,我觉得备份有用 |
Symbolic Links | 动态的改变页面结构,葛莱芬多宿舍的楼梯,其实有点goto的意思 |
Special Pages | 特别奉献的某些页面,就像单元测试里面的setup,teardown哈 |
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 | FitNesse的2大测试系统Slim和Fit |
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