続々々: いい加減 node.js で unit test りたくなってきて mocha

量が増えてくると…。

TTY だけでやってると、コンソールが溢れて「スクロールバー操作」もしくはページャが不可欠、になってくるのはどんなフレームワークでも共通の悩みで。

なので mocha、色々提供してるんだわね。

そもそもがファウラーあたりが XP について言い始めた時からずっと一貫して「成功したテストについて大喜びするのは厳禁」であることは言われてる。すなわち1万のテストを実行するにあたって、1万回ぶん「OK!! やりました! うまくいったのでっす!!!」と騒ぎ立ててはならない、というのが教えなわけね。成功に埋もれて、見つけたい誤り検出が埋もれるようでは本末顛倒である、という「滅茶苦茶当たり前」のことなんだけれど、ファウラー、ベックがかなり手厳しく言うまでは、結構この「当然」のことを守っていないテストフレームワークは多かった。(ファウラーは紳士的な言い方をする人だったと思うんだけど、確かケント・ベックってかなり口が悪い攻撃的な言い方をする人だったような記憶がある。違ったっけ? 逆かもしれんし、そもそも二人とも紳士的だったかもしれん。ちょっと記憶が遠いもんで、全部間違ってるかも。)

その意味では Mocha の「デフォルト」は少々煩い。しかも色をつけようとするのがね、Windows 版の場合は MSYS の less と相性悪くて、less をかますと色を失ってしまう。(-r つけても。)

–reporter html しようと思ったんだけどね…、「The HTML reporter is not intended for use on the command-line.」と説明されてることに気付かずに試み、

1 c:\Users\hhsprings\AppData\Roaming\npm\node_modules\mocha\lib\reporters\html.js:285
2   var div = document.createElement('div');
3             ^
4 
5 ReferenceError: document is not defined

むむ。

ただ…:

出来合いで結構な量の reporter を使えて。nyan が「デフォルトで使える」のはネタにしか見えないだろうが、実に「コンパクトなのでテスト失敗を見逃さない」、つまり滅茶苦茶実用になる。

普段使いには dot がいいような気がする。まぁ「コンパクトに」が満足出来るなら「好み」にもなるけれど。