受け入れテスト用のテスト管理ツール、「Fitnesse」を使ってみました。

Fitnesseとは

Fitnesseとは、wiki形式でフリーのテスト管理用ツールです。

以下のような特徴があります。

  • 簡単なセットアップ
  • 簡単に使えるwikiサーバ
  • 仕様書や要求がinputとして使える
  • 豊富な言語サボート

最近読み始めた、「実践アジャイルテスト」で頻繁に紹介されていました。

  • 実践アジャイルテスト テスターとアジャイルチームのための実践ガイド - Janet Gregory

ツールの作者は、「ボブおじさん」こと、ロバート・マーチンさんです。以前、「CleanCoder」を読んだときにも、紹介されていました。

Fitnesseを導入する

環境

  • Windows 7 64bit
  • Java 1.6.0_2

Fitnesse の Download

正式版のダウンロードは、公式サイトの以下のリンクから。

また、開発版はgithubから。

Fitnesse の 起動

以下をコマンドラインから叩くだけ。

$ java -jar fitnesse-standalone.jar

こんなメッセージが表示されれば、起動完了。

FitNesse (v20130530) Started...
        port:              80
        root page:         fitnesse.wiki.FileSystemPage at ./FitNesseRoot
        logger:            none
        authenticator:     fitnesse.authentication.PromiscuousAuthenticator
        page factory:      fitnesse.responders.PageFactory
        page theme:        fitnesse_straight
        page version expiration set to 14 days.

https://localhost/にアクセスすると、Fitnesseが現れる。わぉ、簡単(・∀・)

Port指定の起動もできる。

$ java -jar fitnesse-standalone.jar -p 8080

Fitnesseの使い方

公式ドキュメントは以下。

Sample Test を動かす

起動したら、https://localhost/FitNesse.UserGuide.TwoMinuteExampleに移動。

右上に TEST とかかれたボタンがあるので押す。テストが走る。

あらら・・失敗orz.

次に TOOL ボタンの Propertyをクリック。続いて Action:というところにある Editにチェックを入れる。すると、 EDIT というボタンができるので、クリックする。編集画面が出るのて、表の部分を以下のように修正。

# before
| 100 | 4 | 25.0 |
# after
| 100 | 4 | 25.0 |

再びテストを実行すると、テストがすべてパスする。wikiで編集できる気軽さをまずは実感(・∀・)

Fitnesseの仕組み

Fitnesseの仕組みは、以下のページの図を参照。

FitNesse.UserGuide.OneMinuteDescription

オレンジの部分を自分で用意する必要がある。

  • TestCases
  • Custom Fixture
  • SUT

緑の部分は、FitNesseで用意されている。CustomFixtureを実行するためには、2つの手段がある。

FIT

HTMLでかかれたテスト管理用ツール。

FitnesseはこのFITのHTMLをwikiで実行できるようにしたもの、という言い方ができる。

SLIM

Fitnesseのwikiを解析して、CostomFixutreを実行するためのフレームワーク。

様々な言語に対応しているのが特徴。そのため、FITよりも拡張性がある。

ここからがいいところだけれども、続きはまた次回!