テスト観点の種類
この記事で、Generic度合いの話を出しました。テスト観点はどれぐらい一般化するかの度合いが場面によって異なるということです。
最近考えていて、Generic度合いとは別軸での区別があるんじゃないか、と思ってきました。それは、AspectかViewpointか、ということです。「観点」とだけ言うと、aspect/viewpointのどちらかわからなくなってきて、それぞれの人で指すものが違ったりします。多くの場合はaspectなのですけどね、じつは。
aspectとviewpointの違いは、見ているものそのものか、見方か、です。見方は対象が変わっても変容しないもの、です。viewpointはテストの考え方の本質に近いものです。aspectはその見方で見た内容を具現化したものです。
このように定義すると、一般的に言われるテストがうまい人というのは、viewpointを多く知っていたり、viewpointを適用するのがうまかったりする人なのではないか、と思います。aspectをよく知っている人はドメインのスペシャリストではあるけれども、テストがうまい人とは限りません。
では、知識や知恵を共有する、と言ったときに使うべきなのはどちらでしょうか。より具体性をもって共有できるのはtest aspectの方ですね。より知識に近いものと言えるでしょう。考え方自体ではなく、それが適用された後のインスタンスなので、当然汎用性は下がります。プロダクトが増えれば増えるほどたくさんのtest aspectを集めて共有する必要があります。
逆にtest viewpointになると、より知恵に近いもので、抽象度の高い状態で共有ができます。考え方自体なので、プロダクトが増えてもある程度対処できます。テストがうまい人は、どんなプロダクトでもうまくテストしてしまう、ということからもわかりますね。実際問題として、純粋なるtest viewpointを作り上げることが現実的なのかは、やってみていないのでわからないですが、もしできて、その活用方法をうまく伝えられれば、テストがうまい人たちを量産できそうですね。
この記事が気に入ったらサポートをしてみませんか?