zoukankan      html  css  js  c++  java
  • Fitnesse之框架介绍(二)

    本篇将重点介绍Fitnesse测试引擎slim, slim是(simple list Invocation method)的缩写,使用来代替的fit的测试引擎,不同于fit的是,slim将html的解析,比较以及颜色的改变都放在了fitnesse上面去完成,而不是像fit一样放在被测系统这一端去完成,slim是一个自定义的协议,是一个准RPC协议,通过此协议fitnesse可以驱动被测系统的方法。


    其中核心的包是fitnesse.slim此包为slim协议的核心,fitnesse.slim.converters此包为slim中变量参数转换器以及fitnesse.slimTables此包为slim中表格类型。
    如果我们要使用slim作为测试引擎,那么必须在wiki页面上定义测试类型
    !define TEST_SYSTEM {slim}
    slim本身总共包括10种表格类型,首先介绍decision table:
    我们经常使用decision table作为一个真假表

    该测试用例对应的测试代码如下所示:
    public class ShouldIBuyMilk {
    private int dollars;
    private int pints;
    private boolean creditCard;

    public void setCashInWallet(int dollars) {
    this.dollars = dollars;
    }

    public void setPintsOfMilkRemaining(int pints) {
    this.pints = pints;
    }

    public void setCreditCard(String valid) {
    creditCard = "yes".equals(valid);
    }

    public String goToStore() {
    (pints == 0 && (dollars > 2 || creditCard)) ? "yes" : "no";
    }
    首先看表格的第一行should I buy milk对应测试代码ShouldIBuyMilk测试类,再看表格第二行第一列cash in wallet对应测试代码setCashInWallet方法,第二列credit card对应测试代码setCreditCard,以此类推后面几列,我们看到最后一列有点比前面几列多了一个?号,这个问号表示最后一列是一个方法,也就是我们需要得到的结果,前面几列表示参数,所以他们需要在测试代码中加上set。从表格的第三行开始就是我们的测试用例参数,总共8个测试用例在一张decision表格中就全部描述完成,当我们点击Test按钮就可以得到以下结果:


    我们可以看到从第三行开始绿色的表示通过的case,红色的表示失败的case并且会有实际值显示出来,这样我们在一次执行中就完成了8个case的执行。下一节中我会重点剖析decision表格的源码结构。

  • 相关阅读:
    VC 常见问题百问
    python windows 环境变量
    Check server headers and verify HTTP Status Codes
    Where are the AES 256bit cipher suites? Please someone help
    outlook 如何预订会议和会议室
    安装Axis2的eclipse插件后,未出现界面
    windows 环境变量
    python 时间日期处理汇集
    openldap学习笔记(使用openldap2.3.32)
    set p4 environment in windows
  • 原文地址:https://www.cnblogs.com/victorcai0922/p/2470897.html
Copyright © 2011-2022 走看看