dotkuwaの日記: テストと力 1
日記 by
dotkuwa
通常、仕様を話し合う時、核心をいきなり言うと、
どんな人でも5割の確率で「だめだ」と言います。
これは人間の根源的な性質だと思います。そして、
その話し相手が権限を持った人なら万事休すです。
なので、通常はぼかした了解事項から言質を取っていく
(もちろん双方良し、五分の分かれで有る必要は有ります。)
のが通常です。
しかし、
・普通のテストで無い、素晴らしいテストがあり、
・それを初めに書くと、先々が良くなる。
というテストがもし有るとするならば、それは、
・もしそれを否定されたら万事休すどころで無く、それ
以降、息を吸う事も出来なくなる位の打撃になる
様な知識だと思います。
それを「初めに」大っぴらに出来るという事は、すなわち、
・仕様を話し合う必要のある、どの関係する人より権限がある
という事と同義だと思います。
その様な人は、会社なら執行役員以上だと思います。
しかし、執行役員はそれに見合う責務を持っていて、1つのテストに
かまけてなんかいないと思います。
つまり、
・素晴らしいテストを書ける人
即ち、
・(会社で言う執行役員程度の)権限を持ち、責務は持たない人
です。
素晴らしくて当たり前だと思います。
根本原因 (スコア:1)
テストは大抵、
・少数のロジック(下記設定ファイルより値を得て、適用するロジック)
・設定ファイル(値とかが書いてある)
ですると思います。
昔ながらのテストは、毎回毎回仕様から設定ファイルを考え、
多くの場合、ロジックも毎回書き換えると思います。
(これは大変で、間違いやすいです。)
なぜ大変で間違いやすいのか?
それは、
・設定ファイルが極大量のマジックナンバーの集まり
だからです。
設定ファイルは、
・なぜその値が正しいのかの記述を書き得ない。
(絵に書いたようなマジックナンバーになる。)
・往々にしてローカルで有り、システム全体がそれを参照する
ことが出来ない。(マジックナンバーでもシステム全体で
それを尊重すれば、それはそれで1つの規約ですが、それすら
出来ない。)
という性質があります。極限して使わないとだめです。
この様なことは、変数を持たない、現在主流のCSSとかでも
有ります。何百行何千行のマジックナンバーの集積です。
根本原因はテストでは無く、設定ファイルの表現力の無さ
かも知れません。