matsutakegohan1's blog

matsutakegohan1(きゅーぞう)による、釣り、狩猟、技術?、セキュリティ?、その他の話

未分類

諸君私は.tが好きだ

投稿日:

Vox、久しぶり、元気にしてた?

諸君、私はテストが好きだ。
諸君、私は.tが好きだ。
(以下略)

普段テストは3つに分けて考えている。
そしてそれぞれは求められる.tの粒度が異なる。

  • 一連のビジネスの流れを流す.t
  • 何らかの機能に依存したクラスの.t
  • とてもシンプルなたった一つのことをなすクラスの.t

一連のビジネスの流れを流す.t
どんなアプリにも流れがある。
ブログなら記事を投稿して、編集して、検索して、削除する流れがある。
不動産の掲載サイトなら、物件を投稿して、検索して、資料請求して、掲載終了してという流れがある。
この流れが正しいことを表現するビジネスフローとしての.tがある。

この.tに書き込むことはそのままWeb用のフレームワークに乗せればそのまま動くし
もちろんバッチに乗せても良い、そんなレイアのクラスのこと。

求められる要件は「大体動いていること」
このレイアで異常系を考えたときそれは無限にちかくケースが存在する。

変な値が入ってきたとき、とかはその上のWebなりバッチのフレームワークのお仕事。
接続断があったら、はそれより低いレイアできちんと捕まえるお仕事を任す。

ややこしいことは置いといて、大体サービスが正常に維持できる。
お客様は今日もニコニコサービスを使うことができる。
それがこのテストの目的。

何らかの機能に依存したクラスの.t
いくつかのシンプルなクラスをuseしてビジネスの一端を担うクラス。
良くこのクラスは量産されるのではないかと思う。
このレイアのクラスをひとつまたはいくつかを集めて、ひとつのケースを達成する。

求められる要件は「カチッと動いていること」
異常があればキチンとエラーを出す。
期待する値が期待通り出てくる。
サービスが正常に維持できること。
それを試験する。

十分にビジネスロジックに依存するため、処理の順番などもテスト項目に入るだろう。
厳密にやりすぎるとスピードを失う。
期待する正常系、期待する異常系が動くことを確認する。

とてもシンプルなたった一つのことをなすクラスの.t
Util.pm DB/XXX.pm API/XXX.pm
たった一つの目的に対して純粋なクラスたち。

これらに求められる要件は「厳密さ」

これらのクラスはひとつのところで使って終わりではない。
さまざまなところで再利用される。
作成者のあずかり知らぬところで想定外の使われ方をするかもしれない。

すべての境界値、中央値の試験。異常系の試験。
それが想定するなら異なるOSでの試験。
本気を出してしまうと間違いなく書いたコードよりテストコードのほうが多くなる。

社内のみだからという場合は自分の使うケースについて
発生するパターンすべては最低書いておく必要がある。
再利用する際は再利用する人がそのケースを追加すればそれなりに守れる。

最近若い子にテスト書けとよく言うのだけど
そういってもいきなりじゃかけない人が多いよねと思い
ちょっと自分の脳みそを整理してみた。

正直上記に納得がいってない。

ていうか並み以下ミトコンドリア以下のエンジニアの僕が
曲りなりにサービスにコードのせるのだからテストぐらいしないと。
それより若い子がテストコードも書かないでサービスとか
それは乱暴すぎると思ったり思わなかったり。

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

明けましておめでとうございます

今年やること  ・冬ワラサ船に乗る ・芦ノ湖の解禁に行く ・2月3月はウェーディングに行く ・春の間はヘラブナを納める、同時に伊豆七島で釣りをする。&# …

no image

何故技術者は企画者に興味が無いのか

例えば私は現在の自社の企画の半分はいらないと考えている。それらをすべてエンジニアと交換できたらどれだけ幸せなことだろう。 企画の定義をしよう。ここので言う企画はwebディレクターを中心とした職種である …

no image

山崎12年

☆☆ 山崎十二年 山崎といえば世界的なウィスキー品評会で賞を取るほどのブランド。それのエントリーモデルである山崎12年。うまいっちゃうまいけど、値段を考えるとぶっちゃけいまいちだった。 香り:オーク? …

no image

feedpathがリニューアルしました。

no image

メバル

友人に依頼していたメバルロッドが完成した。 私は船橋近辺で同年代の4人とよくつるんで釣りをしている。そのうちの一人がとてものめりこんで、ルアーから竿から何でも作るのだ。私も昔は竿を作っていたものだが、 …

第一精工の高速リサイクラーはすべての釣り人の必需品だと思っています。糸の巻き替え、巻き直しにこれが在るのと無いのでは天地の差があります!

シマノの防水クッションは、すべての時期で船釣りのオトモ。一番小さいサイズで大抵大丈夫です。冷えから守ってくれたり、エンジンの振動から守ってくれたり、寝るときに枕になります。

%d人のブロガーが「いいね」をつけました。