13:57

老大问我,你用过fitnesse么,我以前听都没听过这个工具。

然后去网上搜,好像资料也不是特别多。老大也是从书上看到的这个工具。

然后找了几个文档,下载了jar包,运行起来了。

java-jar fitnesse-standalone.jar -p 8888

然后打开浏览器:

输入

http://localhost:8888/

页面起来了,不知道怎么用,网上也没有现成的资料。

然后看到如下的例子

点击左侧工具栏的Test按钮。FitNesse将运行表格中的测试数据,并返回测试结果,应该看到表格中 100/4 的计算错误.

如果左侧工具栏中没有Edit按钮,就点击Properties按钮,在出现的页面中选中Actions中的Edit项,再点Save Properties按钮。这样左侧工具栏中就应该有Edit按钮了。

点击Edit按钮,将出现Edit Page, 找到 100/4 那行,把结果24改为25,点击最低下的Save按钮。

再点Test,就可以看到全部测试通过了。

你可能想知道表格中的数据是如何测试的,表头的eg.Division是指eg包下的Division类,这个类可以在FitNesse安装目录下的fitnesse.jar中找到,源码如下

java 代码

  1. package eg;
  1. import fit.ColumnFixture;
  1. public class Division extends ColumnFixture
  1. {
  2. public double numerator;
  3. public double denominator;
  4. public double quotient() {
  5. return numerator/denominator;
  6. }
  7. }

可以看到对应表格中的第2行表头,类中有numerator, denominator, quotient(), 有点明白了吧。

下面新建一个测试页

Edit刚才的A Two-Minute Example

在内容的最下面,添加文字MyNewPage,然后点击Save

在新页面的最后,将出现刚才添加的MyNewPage字样,并在其后紧跟一个 ? 号,点击 ? 号。

将出现MyNewPage的编辑页面,继续使用eg.Division,添加如下内容

My New Test

|eg.Division|

|numerator|denominator|quotient?|

|10      |2         |5        |

|30     |5         |6       |

点击Save按钮,将看到新的MyNewPage,再点Test按钮(如果没有Test按钮就点击Properties来添加),将看到新的测试结果。

源文档 <http://wangcheng.iteye.com/blog/102137>

因为这个例子是系统自带的,不需要写代码,于是我新建了个页面

点击Edit, 在最后一行加入MyNewPage,然后保存。去主页

就有个MyNewPage,点击问号,就进页面了。

然后加上:

!contents-R2 -g -p -f -h

MyNew Test

|eg.Division|

|numerator|denominator|quotient?|

|10       |2          |5        |

|30      |5          |6       |

|30      |5          |4       |

然后去让,发现没有test按钮,然后在Tools/properties中加入Test.保存后test按钮就出来了,

点击test,就测试通过了。好了,终于知道怎么跑的了。

然后看到了个例子

  1. package fitnesse.slim.test;
  1. import java.util.List;
  1. public class ShouldIBuyMilk {
  1. private int dollars;
  2. private int pints;
  3. private boolean creditCard;
  4. public void setCaseInWallet(int dollars) {
  5. this.dollars = dollars;
  6. }
  7. public void setPintsOfMilkRemaining(int pints) {
  8. this.pints = pints;
  9. }
  10. public void setCreditCard(String valid) {
  1. if (valid == "yes")
  1. creditCard = true;
  2. else
  3. creditCard = false;
  1. }
  1. public String goToStore() {
  1. if (pints == 0 && (dollars > 2 || creditCard))
  1. return "yes";
  1. else
  1. return "no";
  2. }
  1. public void execute() {
  1. }
  1. public void reset() {
  1. }
  2. public void table(List<List<String>> table) {
  3. }
  4. }

编写好程序后,我们可以返回之前的fitnesse页面了,找到FirstTest页面,点击edit,在页面中添加下面一段内容:

!defineTEST_SYSTEM {slim}

!pathD:/fitnesse/fitnesse-standalone.jar

!pathD:/workspace-sts/test/bin/fitnesse/slim/test

!|import          |

|fitnesse.slim.test          |

!|fitnesse.slim.test.ShouldIBuyMilk         |

|cash inwallet|credit card|pints of milk remaining|go to store?|

|10      |no          |1     |no|

|12    |yes          |1      |no|

|100     |no          |0     |yes|

解释下:

第一行:使用FitNesse的slim模块,也就是使用网页的形式描述测试用例

第二行:jar包所在的路径(这里要说明下,我看到网上很多例子是没有这一行的,但是我使用的时候发现,没有这一行会报错:java.lang.NoClassDefFoundError:fitnesse/slim/SlimService,可能是路径的问题吧,我是把fitnesse和我java程序所在的地方分开放的)

第三行:测试类**.class所在的路径

第六行:测试类的名称,fitnesse.slim.test package下的ShouldIBuyMilk这个类

表头:cash in wallet, credit card,pints ofmilk remaining对应类中的setNumerator(),setCreditCard(),setPintsOfMilkRemaining()这三个方法,goto store对应String goToStore()()这个方法,注意go to store后面有个问号,说明这个方法是有返回值的。

点击save按钮,返回该页面,点击test,可以看到测试页面。

源文档 <http://blog.csdn.net/funi16/article/details/8985280>

然后在本地新建一个java文件,把代码拷进去,相对应的路径改下,然后保存。

