Created
February 8, 2013 14:03
-
-
Save kyonmm/4739186 to your computer and use it in GitHub Desktop.
Revisions
-
kyonmm created this gist
Feb 8, 2013 .There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,26 @@ # はじめに ここに書かれているのは、「主目的」であって、プログラマーもしくはテストエンジニアが「他のことを考慮していない」という意味ではありません。あと、僕の解釈なので一般論というわけではないないです。 # プログラマー:「テストを書く」 プログラマーは基本的に「テストを書く」というと思います。実際に書いているんですけど。これ、手動テストしかなかった時代は、どうやって言っていたのかわかりませんけど、これは非常に的を得ていると思うのです。プログラマーの主眼は「要求を設計し実装すること」にあります。そしてその意志はプロダクトコードとなって表現されます。そう、プロダクトコードというのは、表現手段なんです。なので、彼らにとってテストコードというのはあくまで「要求を設計し実装すること」のある表現手段であり、それがプロダクトコード以外であるということにすぎないのではないでしょうか。 プログラマーはあふれるその思いをコードに表現する事が楽しみです。主目的である「要求を設計し実装すること」をテストというフィールドにおいて実施するというのは若干の矛盾をはらんでいて、やっていることは、「要求を設計し実装すること」をしながら確認がとれるものとして、テストコードという手段をとった。くらいのイメージです。 # テストエンジニア:「テストをする」 テストエンジニアは基本的に「テストをする」というと思います。実際にはテストを書くんですけど。プログラマーはプログラミングが楽しいとは言うんですけど、コーディングが楽しいという人はあまりいないと思います。つまり、分析、設計、実装がプログラミングという言葉に含まれていて、それが本分であり、楽しいという意味です。テストエンジニアも「テストコード、テスト実施のみが楽しい」というよりは「分析、設計、実装」が楽しいと思っていてそれは「テスティング」と言っています。日本ではあまりテスティングという言葉が一般的ではないのですが。 「コーディング」が「プログラミングの一部」であるように、「テストを書く」というのは「テスティングの一部」にしかすぎません。そして、プログラミングというスタイルとテスティングというスタイルでは目的や視点が違うので、自然とテストが異なってきます。それは狙う場所だったり、量だったり、方法かもしれません。 # まとめ プログラマーは「プロダクトの設計、実装」のためにテストをするのが主目的なので、「テストコードを書く」というのは「プログラミングの一部」であり、プログラミングの一表現手段であるが、テストエンジニアは「テストの設計、実装」におけるテストをするので、「テストをする」つまり「テスティング」という言葉を使う事が多い。 どちらがよいわるいというのではないですが、目的によって言葉が違ってくる例だと思いました。テストエンジニアが考えるテストとプログラマーが考えるテストの違いについてイメージできないと「どっちでもいいじゃん」って思う人がいるとは思います。 でも、きっとそれは「コーディング」と「プログラミング」を一緒にされて嫌な思いをするプログラマーがいるように、「テストを書く」と「テストをする」を一緒にされて嫌な思いをするテストエンジニアがいるとでも思ってくだされば幸いです。