fit超简单入门

来源:互联网 发布:c语言判断闰年的条件 编辑:程序博客网 时间:2024/05/16 00:29
    代码质量完美主义者 Andrew Glover在“追逐代码质量,决心采用Fit”一文中这样
 
写到:
 
    在软件开发的生命周期中,每个人都对质量负有责任。理想情况下,开发人员在开发
 
周期中,用像 Junit 和 TestNG 这样的测试工具保证早期质量,而质量保证团队用功能
 
性系统测试在周期末端跟进,使用像 Selenium 这样的工具。但是即使拥有优秀的质量保
 
证,有些应用程序在交付的时候仍然被认为是质量低下的。为什么呢?因为它们并没有做
 
它们应当做的事。
 
     使用Fit,让客户尽早地参与到测试中来,使用Fit,让业务人员和开发人员更流畅地沟
 
通。 使用Fit,让需求一遍一遍地滚出来。
 
    Fit是什么,能做什么呢?下面通过一个超简单的例子,阐述Fit,例子中的实例以java
 
为平台,使用到Word。
 
    (1) 先用word写出下面样子的一个文件,存成d:/java/fit/input.html。
 
input.html文件
First Fit Test For Yfhuang
yfhuang.fit.Division
numerator
denominator
quotient()
1000
10
100
100
2
50
3000
2
1000
 
yfhuang.fit.Division是处理该文件的java类。
 
    (2) Division.java (放在d:/java/fit/yfhuang/fit/Division.java
 
package yfhuang.fit;
import fit.ColumnFixture;
public class Division extends ColumnFixture {
    public float numerator;
    public float denominator;
    public float quotient() {
      return numerator / denominator;
    }
}
 
 
    (3) 去http://fit.c2.com/wiki.cgi?DownloadNow下载fit for java的版本,然后解压到
 
d:/java/fit。
    (4) 使用javac编译这个java文件生成Division.class文件,注意把d:/java/fit/fit.jar放到classpath中去。
 
    (5)进入命令行模式,然后执行命令
 
        cmd d:/java/fit
 
        javac -classpath fit.jar fit.fileRunner input.html output.html
 
    (6) 查看一下d:/java/fit/output.html文件,发现会是这样的一个样子:
 
First Fit Test For Yfhuang
yfhuang.fit.Division
numerator
denominator
quotient()
1000
10
100
100
2
50
3000
2
1000 expected
1500.0 actual
 
OK,例子到此为止,下面解释一下。
 
input.html文件一般是业务人员写的,表达需求,在这个例子中,业务人员希望写一个除
 
的功能。所以他用这个html文件表示出来,当然行头yfhuang.fit.Division是在开发人员
 
的帮助下加上去的。
 
在执行第5步的时候,其实也就是fit去处理业务人员写的input.html,通过反射,找到
 
开发人员写的Division这样的一个处理器(fit中称为fixture)来处理input.html。得到
 
out.html文件,文件表明业务人员表达的需求有些问题。(如果是除,第三行结果应该
 
是1500)
 
通过这种方式,开发人员可以让业务人员把需求更清晰的表达出来,当然如果通过沟通,
 
业务人员表达的需求是正确的,那么就是开发人员的实现有问题了。:)
 
 
fit是ward cunningham写的,可以与其他测试工具,诸如junit等一起使用,如果你想了
 
了解得更多一点,可以参考下列网站。
 
官方网站: http://fit.c2.com/wiki.cgi
 
追逐代码质量,决心采用Fit: http://www.ibm.com/developerworks/cn/java/j-cq02286/
 
fit和eclipse:http://www.ibm.com/developerworks/cn/aix/library/au-fiteclipse/index.html
 
原创粉丝点击