运行结果通过了。

<testpage>

!defineTEST_SYSTEM {slim}

!pathC:/Users/Lenovo/Downloads/fitnesse-standalone.jar

!pathD:/eclipsecode/Fitnesse/src/fitnesse/slim/test

!|import           |

|fitnesse.slim.test           |

!|fitnesse.slim.test.ShouldIBuyMilk          |

|cashin wallet|credit card|pints of milk remaining|go to store?|

|10       |no          |1    |no|

|12     |yes          |1      |no|

|100      |no          |0    |yes|

然后晚上回家的时候,翻墙搜到了老外用fit调用webdriver,还看到福建一家伙用jekins集成fit.

然后跟老大说,老大说我们用不到。

等我有空,也来研究一下巴。

fitnesse初学相关推荐

  1. Android初学第36天

    Android初学第36天 12_DateDialog 代码 CrimeLab.java package com.bignerdranch.android.criminalintent;import ...

  2. Unity初学Shadergraph创建着色器学习教程

    MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语言:英语+中英文字幕(根据原英文字幕机译更准确) |时长:51节课(4h 44m) |大小解压后:2.55 G ...

  3. 初学web标准的几个误区

    初学web标准的几个误区 作者:阿捷 2004-7-7 11:37:11 非常高兴地看到很多设计师开始关注和尝试使用web标准制作网页.但从网友们的问题和制作中发现几个问题,在这里特别提醒一下: 1. ...

  4. java基础入门传智播客 源码_Java-_2020年版Java零基础视频教程(Java 0基础,Java初学入门)魔鬼讲师老杜出品...

    不会闲聊!!!不会扯淡!!!小UP只会分享与Java相关的学习资源 还记得那年带你Java入门的一声"吼"吗? B站目前播放量已经快到450多万播放量的Java零基础教程的创作者& ...

  5. 介绍并扩展Fitnesse的测试模块化机制:Scenario

    2019独角兽企业重金招聘Python工程师标准>>> 首先普及一下概念,什么是Fitnesse,听一听.NET版Cucumber的创始人Aslak Hellesøy谈Fitness ...

  6. 初学api测试_面向初学者的API-在此免费视频课程中学习如何使用API

    初学api测试 What exactly is an API? How do you use an API? We've just published a full beginner's course ...

  7. java web开发初学_2018年学习Web开发的绝对初学者指南

    java web开发初学 This post was originally published on Coder-Coder.com. 该帖子最初发布在Coder-Coder.com上 . If yo ...

  8. 初学python的30个操作难点汇总(入门篇)希望对你有帮助

    初学Python的人总会遇到这样或者那样的问题,在我学习Python的这段时间我总结了自己的29个问题,具体如下: 1 在cmd下 盘与盘之间的切换 直接 D或d: 就好 2 查找当前盘或者文件下面的 ...

  9. 初学架构设计的第一步:需求、愿景与架构

    初学架构设计的第一步:需求.愿景与架构 了解<需求>.<愿景>与<架构>三者的关系.也就是<需求分析>.<观想愿景>与<架构设计> ...

最新文章

  1. 用于在公网环境下测试的Telnet/SSH服务器
  2. Java11正式发布了,我们该怎么办?
  3. 音乐游戏 简单模拟,字符串,cin.get,getchar,流同步(女赛)
  4. eureka 其它语言_SpringCloud之Eureka-Go语言中文社区
  5. java 编译开关_Java开关盒字符串
  6. CV进阶 -- 目标检测原理及代码实现、YOLO源码解读学习
  7. css3 修改checkbox disabled颜色_HTML5 + CSS3 gt;gt;gt; 009
  8. 凸优化第七章统计估计 7.3最优检测器设计及假性检验
  9. linux开发windows游戏,安装Wine 1.9.19(开发版)在Linux上运行Windows游戏和应用程序...
  10. linux中rar文件包的解压方式
  11. Python中迭代函数chain
  12. 软件开发成本构成及评估
  13. 98% after emitting CopyPlugin问题
  14. Protein-protein interaction site prediction through combining local and global features 文章梳理
  15. 【飞桨PaddleSpeech语音技术课程】— 一句话语音合成全流程实践
  16. 反色(顺序)C C++
  17. ping 不通。无法访问目标主机
  18. 2022-2028年中国教育行业市场行情动态及投资潜力研究报告
  19. sqlServer——CONCAT()字符串拼接函数使用
  20. imx6q调试android7问题Unrecognized filesystem type Bad Linux ARM zImage magic!

热门文章

  1. c++ hls协议 m3u8解析器
  2. 2023数学建模美赛赛题思路分析 2023美赛 美国大学生数学建模数模
  3. 80后上什么大学重要吗?看看这些IT富豪吧
  4. 中海达ihand30手簿使用说明_中海达Hi-RTK软件(iHand手簿)说明书
  5. 正胶显影液/正胶稀释剂/SU8 显影液/RD-HMDS/OMNICOAT光刻胶配套
  6. 【mpvue】小程序开发入门
  7. 圣斗士星矢服务器维护时间,圣斗士星矢手游8月2日服务器内BUG说明公告
  8. native Vlan
  9. 从零开始写STM32平衡小车代码,从0到1
  10. tcl43f3390-3d安卓(android)软件,TCL L43F3390A-3D通过U盘安装沙发管家教程